I would agree. It's sounding like Basic isn't the bad word it used to be too... If he spent all of his time doing things in basic, even writing shareware type things, in 6 yrs would it be something to be proud of professionally, or would a hiring company consider it hobby-ish? I know in some parts it would be OK, but I'm thinking mainstream. For instance, maybe C++ is the eventual way to go, but it's tough to self teach that (what he'll be doing), even though it would look good on the resume at any time. I figure he'll stick with it and take it up in college if he can do real things with it, get a grasp on it quickly, and see there's a future in it and that the education isn't just 'theoretical'. Payback in multiple ways too. I'll guide him on the problems, but the language could be anything. Creating useful real apps can be quite motivating. Having lots of demand for that particular language when he gets out will be motivating... sergio masci wrote: > > On Fri, 28 Mar 2008, Dr Skip wrote: > > > > Forget language what you need is something that will train your student to > think logically, decompose a problem into steps without taking things for > granted, and ultimately build self disceplin and avoid dangerous short > cuts. > > I belive programming will change greatly over next 10 - 15 years primarily > because the lanuages available today are inadiquate to allow compilers to > build executables that take advantage of the growing amount of parallelism > and huge amounts of memory available. Yes there are libraries that allow > you to do multithreading but compilers could produce MUCH more efficient > code if they know more about what the programmer is actually trying to do > rather than be blinded by the wall that is the library interface. > > As an example take a structure. Here you gather together items that > logically belong together. To process an array of structures you would use > some kind of loop and an index. In doing this you prevent the compiler > from automatically arranging variables for optimum runtime memory access. > In short the CPU cache is trying to compensate for random access. If the > language were more feature rich (say support structures with an anonymous > layout) and the compiler more intelligent such that it could schedule > blocks of RAM for high speed access (e.g. load whole pages into the cache > in one go) then you would achive much better optimisation (probably at the > expense of larger runtime footprint - but who cares). > > So I belive the best you can possibly do for this student is start him/her > off on something like C or BASIC. Learn the underlying skills, maybe > progress to assember just to really drive the leasons home and don't > worry about which language will be in fashion later on. > > And please don't listen to all this rubish about learning BASIC being a > handicap. Yes an unstructured version will let you do lots of horrible > things but learning what these horrible things are is a part of learning > how to do things right and building the self disceplin I was talking > about. > > Regards > Sergio Masci -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist