1,105,177 Community Members

Computer Language for Children

Member Avatar
sneekula
Nearly a Posting Maven
2,496 posts since Oct 2006
Reputation Points: 917 [?]
Q&As Helped to Solve: 263 [?]
Skill Endorsements: 5 [?]
 
0
 

Just wondered which computer language is best suited for preteen students.
Any ideas or experiences?

Member Avatar
zeroliken
Nearly a Posting Virtuoso
1,222 posts since Nov 2011
Reputation Points: 79 [?]
Q&As Helped to Solve: 216 [?]
Skill Endorsements: 15 [?]
 
1
 

I think its python, its a bit easier to learn the language and write the code compared to Java and C++

Member Avatar
stultuske
Posting Expert
5,290 posts since Jan 2007
Reputation Points: 935 [?]
Q&As Helped to Solve: 774 [?]
Skill Endorsements: 35 [?]
Featured
 
0
 

early start: pseudo code. let them grasp the logic behind the code, and later on choose a language, and show them how to transform

read number
set number2 to 0
do while number2 < number
-  print number2
-  add 1 to number2

into actual code. there are a lot of languages that are not too hard to learn, but you'll have to consider whether or not they are interested/motivated and what kind of code/applications you want them to be able to produce.

Member Avatar
BitBlt
Practically a Posting Shark
895 posts since Feb 2011
Reputation Points: 442 [?]
Q&As Helped to Solve: 163 [?]
Skill Endorsements: 16 [?]
Featured
 
0
 

If you want them just building web pages, then PHP is fine.

But if you want them to be PROGRAMMERS, I think you can't go wrong with QuickBasic (you can still find v4.5 online). It doesn't require them to be computer scientists to start, and gives them lots of room to grow as they get more confident. Plus the graphics is fun to play with.

Of course, that presumes that you don't mind them doing console/DOS-style stuff.

Member Avatar
jackbauer24
Posting Whiz in Training
243 posts since Oct 2011
Reputation Points: 0 [?]
Q&As Helped to Solve: 5 [?]
Skill Endorsements: 0 [?]
 
0
 

redirect to my thread:-

programming for...

Member Avatar
jackbauer24
Posting Whiz in Training
243 posts since Oct 2011
Reputation Points: 0 [?]
Q&As Helped to Solve: 5 [?]
Skill Endorsements: 0 [?]
 
0
 

if you get enough resources and your son's age is like 10-13,
you can try what i did:-
1.check these two booksellers:-

head first
dummies

2.my son already knows html,python,java

Member Avatar
ddanbe
Posting Expert
5,336 posts since Oct 2008
Reputation Points: 2,054 [?]
Q&As Helped to Solve: 904 [?]
Skill Endorsements: 46 [?]
Featured
 
0
 

What about LOGO?

Member Avatar
MosaicFuneral
Nearly a Posting Virtuoso
1,285 posts since Nov 2008
Reputation Points: 812 [?]
Q&As Helped to Solve: 157 [?]
Skill Endorsements: 11 [?]
 
0
 

Started with QBasic, had fun, but hated it at the same time. It was when I went to C that it all kind of made sense and I could make practical tools and not just speaker beeps and pixelated screens. Java would be good too with all the libraries that you can have fun with, out of the box.

But I suppose there's VisualBasic, it's what some schools try to teach. I hate it and think it's twelve times more frustrating than assembly(that's my opinion obviously), but you can play with all the IDE tools and make fancy GUIs and tools right off the bat with no programming experience, and that's why they teach it.

Member Avatar
jbennet
Moderator
17,127 posts since Apr 2005
Reputation Points: 1,618 [?]
Q&As Helped to Solve: 736 [?]
Skill Endorsements: 38 [?]
Team Colleague
Featured
 
0
 

Yeah, BASIC

I started age 9/10 with VB5 and BlitzBasic (Like QBasic)
Then moved on to Delphi, then C# at 13/14
Did C++ and Java at uni.

Now a C++ developer.

Member Avatar
iamthwee
Posting Sage
7,037 posts since Aug 2005
Reputation Points: 1,307 [?]
Q&As Helped to Solve: 592 [?]
Skill Endorsements: 74 [?]
Featured
 
0
 

Yeah echo Basic vb.net...

Possibly python because the syntax is supposed to EASIER/intuitive then say c or c++.

Member Avatar
jbennet
Moderator
17,127 posts since Apr 2005
Reputation Points: 1,618 [?]
Q&As Helped to Solve: 736 [?]
Skill Endorsements: 38 [?]
Team Colleague
Featured
 
0
 

I don't believe that, I can still barely get python...

Member Avatar
iamthwee
Posting Sage
7,037 posts since Aug 2005
Reputation Points: 1,307 [?]
Q&As Helped to Solve: 592 [?]
Skill Endorsements: 74 [?]
Featured
 
0
 

I don't believe that, I can still barely get python...

Possibly because you're dyslexic, as the language contains no opening and closing braces and relies more on indentation...
The elaborate studio interface which ships with vb.net would take care of indentation so you never need worry about it.

That being said, others swear by python, citing if they were to start coding from scratch, learning the pure basics... that language would be the most intuitive to learn from knowing NOTHING before. Why? Because it most represents pseudo code, and is sufficiently a high language to not worry about pointer syntax and other pitfalls. It's pretty light-weight and easy to install and cross platform.

Of course, in my opinion everything is subjective. I started with C++ so naturally I find this easier.

I started learning the blender3d interface so naturally I find this easier than say Maya or 3dMax...

Like most things in life, the more you practice the more easier you find it... If the kid is dead-set on programming he/she will eventually find other subsets of languages and grow accustomed to one. Just a matter of finding which one, and most importantly 'Picking the right tool for the job.'

Member Avatar
jbennet
Moderator
17,127 posts since Apr 2005
Reputation Points: 1,618 [?]
Q&As Helped to Solve: 736 [?]
Skill Endorsements: 38 [?]
Team Colleague
Featured
 
0
 

Yeah I learnt blender in Uni :) the new "improved" interface is even worse than the old one....

Member Avatar
HiHe
Posting Whiz
384 posts since Oct 2008
Reputation Points: 160 [?]
Q&As Helped to Solve: 54 [?]
Skill Endorsements: 6 [?]
 
0
 

Once you get the hang of using the languages required indentations for blocks of code, Python is much like a pseudo language and rather powerful.

Simple example:

food = 'fish', 'fowl', 'fruit', 'veggies', 'meat'
# show all food items
for item in food:
   print(item)

# print 10 dashes
print('-'*10)

# show only the items that start with a 'f'
for item in food:
    if item.startswith('f'):
        print(item)

''' output
fish
fowl
fruit
veggies
meat
----------
fish
fowl
fruit
'''

Python also has a built-in module called turtle that acts like LOGO.

Member Avatar
iamthwee
Posting Sage
7,037 posts since Aug 2005
Reputation Points: 1,307 [?]
Q&As Helped to Solve: 592 [?]
Skill Endorsements: 74 [?]
Featured
 
0
 

Yeah I learnt blender in Uni :) the new "improved" interface is even worse than the old one....

True, that being said, I didn't take long to unlearn some of the old features and get used to the new ones in 2.62. (sorry to derail the thread but)

the advantages of learning 2.62...

Just too many to list...

1) The introduction of their new unbiased render engine 'Cycles' which renders setups in real time and harnesses the power of GPU, which works cross platform on Linux, mac and windows.

http://www.youtube.com/watch?v=rQPDLWOd4wE

2) Subsurface scattering with cycles: (see my attachment)

3) Sculting features like zbrush.
4) Beautiful smoke/fire simulations.
http://www.youtube.com/watch?v=1mdIUjh5iFY

5) Advancing rig setups and new improved game engine with physics.
6) New scripts such as voroni fracturing, ivy generators, gear generators.
http://www.youtube.com/watch?v=FIPu9_OGFgc

7) Video editing and compositing


Forget 3DS max and Maya. Why fork out money when you can get all this for free?

Blender is now looking like the all new tool for 3D. There's probably more but I've missed it.

Attachments drag.JPG 15.51KB
Member Avatar
jbennet
Moderator
17,127 posts since Apr 2005
Reputation Points: 1,618 [?]
Q&As Helped to Solve: 736 [?]
Skill Endorsements: 38 [?]
Team Colleague
Featured
 
0
 

nice dragon, heres what I did

Attachments r1.jpg 33.59KB
Member Avatar
iamthwee
Posting Sage
7,037 posts since Aug 2005
Reputation Points: 1,307 [?]
Q&As Helped to Solve: 592 [?]
Skill Endorsements: 74 [?]
Featured
 
0
 

Not bad, looks like a reasonably good low poly mesh, although the table top looks like you may have applied a bad subsurf modifier to it. It would probably be best to leave it flat.

Member Avatar
bumsfeld
Posting Virtuoso
1,537 posts since Jul 2005
Reputation Points: 399 [?]
Q&As Helped to Solve: 261 [?]
Skill Endorsements: 7 [?]
 
0
 

I would say C++ gets the youngsters used to the rigors of programming.

Member Avatar
mike_2000_17
21st Century Viking
4,065 posts since Jul 2010
Reputation Points: 2,244 [?]
Q&As Helped to Solve: 796 [?]
Skill Endorsements: 72 [?]
Moderator
Featured
Sponsor
 
0
 

I think that at that age, if the kid wants to learn something, he'll learn it regardless of how hard it is. If he doesn't want to learn it, it won't matter much how easy it is. That's just the kind of curiosity and passion that kids have at that age (when they are old enough to understand complex things, but too young for their minds to be too occupied by other things.. you know what I'm talking about..).

The question is not a matter of the most "objectively easy" language (that is, if "objective" and "easy" can even make any sense together). The question is what topics of programming (or IT) can be interesting to kids of that age and which language (or tools) gets them to do that the quickest. In other words, how to direct the interest of the kid towards the path of least resistance.

My initial interests were in math stuff (simulation, 3D graphics, etc.) and software engineering puzzles. Delphi and C++ were great languages to progress quickly with those interests in mind.

Other interests, other fields, would mandate different languages as the easier entry-point to start getting some basic programs working easily. Python is probably good for basic computer sciency work (algorithms, data structures, etc.). VB is probably better for GUI apps and the like.

The problem with teaching programming to kids is that there are so many possible things that can trigger their interest. You cannot commit to one area or type of projects or programming language without excluding a majority of people who will never develop a strong interest in that particular subject regardless of how easy the language is. One of my first high-school computer class taught image and animation editing (paint shop and animation shop), then VB for basic GUI programs, then html for webpages, and then left the rest of the class (last quarter of the session) to do a "big" project in one of these areas. I think that's a good pattern for a basic IT class.

BTW, on the Python feud, people respond differently to a new language like python. Personally, I think I got put off from python by the drastically different syntax, but mostly by the lack of clarity in type specifications, scoping rules, abstract memory model, etc. These are aspect that are very strong and explicit in C++, and those who see those things as annoying things to worry about in C++ it is not surprising they adopt Python very easily, but those who see these things as great tools to create robust software will have a hard time letting go of it. Again, different fields make different languages more or less suitable, it's a matter of interests and focus on various aspects of programming that give good (or bad) taste to a programming language.

Member Avatar
~s.o.s~
Failure as a human
10,399 posts since Jun 2006
Reputation Points: 2,496 [?]
Q&As Helped to Solve: 992 [?]
Skill Endorsements: 72 [?]
Administrator
Featured
 
0
 

BTW, on the Python feud, people respond differently to a new language like python. Personally, I think I got put off from python by the drastically different syntax, but mostly by the lack of clarity in type specifications, scoping rules, abstract memory model, etc.

I don't think kids or those starting out with programming need to worry about such things. Nothing is more unrewarding than sitting down to solve a problem only to find the language getting in the way, time and time again. Is C++ or C a bad choice? Absolutely no. Is it a bad first language? If you are trying to learn programming, yes, I would say so.

and those who see those things as annoying things to worry about in C++ it is not surprising they adopt Python very easily, but those who see these things as great tools to create robust software will have a hard time letting go of it

I can sense this going in the direction of "this is what separates the boy's from the men". Python is pretty much capable of creating a "robust" software. Heck, I have seen Python being used as a backbone for creating pricing related apps in a "big bank".

Those of us who have tried to teach programming to kids would be pretty much aware of the problems one faces when using a language like C or C++ as the first language. I know I have. I'd personally recommend the top to bottom approach. Learn the high level basics and then keep digging deeper as you become comfortable with simple stuff.

You
This question has already been solved: Start a new discussion instead
Post:
Start New Discussion
Tags Related to this Article