Posted: 25 Jun 2007, 13:48
Work with VB until you are fully proficient in it, and are so frustrated that you feel you have to move to a real language 

I'm by no means a proffesional coder or anything, but I'm very happy that the stuff I do know is C++. Sure the syntaxes are similar etc it's easy to learn more languages, but personally I don't see much point, as I know C++, to use other languages. There's way more interesting things to learn, like how opengl or directx works.SwiftSpear wrote:Ugg, do you really believe learning is so closed ended? I hope to god your coding knowledge is good because your psychology knowledge is really really bad.Zpock wrote:C++ should be learned first otherwise the aspiring programmer would probably get comfortable with whatever else he learns first and never bother to learn proper c++ and become some b-rate programmer:
Getting comfortable with java/C#/another strict OOP language is fine, C++ isn't that different, it basicly just has more odd obscurities that must be learned through trial and error in comparison. Hell, it's pretty odd for a decent coder to not have a passable mastery of a good half dozen or so languages. It helps that most languages are reasonably similar once you get over syntax, but still...
100% agree. My university taught programming with Python (when I started, now they skip straight to Java - though with a python project in the 2nd half of the year... let's just say I think the whole department has gone rapidly downhill.) Python is a great language to learn the basics.imbaczek wrote:You can count on my disagreement to this line 24/7.KDR_11k wrote:Should also not be Python since strict typing is something that needs to be learned early on.
Why Python is good:
- teaches indentation
- doesn't bother you with complex syntax (which you need in C++ if you want STL, that is all the time)
- no need to compile
- reads well
- good documentation, free online books (dive into python)
- static typing gets in the way unless you really need it (not too often) - not a problem in Python, no static typing (you can still check types explicitly)
- it fits your head - very important for newcomers
C++ is arguably the worst choice for a first programming language you can make. Even Lisp or assembly is better, because they teach you something other than fighting obscure compile errors.
If you want to go into graphics engine development or something similar, that's fine. For pretty much every other project, a different language is probably better.Zpock wrote:I don't see much point, as I know C++, to use other languages. There's way more interesting things to learn, like how opengl or directx works.
Oh god no! I was kidding[Suck]suck wrote:im going to go download vb 2005 then
Algorithms book. Seriously. CLRS or something similar. When you have some experience in such diverse languages (I mean, VB + Lisp? That's hard to come by even in the open source hacker community!), you need to switch to a higher level of abstraction, where the language is a tool and not an objective.neddiedrow wrote:Now, I have some weak experience in Basic, Java, VB and Lisp.
Where should I actually learn how to program?
use perl problem solvedneddiedrow wrote:Now, I have some weak experience in Basic, Java, VB and Lisp.
Where should I actually learn how to program?
You just sound like a professor that's all about theory of teaching but never had any children and forgot how he learnt himself. Strict typing is way overrated. For a beginner, it's just an annoying annoyance and nothing else. And if you later need it, well, it's not like there is anything that prevent you from getting used to it afterward. No really, learning about type will just come naturally after a while, when the time is ripe and the young programmer start wondering about deeper issues, but trying to force it upfront doesn't help, to the contrary. It just teach people to go casting all over the place without a second thought when the compiler starts complaining. Totally unlike assembly, where the lack of any type checking force you to actually think about what represent the bytes you are manipulating.KDR_11k wrote:I still think that not learning strict typing is a hazard to a young programmer's development.
I learned BASIC on the C64, that was strictly typed though it had less types than modern languages.zwzsg wrote:You just sound like a professor that's all about theory of teaching but never had any children and forgot how he learnt himself.