Small Basic - Success Story [modified]
-
Get him to write a small operating system, something simple, Pick, DOS, VMS :)
Norm .net wrote:
VMS
Yeah, I look forward to wheeling one of my AlphaServers and a VT220 into my kid's classroom to show 'em how it used to be done, what an enterprise operating system looks like... I can set up a wireless router and let them telnet in from their cell phones. :rolleyes: (There is an app for that, right?)
-
"Impossible, but doable."
Inconceivable!
-
Norm .net wrote:
VMS
Yeah, I look forward to wheeling one of my AlphaServers and a VT220 into my kid's classroom to show 'em how it used to be done, what an enterprise operating system looks like... I can set up a wireless router and let them telnet in from their cell phones. :rolleyes: (There is an app for that, right?)
:thumbsup:, whilst they getting to grips with VMS, I'll crank up an old McDonnel Douglas Reality Server to boot.
-
Nemanja Trifunovic wrote:
Lego, or Logo?
You know what I mean ;)
Nemanja Trifunovic wrote:
Don't. It will be boring to him (heck, it is boring to me). Better teach him something like JavaScript or even Python.
When he read about Logo he came about the term Javascript and he asked me what it was. Do you think it is proper to jump him to js. I don't know if it will the right tool to teach programming.
Yusuf May I help you?
Actually not as stupid as it sounds allowing for Mindstorms, but I'd hold back on that 'til he's got the basics.
-
Mike Hankey wrote:
I agree with Henry, don't push to hard or he may become disinterested. The object is to give him things to do to challenge him but not so hard that he gets discouraged.
I agree. It is easier said than done. I am trying to figure out where is the line where too much challenge bends to discouragement. I know I can always pull back whenever I see he has hard time grasping ideas, but that might be too late.
Yusuf May I help you?
Try thinking of specific tasks that he could develop a program for. When I learned programming at university, some 25 years ago, I found the tasks we were being given were too easy, so I often ended up adding stuff. For instance when we were asked to develop a program that reads a year and calculates the date of easter in that year, I put a loop around it to find years for which easter coincided with the birthday of a friend of mine. Similarly, when we were asked to evaluate a game position (for the game Kalah) using min-max trees, I've added a loop, a printout for the current game position, and inputs for making a move, to construct a full-fledged game out of it. Maybe you can present your son with problems like that: something that is at the core of a greater problem - if he likes the problem he might feel like adding the remaining bits, if not he can move on to a problem he likes better. Board games (such as Kalah, mentioned above) would probably be best to get him interested. Other options would be real-time games such as Tetris that require timely input validation, and corresponding graphical output. (in fact, one of my very first programs I did outside university was a Tetris clone) I'd think a lot of the very early Atari VCS 2600 console games could be implemented with little effort as well, especially those working on the basic 40*25 character screen resolution. ;) I'm thinking of stuff like Pong, Breakout, or Outlaw. Of course, if you never had an Atari VCS it might be hard to get an idea how these games looked like :cool: [edit]fixed date reference[/edit]
-
Oops forgot that part. He is 11.
Yusuf May I help you?
Thanks, I think it's the perfect age to get him into this, assuming he's interested! Dad and son can code together soon :-)
Regards, Nish
New article available: Resetting a View Model in WPF MVVM applications without code-behind in the view My technology blog: voidnish.wordpress.com
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
I introduced it to my daughter last year. She was very interested in doing the turtle thing for a couple of days, then quit. She was 8. It seems she needs more time.
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
Despite what you say, my first instinct was to suggest VB.NET and then C#. If you want him to learn OOP then you definitely have to introduce the concept of design patterns. An alternative might be to introduce him to the concept of virtualisation by running up an instance of Linux in Virtual Box. From there you could introduce him to C and scripting languages. And of course there is Java. If you can get him comfortable in the Linux environment then all manner of possibilites open up.
-
I introduced it to my daughter last year. She was very interested in doing the turtle thing for a couple of days, then quit. She was 8. It seems she needs more time.
You know that is what scares me. Their attention span is very very short. I don't expect their enthusiasm to be always high. I have seen similar trends in my son as well. I don't know if the challenge is too high for them which leads to frustration or simply their is no motivation at all.
Yusuf May I help you?
-
Thanks, I think it's the perfect age to get him into this, assuming he's interested! Dad and son can code together soon :-)
Regards, Nish
New article available: Resetting a View Model in WPF MVVM applications without code-behind in the view My technology blog: voidnish.wordpress.com
Between me and you, I'm pushing him very hard to pick up the trade, learn very quickly, hit the ground running, start making 7-8 figure salary so I can retire. ;P
Yusuf May I help you?
-
Between me and you, I'm pushing him very hard to pick up the trade, learn very quickly, hit the ground running, start making 7-8 figure salary so I can retire. ;P
Yusuf May I help you?
:laugh:
Regards, Nish
New article available: Resetting a View Model in WPF MVVM applications without code-behind in the view My technology blog: voidnish.wordpress.com
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
At 9 and 10 I was teaching myself BASIC on an Apple ][, sorting out Assembler on my Vic20 and soaking up anything I could find about programming. By 12 I was playing with C and pointers. If he's interested, teach him about OOP and C#. It won't hurt. If anything OOP will teach him how to analyze a problem and break it down into smaller parts. Even if he doesn't go on to be a programmer, that's certainly a useful skill.
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
I'd suggest Python.
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
-
I'd suggest Python.
I rather like C# then Phyton because the Visual C# editor gives you more structure than phyton does (in my opinion). (The drag and drop function to make a form is also very easy if you are new to programming.) I also have started with small basic and C# looked a bit the same as small basic, . And maybe rather VB.net, it looks like C# but is less strict (and easier to understand). But the only thing that a child want, is to have fun with it, so let it stay enjoyable. Try to make a sort of game, a cool-looking app, ... (Every child want to learn as long as it is pleasant.) (I also don't think that a console isn't good to begin, it isn't cool to program, a visual thing is nicer for kids than a stupid black box with a lot of text in it.) Greets, Wim, 17
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
Yeah, Go for C#, I`m 13 and am really enjoying it. Start with Console -> Windows Application -> XNA (if he likes games) then... Well see what he wants to do from there. My father tried to get me doing it at 11. He kept pushing me to do ASP .NET and Share Point but I wasn`t interested, then I came back when I was twelve or so and re-read (that was really boring) a few c-sharp books then Riemers XNA Tutorials (The Matrix stuff may mess with his head - it sure did for me :-D ). And Yeah :-)
-
Yeah, Go for C#, I`m 13 and am really enjoying it. Start with Console -> Windows Application -> XNA (if he likes games) then... Well see what he wants to do from there. My father tried to get me doing it at 11. He kept pushing me to do ASP .NET and Share Point but I wasn`t interested, then I came back when I was twelve or so and re-read (that was really boring) a few c-sharp books then Riemers XNA Tutorials (The Matrix stuff may mess with his head - it sure did for me :-D ). And Yeah :-)
Cool. It is very nice of you to share your experience. +5
Yusuf May I help you?
-
I rather like C# then Phyton because the Visual C# editor gives you more structure than phyton does (in my opinion). (The drag and drop function to make a form is also very easy if you are new to programming.) I also have started with small basic and C# looked a bit the same as small basic, . And maybe rather VB.net, it looks like C# but is less strict (and easier to understand). But the only thing that a child want, is to have fun with it, so let it stay enjoyable. Try to make a sort of game, a cool-looking app, ... (Every child want to learn as long as it is pleasant.) (I also don't think that a console isn't good to begin, it isn't cool to program, a visual thing is nicer for kids than a stupid black box with a lot of text in it.) Greets, Wim, 17
wimvr wrote:
I also don't think that a console isn't good to begin, it isn't cool to program, a visual thing is nicer for kids than a stupid black box with a lot of text in it.
Very interesting. But I have seen many youngsters getting excited about gaming and game programming only to find themselves unable to do it, because their fundamentals are very weak. What Console apps do IMHO is that they strengthen your fundamentals. There is no flashy or cool looking window to worry about, there are no thousand events to worry about, simple I/O the rest is the meat of your code. Of course doing some graphics coding more fun than Console app, but what matters is not on look but what is inside. For that reason I tend to believe working on the fundamentals early one is critical. But the question is how do you make them fun without boring the learning to death. What has been your experience, if you don't mind sharing.
Yusuf May I help you?
-
Last weekend my son (who is 11 years old) won NetBook on local quiz competition. I was so ecstatic and I suggested we install Small Basic[^] to get him into programming. In the past, I introduced him into some programming including Lego. But I was not that enthusiastic about Lego, where as Small Basic[^] felt right approach into hard core programming. Yesterday was his first day reading about the Small Basic. By the time I got home, he already brushed through the console application part and got the gist of basic programming ( the typical basics such as variables, writing/reading from console, simple text concatenation, conditional statements, and loops). By the time I noticed where he was, he was reading Loops. I got skeptical and asked him to explain to me For and While loops and their difference. His explanation was perfect. Then I asked him to convert the For loop into while loop and the while loop into For loop. Boom he did it ( I swear he did not said plz snd codz ;P ). I am amazed at his speed and comprehension. I have few assignments lines up for him. After we finish with Small Basic, I am thinking to give him some grounds on OOP and then thinking to slowly introduce him to C#. I was skeptical but seen what he has mastered in single day, I feel he can grasp OOP and C#. What do you think? If you have to transition a kid from Small Basic, what would be your next step? Please don't say VB. [Edit] Fixed Small Basic URL mess-up [/Edit] [Edit2] Based on popular question added my son's age [/Edit2]
Yusuf May I help you?
modified on Wednesday, February 16, 2011 12:14 PM
Some projects I did with some novice computer people and a 30 year old computer. 1. Generate a simple maze on the screen. Requirements: Random number generator - used for number of splits(1-3) and directions of splits (Up, Down, Right Left) Ability to locate cursor on screen (or else use 2D array of X by Y coordinate space, dump at end) I think I did it all with simple loops, but I might have used recursion or an array for a stack. Main ideas: Try changing different numbers and see how the mazes change Start at bottom center of screen, facing up (or top of screen facing down) Move forward a random number of steps (3-5, 3-10, etc) Figure out how many splits (1-3, 0-2, etc.) 0 means it is a dead end! for each split random direction (if trying to backtrack, skip it) how many steps foward repeat for max iterations 2. Generate "string and nail" drawings if line plotting is available. good lead in to algebra and graphing plot line 0,15, 1,0 plot line 0,14, 2,0 plot line 0,13, 3,0 etc. convert it into a loop, what is the relationship? 3. Simple game, like a multiplaction math quiz. v2. time it. v3. keep a high score/fastest time. v4. persist high score.
-
Some projects I did with some novice computer people and a 30 year old computer. 1. Generate a simple maze on the screen. Requirements: Random number generator - used for number of splits(1-3) and directions of splits (Up, Down, Right Left) Ability to locate cursor on screen (or else use 2D array of X by Y coordinate space, dump at end) I think I did it all with simple loops, but I might have used recursion or an array for a stack. Main ideas: Try changing different numbers and see how the mazes change Start at bottom center of screen, facing up (or top of screen facing down) Move forward a random number of steps (3-5, 3-10, etc) Figure out how many splits (1-3, 0-2, etc.) 0 means it is a dead end! for each split random direction (if trying to backtrack, skip it) how many steps foward repeat for max iterations 2. Generate "string and nail" drawings if line plotting is available. good lead in to algebra and graphing plot line 0,15, 1,0 plot line 0,14, 2,0 plot line 0,13, 3,0 etc. convert it into a loop, what is the relationship? 3. Simple game, like a multiplaction math quiz. v2. time it. v3. keep a high score/fastest time. v4. persist high score.
interesting, thanks for sharing.
Yusuf May I help you?