|
Nathaniel, You aren't even representative of most regular programmers, much less representative of most 13 year olds, and you haven't the social knowledge to know that you aren't typical or even reasonable in this case. I am glad that you can do these things, but I would hate to get hold of code that you have written, not because it won't be good or even genius, but because it is likely that you are the only one that will be able to work with the code. When you program in the way that you describe at the age you describe, it is more like a tropism than it is organized behavior. I wouldn't wish having C++ as a native language on my worst enemy. It is a monstrous kluge, allowing at least a dozen ways to do almost anything, and many times completely unreadable by anyone but the author, and often not by the author after any reasonable time away from the code. I remember being an Assembler code guru in IBM 360/370 code, but it did not take me long to figure out that writing Assembler was a self-defeating exercise. Without the most careful of techniques, C++ can be the same thing. As with writing Assembler on modern machines with dynamic register sets, very few people can write code that is as efficient as a good compiler, especially not for more than a few lines. I suspect that eventually, things like C++ will fall into that same category. You will note that one of the chief difficulties in making any language such as lua relevant is finding ways to wrap all the junk that is out there in C and C++. As a result, programming is stuck in a rut around C and C++, and hardware is getting far ahead of software just because of those issues. I don't doubt that your facility in such things will make you highly employable in the present and the near future, but it will not help increase the ease or even the efficiency of implementing ideas in programs. Languages like lua need to be bootstrapped in themselves, and need tools to automatically and efficiently wrap the various pieces of C/C++ that must be dealt with to get things done. In the meantime, the tendency to make lua an appendage of C++ is, IMO, something that should be discouraged. Everett L.(Rett) Williams II Nathaniel Lewis wrote: It all depends on how hard the kid is going to try honestly. I am 17 and I had been programming AVRs in C++ for two years at 13. Also what kind of platforms are you going to be using? I saw NXT, and there is pbLua for it. What others were you thinking of? AVR, PIC, other? Nathaniel On Mon, 2010-07-26 at 01:16 +0800, KHMan wrote:Mike McGonagle wrote:A friend of mine has a 13 year old kid who is interested in Robots. I am wanting to suggest that he learn a programming language (Lua in particular) and learn a bit about building a computer (as Robots are specialized computers). As Lua appears to be a language designed for embedded systems, I was wondering if anyone out there could give me some links to sites that deal with Robotic projects that are using Lua, so that I could pass them along to the kid to encourage him to learn Lua. Also, as a related topic, if there are any projects that are dealing with AI, that would be great, too. That would be something else for him down the road.It's the wrong "embedded", I think. Lua's emphasis is on embedding into software programs, e.g. like VisualBasic in Excel or Word, but much better. Not the hardware embedded as in MCUs. There are Lua for microcontrollers, but they are not really 13-year-old-proof. So there's the no-brainer Lego stuff. But cheap servos are so very attractive these days, however going the non-nicely-packaged route would be a bit more difficult, though there are things like Arduino or a BASIC-based board to make things easier. |