What to learn?

Started by
28 comments, last by Bongfilur 20 years, 9 months ago
I''m not a total noob I''ve been scripting websites a lot, and I don''t find the programming concepts and principles difficult. I already started out on c++.

I can''t see why a complex language wouldn''t teach you good programming style. As a guy mentioned, I think it''s what you make it and not what language you choose...
'Till I collapse
Advertisement
quote:Original post by Bongfilur
I can''t see why a complex language wouldn''t teach you good programming style. As a guy mentioned, I think it''s what you make it and not what language you choose...


Because a simple (single paradigm) language is much purer in it''s execution of underlying concepts. Complexer languages allow you to mix different styles, and it''s harder to program right that way.
And the price we paid was the price men have always paid for achieving paradise in this life -- we went soft, we lost our edge. - "Muad'Dib: Conversations" by the Princess Irulan
Mix different stybles of what? CAn you explain what you''re taling about, please.
'Till I collapse
quote:Original post by spg
C++ is the best way to learn how to program.

My progression was:

BASIC -> PASCAL -> C++ -> a hundred other languages


As much as I love BASIC and PASCAL, C++ is the standard.

-- Steve --

[edited by - spg on June 3, 2003 10:50:56 AM]


C++ is the standard in teaching languages? Explain how C++ is anymore standard than Pascal, a language designed for teaching programming in?


This is the tale of a Northern Soul, looking to find his way back home
Well, C++ is the main language for game programming. And thus it is also pretty "heavy". And if you know to use a language like C++, you will have the basic knowledge concerning programming principles.
'Till I collapse
C++ isn''t quite so newbie friendly, and it lets you break all kinds of "rules". I say "rules" because they are the rules of "good algorithm design". Rules like "don''t use GOTO statements", "don''t use return or break to exit a for loop", "constants are supposed to stay constant", "functions only have one exit point"... Languages like Pascal force you to stick to these rules. C++ allows you to do whatever the hell you like. "With great power comes great responsibility", if you liked Spiderman .

Personally, I''d rather be able to do whatever I like and write good, effective code than be forced to stick to rules.
-------------"On two occasions, I have been asked [by members of Parliament], 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able to rightly apprehend the kind of confusion of ideas that could provoke such a question."- Charles Babbage (1791-1871)
That''s right. But I''m almost sure all books tell you not to opposite the rules. At least mine explained not to use break and continue in loops if you can go around it.
'Till I collapse
quote:Original post by Bongfilur
Well, C++ is the main language for game programming. And thus it is also pretty "heavy". And if you know to use a language like C++, you will have the basic knowledge concerning programming principles.


No you won''t. You''ll have some knowledge of OO / Procedural languages. This isn''t the same as knowing about "programming". C++ does not teach you functional programming, or a myriad of other paradigms, for that matter.

Really, I advise you learn Pascal. It''s got a rigid structuring that forces you to think about your code before you start to actually write it, and it''s syntax is expressive enough that you can read through it easily enough without any real programming knowledge.

Free Pascal is good, and there was a IOTD on Flipcode last year about a terrain engine made in FP, that should quell any worries about it being a "useless" language.

Of course, once you''ve mastered Pascal, I adivse you to move onto bigger and better things :-P


This is the tale of a Northern Soul, looking to find his way back home
Well, I think we could sit here all day recommending different languages to start out with. But as I see it all the people who started out with different languages all came out with around the same experience in the end...
'Till I collapse
quote:Original post by Bongfilur
Ok, I think this thread might be helpful to everybody new to programming. I know the basics of programming, but now I want to go into the depth of one language; I''m starting out.

What the language needs to be capable of is the following:
-Teach you good programming structure.
-Make you think logically (might be the same as structure)
-It must NOT make it very dificult to learn new languages (new langs. like for example C#, C++, Java)

So what do you think? Actually I was looking into the mentioned languages (C#, C++ or Java), but I don''t know which to choose. So which would be better when following the demands above?

Another question which should NOT affect the choice I make:
What language will get you the best salary.

Thanks in advance,


Any of the langages you mention would have the desired effects.
C++ is currently the industry standard, however learning another language in addition to C++ certainly wouldn''t hurt. From what I''ve read the demand is for C++ and Java Programmers.

Patrick

This topic is closed to new replies.

Advertisement