To take part in discussions on talkSFU, please apply for membership (SFU email id required).
best programming language to learn??
I would like to know what programming language would be the best to learn for a beginner.
My computer proficiency and learning skills aren't really a factor, I'm quite good with computers and I learn stuff rather fast. Also, I'm familiar with basic HTML, although I don't think that makes a difference.
Another request: Please tell me if it is possible to program games in whatever language you recommend. lol
My computer proficiency and learning skills aren't really a factor, I'm quite good with computers and I learn stuff rather fast. Also, I'm familiar with basic HTML, although I don't think that makes a difference.
Another request: Please tell me if it is possible to program games in whatever language you recommend. lol
Comments
and upgrade to C+ then C++
and never give up
Anyways, I would learn C/C++. Invest a lot of time into the boring details of each. I wouldn't go running around trying to write 3d games or entertainment software, since they tend to be a giant lead forward. I would start by learning the basics, syntax, semantics, how to do basic mathematics.
I would then move onto some higher level mathematics, since this will get you into the mindset of most programming projects.
Learn c and if you want c++, I can acomplish most tasks I can't acomplish in perl, with c and rarely do work in c++
Python is ok, but I think i missed that...
PHP, is super cool and awesome for web stuff
Java... well it sucks... really really really sucks... don't bother with it
C/C++ is the way to go.
PHP and MySQL for webstuff.
Or just have fun and learn Python.
CSS is a Style Language
C++ was my first language, but in hindsight, it probably isn't the easiest to learn. I'm kind of tempted to recommend C#. It's probably easier to learn, much more friendly to program in, tons of libraries and stuff built right in so that you don't have to fiddle with 3rd party libraries or random container classes. Plus, it's excellent for form applications. You can write a nice user interface in minutes, whereas with C++, you probably don't even want to go there. It gets pretty ugly.
For games though, C++. I currently recommend C++ and OpenGL w/ glfw for graphics/user input. Still looking for a nice audio library though. Perhaps Qt for user interface.
But again, probably shouldn't jump right into games. But if that's really your thing, GameDev.net is probably your friend. They teach programming through game development.
You can also get the jump on us all by learning D. I haven't played with it much, but it looks very pretty. Takes the best features from C/C++/Java. Of course, there's much less support for that as it's a relatively new language.
I still dislike Python for it's lack of braces, and ambiguity towards semi-colins. Just doesn't feel like a true programming language. Seems only good for short programs. But it is probably one of the easier languages to pick up.
PHP is the *only* language I'd consider for web programming. But... again, this is quite different from C++/Java.
Java... I don't know. Java has garbage collection, which is nice when you're lazy, and it's also cross-platform. It's probably also easier to deal with multiple files when you're writing a larger program because you don't have to fight with headers/cpps of everything. So, perhaps a little more friendly than C++ but I'm not sure when I'd ever use it for a real application.
So, let's sum up here.
PHP for server-side web programming.
JavaScript for client-side web programming.
C++ for games and where speed is important.
C for cell phones and portable devices.
Java for nothing.
Python for nothing.
Matlab for prototyping or lengthy computations.
C# for form-based applications. Basically, little user-friendly tools.
D if you're feeling frisky and cutting-edge.
ASM if you're insane.
Brainfuck if... you want to fuck your brain.
I think that about sums it up.... let me know if I missed any languages. I've dealt with most of them.. well... not Pearl/Pascal/Lisp. I hear good things about Pearl but never looked into it. Lisp/Pascal I heard was nasty. There's also Ada, which I've never used. I don't know what benefits it might have, but it's syntax looks nasty. And there's also ASP.net which might substitute PHP, but PHP has served me just fine and ASP is Microsoft, so it automatically loses points for that (although I admit they did a fine job of C#).
Also, Python is a good scripting language. Google uses it, so it can't be that bad.
Of course, if you coded your C++ program properly, you could quite easily recompile it for linux/mac. Almost all my C++ programs are cross platform. Just have to be careful to use cross-platform libraries.
What does Google use python for?
It's true that, by using cross platform libs, you can write portable C++ applications. However, those libs still have to be rewritten by someone for each platform. With Java, the interpreter is the only thing that has to be platform-dependent.