Sordie
Joined: 3rd Apr 2009
Posts: 2044
Re: Calling all programmers! (and non-programmers)
I'm with Seph with this one. C++ is a horrible language for beginners. Actually, C++ is a horrible language no matter what your skill level is and it's definitely a high level language. ---
http://sordie.co.uk
http://twitter.com/@SordieEO
14 years, 22 weeks ago
|
Addison
Joined: 24th Mar 2009
Posts: 1380
Re: Calling all programmers! (and non-programmers)
I'm with Arcitex on this one. C++ teaches you about memory management. Starting people off with learning about pointers, and how to initialize them is starting them much better off than with javascript.
---
http://www.addipop.com
14 years, 22 weeks ago
|
Sordie
Joined: 3rd Apr 2009
Posts: 2044
Re: Calling all programmers! (and non-programmers)
Addison posted: (1st Aug 2010 09:05 pm)
I'm with Arcitex on this one. C++ teaches you about memory management. Starting people off with learning about pointers, and how to initialize them is starting them much better off than with javascript.
New programmers don't need to worry about memory management or how to initialize pointers (Neither should C++ programmers, apparently). They should be concentrating on learning modern programming techniques in a friendly easy to use environment. Not worrying about why their code is causing segfaults. Anyway, the future of end user applications is running in safe, garbage collected, managed virtual machines and C++'s only purpose will be for things like kernel/driver development. Embrace the future or end up turning into one of those long bearded university professor types that can tweak Linux to run on a washing machine but can't actually produce anything useful. XD ---
http://sordie.co.uk
http://twitter.com/@SordieEO
14 years, 22 weeks ago
|
Arcitex
Joined: 15th Mar 2009
Posts: 389
Re: Calling all programmers! (and non-programmers)
That's not really my point. My point is that it's useful for people learning JavaScript and other higher level languages to understand how and why certain things work certain ways. Having a background in a language like C++ will enable you to understand why a JavaScript
engine might require you to do something a certain way instead of blindly assuming "I need to do this because... we'll that's what I was told..".
"I have no problem with old games like EO. Hell, I still
playPacman"
And you're telling us to embrace the future? ;)
14 years, 22 weeks ago
|
Sordie
Joined: 3rd Apr 2009
Posts: 2044
Re: Calling all programmers! (and non-programmers)
Arcitex posted: (2nd Aug 2010 06:47 pm)
My point is that it's useful for people learning JavaScript and other higher level languages to understand how and why certain things work certain ways.
I'm betting a large number of C++ programmers have no idea how and why certain things work. Without looking anything up, can you honestly say (be honest to yourself) that you know how the memory manager works in your C++ application? Do you know about memory blocking and fragmentation prevention techniques used by modern memory mangers? Do you know how the heap works? Do you know how the stack works? When or why your compiler chooses to use the stack, heap, tls, etc. to store data? What calling convention your functions use? You simply don't need to know these things to write applications and although it's very commendable that you show an interest in how your code is actually working, it has very little place in teaching new programmers to actually program. It's like your first driving lesson being a detailed breakdown of the how the internal combustion engine works. Anyway, lets get back on topic. It's time I made some more libraries for it =P ---
http://sordie.co.uk
http://twitter.com/@SordieEO
14 years, 22 weeks ago
|
Arcitex
Joined: 15th Mar 2009
Posts: 389
Re: Calling all programmers! (and non-programmers)
I actually do have somewhat of an understanding of how some of that stuff works, but only because I watched a series of Standford programming methodology lectures (Off topic, but it's cool how many college courses you can find online recorded in full from schools like Standford,
MIT, etc..). C++ wasn't my first programming language, but I recall certain times when I did have moments where I wished that I learned a lower level language first because it just made so many things that were a mystery to me all fit together in my head. At the moment however, I can't recall
anything specific. I'm sure it'll come to me eventually though.
I do see where you're coming from. I suppose if you want to just write applications to do a certain task without fully understanding the process then that's fine. Personally I'm practically neurotic when it comes to understanding what I'm working with, and although it's true that you
may not need to know all the ins and outs in order to program something that doesn't mean it's not a good idea not to. Why strive to know less when you can learn more? Just knowing more about what you're working with in general will give you a better understanding and it's hard to argue that having
a better understanding isn't better. It might not be necessary, but I'm not interested in the bare minimum.
This reminds me of a major problem that I have with the education system that I've experienced. One area where this problem is especially prominent is in the mathematics department. A good example is a long time ago when I was learning trigonometry. We weren't taught what sin(), cos(),
tan(), etc.. actually did we only knew that "If you used this function in this fashion you get this result". Essentially we were taught how to get a good grade on a test but at the end of the day we were left with an understanding that was inadequate at best and really quite unsuitable for any real
application other than passing standardized exams.
14 years, 22 weeks ago
| | | | | | |