We're a community of 1077K IT Pros here for help, advice, solutions, professional growth and fun. Join us!
1,076,277 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Start New Discussion Reply to this Discussion

Computer Language for Children

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

25
Contributors
42
Replies
4 Months
Discussion Span
10 Months Ago
Last Updated
44
Views
sneekula
Nearly a Posting Maven
2,483 posts since Oct 2006
Reputation Points: 1,000
Solved Threads: 231
Skill Endorsements: 2

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

zeroliken
Nearly a Posting Virtuoso
1,346 posts since Nov 2011
Reputation Points: 214
Solved Threads: 205
Skill Endorsements: 14

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.

stultuske
Industrious Poster
4,379 posts since Jan 2007
Reputation Points: 1,318
Solved Threads: 610
Skill Endorsements: 24

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.

BitBlt
Practically a Posting Shark
894 posts since Feb 2011
Reputation Points: 482
Solved Threads: 148
Skill Endorsements: 14

redirect to my thread:-

programming for...

jackbauer24
Posting Whiz in Training
244 posts since Oct 2011
Reputation Points: 21
Solved Threads: 3
Skill Endorsements: 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

jackbauer24
Posting Whiz in Training
244 posts since Oct 2011
Reputation Points: 21
Solved Threads: 3
Skill Endorsements: 0

What about LOGO?

ddanbe
Industrious Poster
4,296 posts since Oct 2008
Reputation Points: 2,121
Solved Threads: 723
Skill Endorsements: 26

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.

MosaicFuneral
Posting Virtuoso
1,699 posts since Nov 2008
Reputation Points: 888
Solved Threads: 118
Skill Endorsements: 7

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.

jbennet
Moderator
Team Colleague
18,528 posts since Apr 2005
Reputation Points: 1,826
Solved Threads: 609
Skill Endorsements: 29

Yeah echo Basic vb.net...

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

iamthwee
Posting Genius
6,254 posts since Aug 2005
Reputation Points: 1,567
Solved Threads: 476
Skill Endorsements: 34

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

jbennet
Moderator
Team Colleague
18,528 posts since Apr 2005
Reputation Points: 1,826
Solved Threads: 609
Skill Endorsements: 29

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.'

iamthwee
Posting Genius
6,254 posts since Aug 2005
Reputation Points: 1,567
Solved Threads: 476
Skill Endorsements: 34

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

jbennet
Moderator
Team Colleague
18,528 posts since Apr 2005
Reputation Points: 1,826
Solved Threads: 609
Skill Endorsements: 29

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.

HiHe
Posting Whiz
332 posts since Oct 2008
Reputation Points: 177
Solved Threads: 34
Skill Endorsements: 4

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
iamthwee
Posting Genius
6,254 posts since Aug 2005
Reputation Points: 1,567
Solved Threads: 476
Skill Endorsements: 34

nice dragon, heres what I did

Attachments r1.jpg 33.59KB
jbennet
Moderator
Team Colleague
18,528 posts since Apr 2005
Reputation Points: 1,826
Solved Threads: 609
Skill Endorsements: 29

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.

iamthwee
Posting Genius
6,254 posts since Aug 2005
Reputation Points: 1,567
Solved Threads: 476
Skill Endorsements: 34

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

bumsfeld
Nearly a Posting Virtuoso
1,495 posts since Jul 2005
Reputation Points: 409
Solved Threads: 235
Skill Endorsements: 1

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.

mike_2000_17
21st Century Viking
Moderator
3,140 posts since Jul 2010
Reputation Points: 2,062
Solved Threads: 625
Skill Endorsements: 41

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.

~s.o.s~
Failure as a human
Administrator
12,220 posts since Jun 2006
Reputation Points: 3,307
Solved Threads: 783
Skill Endorsements: 55

This article has been dead for over three months: Start a new discussion instead

Post: Markdown Syntax: Formatting Help
 
You
 
© 2013 DaniWeb® LLC
Page rendered in 0.1668 seconds using 2.89MB