views:

145

answers:

5

I have been working with PHP and Wordpress sites for a long time, but Im thinking about trying to learn more than just the basics. Im wanting to learn some program languages so I can develop my own applications and startups. What are the best languages to learn and why?

+1  A: 

There are quiet a few programming languages (http://en.wikipedia.org/wiki/Timeline_of_programming_languages).

In my subjective opinion you should use Java or C# (wide spreaded use) or python (nice and short language).

kasten
+4  A: 

It heavily depends on what you are expecting to learn. You could go with Java if you want to learn a very high-level language where most of the memory management is handled by the system itself. The pros of Java are that it can virtually run everywhere.

You could also go with C++ for example to get a bit deeper down the "manage-your-memory-yourself" route. It definitely requires more thinking in certain parts of the development.

Then there is C. It basically is even more hard core than C++ and Java (they build up on C in many aspects). The mayor difference however is that C is a procedural language where the aforementioned are object oriented languages.

If you really want to go that deep then there is the assembly language where you actually get as close as possible to machine language. You manage the memory and pretty much everything else manually.

Then there is the extreme opposite. You could go with one of the many interpreted languages like Perl or Python for example. They are very powerful as well.

All the programming language mentioned above are just a few of them there are many many more. Lots of I don't even know about.

It's just what you want to learn by learning a programming language (this sentence sounds strange lol).

Octavian Damiean
i totally agree
Bigbohne
A: 

Object oriented is kinda the way thugs are movig now a days in the industry, you should start learning and object oriented language like C++ or java. If you are in highschool level and want to compete go with C++ or some other relatively low level object oriented language. The reason for this is that at those competitions, if you advance they don't like the competitors using java since it takes noticeably longer to compile than other low level languages, and they want all of the programs to run at the same speed.

TopGunCpp
+2  A: 

If you used php before I would recommend python, its also a high level dynamic language but a much nicer one.

Plus it is a multipurpose language, commonly used for every type of program (barring some speed/resource critical code).

You could use it for building websites, desktop applications, OS scripting, ect.

Tutorial: Official Tutorial

Book: Think Python: How to Think Like a Computer Scientist

Roman A. Taycher
A: 

I'd vote for ordinary C.

It's fun and easy to get started with, and has no bundled pack of classes to learn (as java / .net).

Very useful and you'll find much similarities with php and you will learn much in coding conventions and such, that will follow you in any path you choose.

regards, //t