Learning to program....
- joegiampaoli
- Posts: 837
- Joined: Thu Oct 05, 2006 7:12 am
- Location: San Miguel de Allende-MEXICO
- Contact:
Learning to program....
I would really like to learn how to program.
I hear python is a damn good language, especially since it's a system wide like java. I am sort of interested in learning python, so I can write my own blender plugins and such, also I would like to try making a game, in 3D, and other type of 3D appz, does anyone know of good resources? Even a book I could get a hand on?
Is python worth it? For a beginner like me?
Please don't tell me to start off with some "kindergarten" language, I want to avoid loosing time and start programming during my learning curve.
What other strong language do you recommend? Especially since I am on Linux?
Thx
Joe
I hear python is a damn good language, especially since it's a system wide like java. I am sort of interested in learning python, so I can write my own blender plugins and such, also I would like to try making a game, in 3D, and other type of 3D appz, does anyone know of good resources? Even a book I could get a hand on?
Is python worth it? For a beginner like me?
Please don't tell me to start off with some "kindergarten" language, I want to avoid loosing time and start programming during my learning curve.
What other strong language do you recommend? Especially since I am on Linux?
Thx
Joe
Hey Joe!

Well, ... I'm not a coder even if I had my hands on PHP for a while, it's to
long ago. AFAIK python is worth it to learn, yes for a beginner too. But man
I would say it's NOT good for any *serious* 3D stuff! So yes give python a
try, should be pretty straight forward to learn, ... but then get your hands on
C/C++ and OpenGL if you really want to do 3D coding. there are a lot of
sites, especially from the "demo scene" that are just there to help ya out.
Don't have the time right now to get you the right links, but I guess you've
got a bit time and are not in a hurry ... hehe. ;o)
... I'll tune in later. *G*
take care
Oleg aka psor



Well, ... I'm not a coder even if I had my hands on PHP for a while, it's to
long ago. AFAIK python is worth it to learn, yes for a beginner too. But man
I would say it's NOT good for any *serious* 3D stuff! So yes give python a
try, should be pretty straight forward to learn, ... but then get your hands on
C/C++ and OpenGL if you really want to do 3D coding. there are a lot of
sites, especially from the "demo scene" that are just there to help ya out.
Don't have the time right now to get you the right links, but I guess you've
got a bit time and are not in a hurry ... hehe. ;o)
... I'll tune in later. *G*
take care
Oleg aka psor
"The sleeper must awaken"
- joegiampaoli
- Posts: 837
- Joined: Thu Oct 05, 2006 7:12 am
- Location: San Miguel de Allende-MEXICO
- Contact:
-
- Posts: 13
- Joined: Wed Jan 31, 2007 9:49 am
Well I would say start with C++. If you're looking to do gaming then C++ and focus on OpenGL or DirectX. But remember OpenGL is for graphics only so to make a whole game you will need to use other APIs. DirectX does have some advantages of doing other thing besides graphics, like it has handlers for some networking, sound, and controls(mouse, keyboard, joystick). DirectX is a Microsoft entity so it will be hard (or impossible) to program in Linux although I think there are some DirectX "clones" that you could check out. C++ is a very powerful language and should allow you to do basically anything you want to do. There is a much bigger learning curve but because it's been out so long, there are a ton of tutorials and book that you should be able to get.
So C++(or C#) is the way to go unless you find yourself a coding savant then go with with ASM.
So C++(or C#) is the way to go unless you find yourself a coding savant then go with with ASM.
i wouldn't recommend ASM as a first language simply because it is bizarre to ssay the least and it's very easy to write bad ASM code. I would suggest learning C followed by stepping into C++ and then taking a look at ASM to get an indepth idea of how things really go on. learning C and C++ will pretty much give you a head start on any other language as many many languages out there are based on one of these two.

Nothing running under a virtual machine can ever be as fast as native code. simple.
That's a slightly sweeping statement
The difference is usually negligible for most applications, especially if the language in question has a JIT compiler.
Java or C# would probably be fine for 99% of anything you'd ever need to do. C++ (and I've done plenty of it over the years) would be horrendous as a "my first programming language".
Python is great (but slow). Java is also great and significantly faster than Python. Both run happily on any platform.
Ian.
That's a slightly sweeping statement

Java or C# would probably be fine for 99% of anything you'd ever need to do. C++ (and I've done plenty of it over the years) would be horrendous as a "my first programming language".
Python is great (but slow). Java is also great and significantly faster than Python. Both run happily on any platform.
Ian.
I didn't suggest C++ as a "My First Programming Language" I suggested C, a procedural language with no clunky object crap to get in the road of learning the basics of programming. It will also not hide anything from you so you can break stuff if you want to in the name of learning.C++ (and I've done plenty of it over the years) would be horrendous as a "my first programming language".
...countering one sweeping statement with another...interestingThat's a slightly sweeping statementThe difference is usually negligible for most applications, especially if the language in question has a JIT compiler.

Learning to code using a system that completely hides the machine from you is not my idea of a good plan. Garbage collection etc just encourages bad programming habits from the get go. This also applies to C#. If you can't be trusted to manage memory yourself then you have no bloody business writing code in the first place.Java is also great
If you are going to learn to code, learn to code well.

...countering one sweeping statement with another...interesting
Haha, touche
I should have prefaced that with "in my experience".
There's a trade-off between doing one's own garbage collection (and the many hours of debugging and hair-pulling that comes with it) and having something else do it for you. There are several other benefits too (some even to do with performance) so it's not all bad.
If "something else clearing up the rubbish" is your only objection to a VM-based language then I'd say it's not the right objection that should put off a new programmer from learning that language.
Sorry to have misquoted you on the C/C++ thing ... I cut my teeth on C many many years ago and have extremely fond memories of it. I still wouldn't recommend it to a new programmer though but it's just personal opinion backed up by experience (which I'm not suggested you lack either, clearly you don't)
Ian.
Haha, touche

There's a trade-off between doing one's own garbage collection (and the many hours of debugging and hair-pulling that comes with it) and having something else do it for you. There are several other benefits too (some even to do with performance) so it's not all bad.
If "something else clearing up the rubbish" is your only objection to a VM-based language then I'd say it's not the right objection that should put off a new programmer from learning that language.
Sorry to have misquoted you on the C/C++ thing ... I cut my teeth on C many many years ago and have extremely fond memories of it. I still wouldn't recommend it to a new programmer though but it's just personal opinion backed up by experience (which I'm not suggested you lack either, clearly you don't)
Ian.
-
- Posts: 13
- Joined: Wed Jan 31, 2007 9:49 am
That may be true but C(++) has been the "my first programming language" for many, many programmers, so it can be done. The programming languages that came before C, for the most part, "suck balls" or were too specialized for most people to use so people started with C.IanT wrote: Java or C# would probably be fine for 99% of anything you'd ever need to do. C++ (and I've done plenty of it over the years) would be horrendous as a "my first programming language".
I guess it matters on what your goal is. If you look at commercial games, most are created with C++ so if your goal is to eventually get a job coding games then learn C++. If your goal is to create a game to show your friends, make it in C#, java, or even VB(.net) or another Object-oriented programming language. If you learn C++ first, learning C# or Java afterwards should be relatively easy. Here's a good site to start with for OpenGL developement. nehe.gavedev.net
Who is online
Users browsing this forum: No registered users and 17 guests