What language must a newbie choose?
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
Hi, The real power of a programmer is more obvious when he/she is dealing with C++ then with C#, Java or some other easy-to-learn-easy-to-use languages. My point is let the person start from C++ and fill the difficulty and pleasure of programming from the ground up and some time later he/she would pass to other languages easily if desired. Note these all are my personal feelings.
-- ====== Arman
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
Out of those two, probably C#. C# is probably a good choice in general, because the syntax is close enough to C++ that you'll be able to help initially.
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog "I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
-
Hi, The real power of a programmer is more obvious when he/she is dealing with C++ then with C#, Java or some other easy-to-learn-easy-to-use languages. My point is let the person start from C++ and fill the difficulty and pleasure of programming from the ground up and some time later he/she would pass to other languages easily if desired. Note these all are my personal feelings.
-- ====== Arman
I have always prefered a more incremental approach rather than 'give them the hard stuff, and if they survive, the rest will be easy'
Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog "I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
(c# or Java) and javascript would be my suggestion. The web is a massive thing at the moment so it's worth making sure that any language you learn has a big presence in web application development. c# and java both fit that bill perfectly and at the client end javascript is king. Also, at 15 having a cool webspace which you have coded and can show off to your mates is probably more satisfying than implementing a book full of design patterns while learning c++. That stuff is important but I feel it can come later when you have recognised the need for such things. just my 2p worth Russ
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
For newbies I would certainly suggest them to start with C/C++ as these are the building block, once the basic are programming learned using these language. All the latest programming languages are best understood when it is compared with languages like C, C++ ....
Regards, Jaiprakash M Bankolli jaiprakash.bankolli@gmail.com http://jaiprakash.blog.com/
-
For newbies I would certainly suggest them to start with C/C++ as these are the building block, once the basic are programming learned using these language. All the latest programming languages are best understood when it is compared with languages like C, C++ ....
Regards, Jaiprakash M Bankolli jaiprakash.bankolli@gmail.com http://jaiprakash.blog.com/
Well said.
Nobody can give you wiser advice than yourself. - Cicero
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
Gautam Jain wrote:
I am unable to decide what language/platform he must choose
If it is his choice, why are you making it for him?
Upcoming events: * Glasgow: Introduction to AJAX (2nd May), SQL Server 2005 - XML and XML Query Plans, Mock Objects, SQL Server Reporting Services... Never write for other people. Write for yourself, because you have a passion for it. -- Marc Clifton My website
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
You can try and teach him ASM or C , which is important for understading basic concepts. But I see it hard how can anyone view modern computers as assembly toys, the complexity is very high, long gone the 8086 days. What about starting low and moving up, like this 'toy': http://www.basicmicro.com/[^] http://www.doc.ic.ac.uk/~ih/doc/pic/[^] http://en.wikipedia.org/wiki/BASIC_Stamp[^] or lego mindstorm? He can start with the basic compiler, and soon move to asm as he feel a need for direct control over his toy. :)
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
C++ might be dying in the Microsoft world but not elsewhere. There is a psychological advantage of doing .NET because it is faster to get a GUI and stuff happening on the screen, so an impatient kid will get more immediate feedback on his efforts. But... if the kid is of a bit sturdier psyche, and is willing to put more effort and getting less back, _in the short ter_m, the C++ is absolutely my suggestion. Also as you know C++ much better, you are more able to infuse enthusiasm into him about that. The chief argument in favour of C++ is that it does not obscure what is really happening inside the machine. It requires more work, but builds a more solid ground for whatever technologies are to come in the decades ahead!
//computer Zen delete this;
_____________________________________ Action without thought is not action Action without emotion is not life
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
I would introduce him into a learners language first. I cannot remember how exactly it was called, but "Logo" comes to mind: You program a turtle (or hedgehog?) which supposedly has a pen right in its navel. I believe that this simple language is an excellent opportunity to understand the basic concepts behind programming (loops, conditional execution, etc). I'd take a few month to explain these basic concepts, and then move to either C# or Java. With Java, he might get the additional kick of being able to write applets for websites which also run "standalone". When he has the grasp of programming in an object-oriented language, you can introduce him to procedural programming with C (and, at that point, pointers). The transition to C++ should then be pretty easy. As soon as opportunities arise, you can also insert a quick introduction to certain techniques and algorithms. For example, let him find his way around a map that contains height information. Keep it simple, but use the opportunity to introduce the concept of a graph and how, for example, A* works. If he wants to print a list or whatever, teach him how to group his output in a sensible way. For guys, the following "projects" might be interesting once he can handle at least C# or Java: (With possible learning goals in brackets) A "league"-system, to keep track of the scores of his favourite teams in his favourite sport. (math functions and checking input, standard controls) A simple game like pong or snake. (Simultaneous input and display, keeping track, possibly synchronization, custom controls) A "flashy" animation (graphic and sound output, double-buffering, possibly multithreading) That list definitely is incomplete, so feel free to add more suggestions.
Cheers, Sebastian -- Ceterum censeo, borlandem esse delendam.
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
How I initially got into programming originated from having a Mindstorms kit (the first edition), after a while Dad suggested I started programming. Then I discovered that you can program the Mindstorms using the Spirit OCX and that was much more fun controlling whatever robot I was able to build through the computer. You might want to check out fellow CPian Ashish's blog[^] in which he uses C# etc to control robot cars, webcams and lasers, sure thing to get a 15 year old interested.
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
I would suggest C++, for the simple fact that you seem to be most comfortable with it, and therefore best suited to help him.
BW
Quick to judge, quick to anger, slow to understand.
Ignorance and prejudice and fear walk hand in hand.
-- Neil Peart -
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
c++ using gcc. Let him fly free of Microsoft for a few years while learning the fundamentals.
File Not Found
-
Hello Dear Members, I have a nephew, 15 years old. He is interested in software development. I am unable to decide what language/platform he must choose as his hobby (and later as his career). I myself, have been only developing in C++ for about 10 years. I love C++ because of its power & flexibility. I want to let my nephew: 1. Choose a language/platform that will not die for several years (like C++) 2. Ability to develop software for any purpose (Application Development, System Tools, Drivers, Games etc). C++ has that power. My questions are: 1. Should I encourage my nephew to explore .Net directly? 2. Should I encourage him to do C++.Net or C#.Net?
Regards, Gautam Jain
I almost always recommend Python for beginners. First because it has a fairly clean syntax that is easy to pick up. Second because it's not a toy language; it's fully featured and quite powerful. I've work professionally with python for while and Google is investing a lot of time into the language. Third because it runs just about anywhere without issue. Finally because I believe it's healthy to expose people to non-ms technologies. Also, regardless of what language you choose; try to avoid a heavy/full featured IDE. I've seen way to many people that are lost without one, best not to set him down that path. This of course is only my opinion :) [Edit] I will also add that it may be helpful to introduce him to something like PyGame or DarkBasic. Help him plan a game and cut him loose with the documentation and his own motivation. In my experiance the best way to learn to program in any language is to just open the editor and code. -- modified at 14:09 Wednesday 18th April, 2007
My Blog A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long
-
Maybe to start by fundamental Mathematics and then computer science including algorithmic would be better... At first academic language with good properties such as Caml, Ada, Lisp,... might be a good choice.
Yeah at last someone who remembers good old lisp :P In fairness I'd agree with having him start with one or two academic langs just prior to C++ with C++ being the eventual goal. C# could be #2 on that list if only to be able to get nice tangible. Maybe Pascal or VBA as a light intro to program structure. Lisp for kicks so there's some exposure to a functional programing arch.
-
Well said.
Nobody can give you wiser advice than yourself. - Cicero
Thanks pal....
Regards, Jaiprakash M Bankolli jaiprakash.bankolli@gmail.com http://jaiprakash.blog.com/