Advertisement

what lang. is the best to start programming?

Started by January 01, 2003 05:09 PM
195 comments, last by caandom 21 years, 10 months ago
quote: Original post by SabreMan
You do realise that is a self-perpetuating philosophy? There''s no reason that someone who is a hobbyist and a newcomer has to learn using a language intended for development of large-scale high-performance simulation s/w, in the same way there''s no need to learn to drive in a McLaren F1.
But McLaren F1 is not widely used I never see a McLaren on the street.
I highly recommend you begin with Python. It gives you all the tools you need to develop strong applications quickly while managing to stay simple and relatively easy to learn. I think it''s pretty safe to say that within a few months -- givin'' the proper books, cokes, and passion -- you should already be well on your way into writing addictive games.

When you get into 2D game programming (and maybe 3D eventually), SDL is probably what you''ll want to check out; more specifically PyGame (www.pygame.org). SDL already starts out extremely simple to use, and thanks to Python, PyGame is even able to simplify SDL greatly. There are also a lot of free source code and other helpful libraries extending PyGame.

At any rate, Python is a langauge you really should learn, regardless of what you decide to go with to begin. C++ will be a lot easier after this, and worth more then. Take for example a typical Python program will be 5-10x shorter than the C++ equivalent in work time (ie, what a Python coder can get done in roughly a few months would take over a year to complete at a similar level of quality in C++). Also, you''ll find a great deal more of Python code to be reusable in your next project. It may sound unrealistic, but it''s usually true. And anyone with good experience in both langauges will also usually agree. Another thing is that Python also shines as a "glue" language. So you can get those performance crucial or lower-level parts done in C, Java, or C++, etc. and then the other components in Python. So don''t cut yourself short, learn both eventually. But start in the right direction.
Advertisement
quote: Original post by SabreMan
I''m not advocating a lack of type-safety. Please try and stop making this misrepresentation.

Okay. So type safety has got nothing to do with static typing then? My view of a lack of type safety is a method where I can provide the wrong kind of object and not be told that I''ve done so until runtime.

"C combines all the power of assembly language with all the ease of use of assembly language"
quote: Original post by SabreMan

Since you appear to agree that dynamic type-systems do not prevent you from learning about types, you''re undermining a large portion of your own argument. Since you agree with me on that, what is your specific objection to Python as a teaching language?


My point is that you must stick to one language when you are teaching. It is hard enough as it is without complicating things.
Also, the students want to learn C/C++ or else they would have chosen another course. For that reason I can''t as a teacher use Python in class. That would be highly irresponsible. This I hope also explains faulty interpretetations of the previous post.

quote:
I''m allowed the freedom to post whatever I choose on these forums, within the forum guidelines. I''m being civil to the people I am debating with, particularly because I find the topic interesting. I suspect others do too.


Yes you have the right and you are polite. but you also apply a write-as-much-as-possible-to-cover-as-much-of-the-screen-as-possible tactic which is a "in your face" habit. Keeping short but sweet answers/rebuttles are both more polite and better behaviour. That is why in congress you have a timelimit on the speeches you know.

Also, like in the previous post you made, you made some attacks that were unwarranted and incorrect. You also made some statements from your own thinking which you previously had not expressed. I understand that you might have a lot to say but being clear is of utmost importance.

I hope you take this little piece of advice and apply it.

Best Wishes.

____________________________________________________________
Treat others the way you want them to treat you!!
No no no no! :)
quote: Original post by NotAnAnonymousPoster
Okay. So type safety has got nothing to do with static typing then?

Static typing is one approach to type-safety.
quote:
My view of a lack of type safety is a method where I can provide the wrong kind of object and not be told that I''ve done so until runtime.

Then you have a different view of type-safety to the rest of the CS world.
quote: Original post by SabreMan
Then you have a different view of type-safety to the rest of the CS world.

Oh give me a break please. I don''t spend my time inventing random definitions for things, I did aquire that view from somewhere. Here''s the first thing I found on google when I looked up "what is type safety?"
quote:
A: Type safety is about increasing the opportunities for the compiler to detect your coding errors.

Putting aside whether this is a load of bullshit or not, does it support my view that:
quote:
...a lack of type safety is a method where I can provide the wrong kind of object and not be told that I''ve done so until runtime

?
I''m just trying to defend myself here, I don''t think my view is a product of my imagination, more like being misinformed. I don''t mind being wrong, but I just want you to know that I don''t do it intentionally. Would you be willing to give me a better definition of type safety?
"C combines all the power of assembly language with all the ease of use of assembly language"
Advertisement
quote: Original post by MichaelT
My point is that you must stick to one language when you are teaching. It is hard enough as it is without complicating things.
Also, the students want to learn C/C++ or else they would have chosen another course.

Hang on a minute, I''m not telling you what you should teach, we''re discussing what language newbies should choose to learn programming. Once someone has enrolled on a C++ course, then they obviously must be taught C++.
quote:
For that reason I can''t as a teacher use Python in class.

And neither have I said you should. There''s an assumption running throughout this thread that the person wishing to learn programming has not yet chosen a language, and is free to take their pick of whatever''s available. That is the basic premise of the entire discussion.
quote:
Yes you have the right and you are polite. but you also apply a write-as-much-as-possible-to-cover-as-much-of-the-screen-as-possible tactic which is a "in your face" habit.

I''ve specifically not flamed during this thread, and now I get criticised for writing too much. I can''t win.
quote:
Keeping short but sweet answers/rebuttles are both more polite and better behaviour.

I absolutely disagree that the length of post has anything to do with politeness. I do not pepper my posts with unnecessary words for explaining what I want to say. I *have* added information that was beyond what was required, such as the entirety of the "Type system" entry from the Tunes glossary, but I did that because NotAnAnonymousPoster had expressed an interest and I felt he might like to read the unadulterated entry. To suggest that is somehow an underhand debating tactic really stinks.
quote:
That is why in congress you have a timelimit on the speeches you know.

Fascinating.
quote:
Also, like in the previous post you made, you made some attacks that were unwarranted and incorrect.

Obviously I felt they were warranted and correct, and you''ve failed to demonstrate otherwise. I''ve gone to some length to explain why that is so, and then you criticise that I''m spending time explaining. It hasn''t gone unnoticed that you still haven''t provided any satisfactory explanation for any of your points, such as "most languages are static". Are you exempt from having to support your claims?
quote:
You also made some statements from your own thinking which you previously had not expressed.

How is that a problem? If I restricted myself to things I''ve said before, I wouldn''t need to make new posts.
quote:
I understand that you might have a lot to say but being clear is of utmost importance.

And where have I been less than clear?
quote:
I hope you take this little piece of advice and apply it.

I''ve got a better suggestion: please stick to the topic under discussion and substantiate your previous claims instead of trying to derail the conversation through criticising my writing style. Which languages did you consider in reaching the conclusion "most languages are static"? What do you think about generalised functors in C++? What specific objections do you have to Python?
quote: Original post by NotAnAnonymousPoster
Oh give me a break please. I don''t spend my time inventing random definitions for things, I did aquire that view from somewhere. Here''s the first thing I found on google when I looked up "what is type safety?"

Do you often cite the first thing that is randomly spewed out of a web search? Have you made any effort whatsoever to verify the trustworthiness of the source?
quote:
Would you be willing to give me a better definition of type safety?

I provided you with the entire "Type System" entry from the Tunes glossary. Did you read it?
Is this a SabreMan topic or is it about newbies?
quote:
Original post by SabreMan
I can''t win.


Do you have to?

quote:
I do not pepper my posts with unnecessary words for explaining what I want to say


Actually you do. Read your own posts and see for yourself.

quote:
Obviously I felt they were warranted and correct, and you''ve failed to demonstrate otherwise.


Unless you(both) are misunderstanding what you are talking about, which seems to be the most likely case here.

quote:
Please stick to the topic under discussion..


As should you, currently you are a man on a mission.

This topic is closed to new replies.

Advertisement