Kid Programming Language (KPL)


There is a new article out about KPL, or the Kid Programming Language.


This is a really neat idea that is being supported by Microsoft and was recently featured on the Coding4Fun site on MSDN.


I have played with this some and the syntax is very much like Visual Basic however the IDE it comes with is much simpler and targeted at young kids.


My oldest son has just turned six so this might be a bit to advance for him in a few years I can see real possibilities in our household.


If you have kids, or are just curious check out the free download.

Comments (27)

  1. VBMan says:

    Interesting. Either this will be more ammo for the anit-VB crowd to make fun of how similar VB and a Kid’s language is, OR, and this is a big OR… it will add to the base of up and coming VB’ers since KPL is so similar in syntax. And since "they" say you always prefer your first syntax, this should help MS recruit more VB.NET’ers.

    Opinions?

  2. MVP says:

    Dont make fun of VB.NET. Do not try to compare it to a kid language because VB.NET is a true object oriented language to be used with realworld purposes – for example, to make business applications to support a diversity of companies for example in their daliy routines such as: cutomer service/helpdeks systems and other kinds of systems. E-commerce applications is a good example, that put the compaines innovations into a global market.

    It’s languages like KPl that give VB programmers a bad reputation because of the targeted group (kids).

    If you Microsft guys don’t like VB then you should have get rid of it many years ago!

    Just want to state: Realworld business applications cannot be made by "kids" who haven’t recieved a good/high level education (and age) in for example economics, programming, mathematics and a diversity of other subjects such as for example usability)

    yeah sure, kids can learn how to program and be very skilled compared to their age but they still have to get a high degree of knowledge in the other subjects as mentioned above.

    Just because they can program does not mean they can write useful programs – because useful programs have a diversity of people with different backgrounds involved and should not be considered "a coding and fix process".

    Get rid of the KPL language!

  3. VBMan says:

    "It’s languages like KPl that give VB programmers a bad reputation…"

    Exactly what I was driving at… unfortunately, becasue of the similarity in syntax, certain morons WILL make a connection; albeit a pointless one as you point out.

  4. Brad_McCabe says:

    > If you Microsft guys don’t like VB then you should have get rid of it many years ago!

    We have enhanced the language and as has been said before it is strategic language for us going forward. We have no desire to get rid of it.

    >>yeah sure, kids can learn how to program and be very skilled compared to their age but they still have to get a high degree of knowledge in the other subjects as mentioned above.

    Just because they can program does not mean they can write useful programs – because useful programs have a diversity of people with different backgrounds involved and should not be considered "a coding and fix process".

    I don’t think anyone is saying that my six year old son should go out and write business applications.

    However if my son was 10 or 12 and learned KPL then down the road the transition into a line of business type language such as VB would be much easier.

    There are many VB developers that got their start with something like Access (VBA) or VBScript. They become familiar with the VB syntax and moved up the chain as they needed more to the full VB lanaguage. KPL is nothing more then a path up the chain one day but starting at a younger age.

  5. Brad_McCabe says:

    >"It’s languages like KPl that give VB programmers a bad reputation…"

    >>Exactly what I was driving at… unfortunately, becasue of the similarity in syntax, certain morons WILL make a connection; albeit a pointless one as you point out.

    To the point of a pointless connection, my 1 1/2 year old daughter (staying fair and balanced in the family) speaks a language that similar to English. It is not the same language that my wife and I speak but she is learning. One day she will learn to speak correct English.

    Since her speech is so similar to English maybe I should start speaking Latin because some one might think English is kiddie.

    Saying VB is a kidde language because KPL has a similar syntax is just as stupid as my arguement about my daughter and English.

    If KPL teaches kids to use computers, helps them to understand programming, and helps them to learn to think logically why not do it because a few morans will make stupid arguement?

    People need to stop debating what programming language is right and use the one that they like and leave others to use what works for them. Why doesn’t anyone debate which language is better French or English?

  6. Chris says:

    I used Turbo Pascal in college, COBOL for my first job, then on to VB, ASP, VB.NET, PHP, and C++.

    Your first language establishes a comfort level, nothing more. The rest comes down to the type of person. Some people like to know only one language and know it well. Others like myself, learn as much as possible so we don’t have to deal with limitations to progress.

  7. Hopskotch says:

    Agreed Brad & Chris.

    Anythign that helps a child get prepared for life as a productive citizen (and yes, we developers are considered productive sometimes) gets a thumbs-up in my book.

    Your argument on English vs. Latin is a very effective demonstration of the idiocy of the former argument of VB vs. KPL. On the same token, why bother with pre-school, or anything pre-college since it may depreciate the egos of collegiates around the world. Who in their right mind would choose pride over the development of our (kids’) future?

    I think that KPL the has the potential to be as effective a tool for a child logical preperation as coloring-books, interactive (educational) games, building blocks and toy-kitchens, but perhaps to a more advanced degree. You might laugh, but in several years, it won’t be that far off for a 10 year old to be coding.

    An who cares if it’s a business app or not? Adults can barely get that right – what’s wrong with kids developing kid stuff? like a collectable card tracking app, or character creation software or even a small game?

    Think outside the box – I think it’s a great idea.

  8. wdwcrazy says:

    Brad,

    A frekin Men!!! I fully applaud your defending of KPL. Anything that exposes kids to something new and different and that, in this case, requires them to exercise their logical side of their brain is wonderful. I bet we start to see our school systems start teaching this! In fact, I am going to volunteer to do just that! I started in Cobol, ALC, and VB3. Those that say VB isn’t a real programming languauge should get a life…

  9. Abdullah says:

    I got a question as a student who’s just about 1.5 semesters away from heading into the real world.

    It seems to me that there is a real stigma against VB and VB.NET programmers. As far as i have seen (and from my understanding of the .net platform) VB.NET is just as capable as C#, with more or less the main difference being different syntax. I think they have the same capabilities and same libraries available to them. Now at higher levels (that i havnt reached as yet ) there may be differences, but for the most part VB.NET and C# can develop equally complex and functional software and services.

    So then why are there a significant number of people who tend to look down on vb.net programmers ? I would expect programmers, specially those with experience to understand that the language is very very capable and perhaps the only real difference is its ‘easier’ syntax for newcomers.

  10. Charlie Tame says:

    Seems from some of the comments that VB programmers are all too happy to behave like kids when it suits them… perhaps that is the reason for the similarity?

    Personally I think there are limits to how a "Kids" language can look and so if it looks "Similar" to something else with an "English – Like" syntax so what – what you expect it to look like? Surely it is better for it to have some resemblance to a "Real" programming language than to be something like LOGO and a Turtle?

    I have seen some excellent stuff written in VB and if it’s a bit quicker and easier to do a short program than other languages so much the better, why would anyone be offended? You don’t expect little league players to take on the major league players, but surely you do expect the game to have some similar rules and for the younger ones to have decent learning materials and guidance. By guidance I mean training in the game, not in how to throw a tantrum 🙂

    Sorry if anyone is offended but I see no reason at all to look down upon anyone for their choice of programming language, silly beahviour of course is another matter 🙂

    Charlie

  11. Seems great to me says:

    This is very curious to me that people believe that programming is only useful and ‘manly’ if it hard. I don’t understand this logic at all. A tool, any tool, is invented to make a job easier. Do you say someone is not a craftsman if s/he uses an electric drill or saw? I use the tool necessary to do the job, sometimes that is c++ sometimes that is VB sometimes that is VBScript or JavaScript. I think it is silly that we are still discussing whether VB is really a ‘Mans’ programming language or not.

    My first programming was machine language, yes 4E, C2, 6F… using a teletype machine and paper tape storage… now I will go do my daily weight lifting.

    Gregg

  12. Jazz4sale says:

    Actually I can’t wait for my 3yr old to grow a little older and have him experience programming. I agree with the previous post that you use what is the best tool. If you get stuck with one language then you will only see things from that language’s perspective. (When all you have is a hammer everything looks like a nail). VB6 was my first language then I migrated to .NET (VB and C#) and I picked up C++ and Java at school. I have to say that VB is by far the easiest and for the type of programming I do the most powerful. Now, if I went to work for Unisoft or Adobe, then I would probably have to write on C++ or even lower level languages because of the versatility of C++ with graphics and similar technology. But we go back to the same point, what is it that you need done and what is the easiest, more practical and powerful tool to accomplish it.

    That’s my two cents. Now I have 98 cents in my pocket.

  13. Jon Schwartz says:

    I’m one of the guys working on Kid’s Programming Language. Thanks for blogging, Brad, and thanks to everyone for the comments! You’ve all made a bunch of our points for us – let me only add our guiding principal for KPL: "Learning is best when learning is fun!"

  14. Mark says:

    If anyone is interested in Kid languages, there is a fantastic Kids language called squeak that enables children to draw on a pallette and then wire events up to there drawing using a drag and drop interface or pallette of objects from other people. the neat thing is, that as the children progress from grade to grade they start to use more advanced features until one day someone takes off the covers and they discover they have been using a programming language for years… those wacky smalltalk guys!

  15. Mark says:

    oops herer is the URL for Squeak

    http://www.squeak.org.. its free and small try it out.

  16. Cailan says:

    Kids programming language is a great idea to establish a comfort zone for young people in programming. People regard programming as something that can only be aquired with some help from E.T. or something so this is a generally good idea.

    However, this is the reason the world of patching takes up more time than developement. More and more people think that they know the syntax, now they want a job as a developer…WTF. I think patching should only be required when the spec or platform changes, not just when it rains, or the sun shines, or cause i forgot to do it right the first time. Away with the poor programming quality standards and lets use tools like this to get a crowd, but lets be selective of who gets in.

  17. I believe KPL is a good initiative and it should be considered just as that. If kids/teens can learn to program at early age with a language as intuitive as then they can become better programmers. Even programming with KPL would enhance their skills and IQ levels.

    Lets appreciate the good things!

  18. SteveJ says:

    With 2 kids I have to use a variety of activities to exercise their mind: math puzzles, board games (e.g. Clue) and tinkering with various programming languages (haven’t found one they like). Like the other working programmers in this blog we may be multilingual but have preferences. For kids, if the language is "too manly" they’ll turn a deaf ear. A Kids PL needs to be easy entry into programming and still provide ways to add more powerful features as they learn without overwhelming them. Also can this run on simplier kids PCs that may are in our schools (Win98) and install on less than 5 MB?

  19. doctor_shim says:

    Looks interesting. Just change the name. I know it’s targeted towards children, but I’m sure it may attract an adult audience wanting to learn the basics of programming, and you wouldn’t want them to think it’s just for children. How about "SPL?" (Simple Programming Language.)

  20. Peter says:

    Great Idea, KPL. I would want to give it to my kids when they reach that age!

  21. Dave says:

    At the end of this month I’m going to be a father. I’ve always been an shade tree programmer myself and I find it strangely relaxing. I hope to pass this on to my kid too. I’m a philosophy student by trade, but programming helps me in that it is the ultimate in critical thinking and problem solving.

    KPL sounds like a great idea, but I think I’m just going to start my kid off on assembly language. That way anything else they could encounter will be childs play…

Skip to main content