0 members (),
482
guests, and
10
robots. |
Key:
Admin,
Global Mod,
Mod
|
|
S |
M |
T |
W |
T |
F |
S |
|
|
|
|
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
25
|
26
|
27
|
28
|
29
|
30
|
|
|
Joined: Mar 2013
Posts: 1,453
Member
|
Member
Joined: Mar 2013
Posts: 1,453 |
I am so old that I have always liked the parsimony of good old fashioned C. My K&R still sits up there on my office book shelves and even though I never use it anymore I am loath the throw it out. I think that C allows learning of the fundamentals very well without a whole lot of syntax to worry about. I have worked with far too many 'expert coders' from the wizards and other gadgetry generation that hardly know what bits and bytes are let alone basic error checking not to insist on giving someone a solid grasp of the fundamentals first. From there if there appears to be a sustainable level of interest then move to OO with Java. If you want to try Java on steroids then try Grails.
Incidentally Fortran is still very much alive and kicking over at Bloomberg...
Become what you are
|
|
|
|
Joined: Feb 2011
Posts: 1,432
Member
|
OP
Member
Joined: Feb 2011
Posts: 1,432 |
In my day, C was for real programmers (computer science majors). Pascal provided the basics for math/science majors as well as everybody else. Fortran was used to supplement math/science instruction in specific courses.
I kind of see the parallel between the DOS vs. Windows generations. Back in the DOS days, I felt much closer to my PCs and able to trouble-shoot problem. These days there are so many layers between my keystrokes and what the machines are actually doing. It may just be because I have not kept up with technology.
|
|
|
|
Joined: Feb 2010
Posts: 2,640 Likes: 2
Member
|
Member
Joined: Feb 2010
Posts: 2,640 Likes: 2 |
I am so old that I have always liked the parsimony of good old fashioned C. My K&R still sits up there on my office book shelves and even though I never use it anymore I am loath the throw it out. I think that C allows learning of the fundamentals very well without a whole lot of syntax to worry about. Harvard's popular intro course CS50, for which materials are available online, uses C as its primary language.
|
|
|
|
Joined: Jul 2013
Posts: 222
Member
|
Member
Joined: Jul 2013
Posts: 222 |
I want to start my DD8 on the path to learn programming. I was hoping to find something that I can put on an Android tablet that someone gave her. There is a Scratch 2 Games. Does anyone know if this is what I am looking for? Does anyone have any other recommendations for an Android device?
|
|
|
|
Joined: Jul 2012
Posts: 1,478
Member
|
Member
Joined: Jul 2012
Posts: 1,478 |
No, that is just a video bundle of examples that someone put together. I don't believe Scratch is out for Android. Depends on what level you want to start with. There is Lightbot which is a puzzle game that relies on programmatic thinking to solve levels. MIT also has App Inventor which is a streamlined way to make Android apps: http://appinventor.mit.edu/explore/content/hellopurr.htmlIf you want to head right at code, there are a few Python options for the Android.
|
|
|
|
Joined: Jul 2013
Posts: 222
Member
|
Member
Joined: Jul 2013
Posts: 222 |
ZS, I am not sure where I want to start. She is 8 and she loves Simulation games on the Ipad. She does a number of them, but the old Ipad 1 is going to dad and she has a new Android tablet that someone gave her. We are homeschooling her and would like to get her started on a track that will develop programming skills.
I am starting at ground zero and I want something she can do on her tablet on her own, if possible. She will be much more interested in it, if it is on her device rather than on the computer. I am considering putting Minecraft on her tablet, but I don't know enough about it. I have heard people talking about Minecraft and Java but I don't know how that fits in and if that is for down the road when someone has a good amount of experience in both Minecraft and Java.
|
|
|
|
Joined: Feb 2010
Posts: 2,640 Likes: 2
Member
|
Member
Joined: Feb 2010
Posts: 2,640 Likes: 2 |
I am reviving this thread to mention the essay below. The author, who works at a firm that uses OCaml, recommends it and similar languages. I've programmed in Python, VBA, Fortran, and the functional languages look hard to me. But since my 11yo son is already comfortable with Python, something very different could be a good learning experience for him. How to choose a teaching languageby Yaron Minsky November 17, 2014 As was highlighted by an informal study by Philip Guo, lots of schools now teach Python, particularly for early introductory courses. I have mixed feelings about this choice. Python is a wonderfully friendly language, but that friendliness is bundled together with some problems.
This was made apparent to me in part by my experience with students who chose to code in their interviews in Python. In many ways, Python is the ideal interview language, since its concise and readable syntax makes the constraints of coding on the whiteboard more bearable. But what I saw was that students who learn Python often walk away with a rather rough model of the semantics of the language. You might be surprised at what fraction of students who have programmed extensively in Python can't guess how Python lists might be implemented, to say nothing of their ability to explain the semantics of language features like generators or decorators.
This isn't really a knock on Python. After all, there's something great about a tool that lets you get things done without fully understanding how it works. But in different ways, both Scheme and C encourage you to understand what's going on from the ground up, and there's a certain pedagogical power in that. All in, I think Python is a great choice for an early introductory course, particularly one meant for those who aren't going to end up as computer scientists or full-time programmers. But I'd be leery of using it outside of those circumstances.
A development that I'm personally rather encouraged by is the emergence of statically typed functional languages, ML in particular, as teaching tools. Over the last few years, I've had the pleasure of visiting and lecturing at a number of schools that teach using OCaml or SML, including Brown, Cornell, Penn, Princeton, CMU and Harvard.
ML has gained ground for good reasons. First, it shares much of Scheme's elegant intellectual foundations, even though its core isn't quite as charmingly minimalistic as Scheme's. But ML has a wider range than Scheme because it allows you to show students the role of types in programming. Despite that greater range, OCaml and SML are relatively simple languages, which matters even more for teaching than it does for everyday use.
The only choice I've seen a lot of that I can't reconcile myself to is Java.
|
|
|
|
Joined: Sep 2007
Posts: 99
Member
|
Member
Joined: Sep 2007
Posts: 99 |
I haven't read the other responses. But, I do think age matters.
For example, one of my kids taught himself scratch at age 7. At 7, I wouldn't have wanted him doing Java or C. He learned scratch so well, that at 9 I handed him a JAVA book. He taught himself that and is actually fairly good. He hasn't been formally taught, he just figures it out.
At 12 with a kid who wasn't showing any interest in programming, I signed him up for a Visual Basic course. That went so well, that the next class was C. After C, came Java. Part of the order was determined by available classes.
So two different kids, two different paths, both kids love to program.
|
|
|
|
Joined: Feb 2013
Posts: 40
Junior Member
|
Junior Member
Joined: Feb 2013
Posts: 40 |
Code combat is excellent. It's a RPG game where one has to learn to write programs to control the character. Several different programming languages can be chosen. http://codecombat.com/
|
|
|
|
Joined: Feb 2010
Posts: 2,640 Likes: 2
Member
|
Member
Joined: Feb 2010
Posts: 2,640 Likes: 2 |
Learn Coding Before School Startsby Erick P. '17 MIT Admissions Blog August 2, 2015 Both the blog post (in the form of a Python program ) and the comments are informative.
|
|
|
|
|