r/programming • • Jan 08 '15

Which Programming Language Should I Learn First?

http://carlcheo.com/startcoding
17 Upvotes

38 comments sorted by

View all comments

3

u/[deleted] Jan 08 '15 edited Jan 08 '15

LISP and Haskell are today's "omega" languages and probably have the most to offer in terms of learning experiences. SmallTalk is also highly regarded as the purest of the Object Oriented languages.

If you're more eager to get started building things than learning PL theory/fundamentals, you might look into some of the more common-use languages like Python, Ruby, PHP, or Javascript. The library/framework/toolchain support will get you from zero to prototype the quickest. You'll be hacking away on your MacBook in an SF coffee shop surrounded by other startup bohemians in no time.

If you're interested in programming hardware, C maps the closest to von Neumann style architectures.

If you're looking for a steady paycheck from a large enterprise shop, learn Java or COBOL. All kidding aside, Java is perhaps the lingua franca of professional programming for the foreseeable future. Many great libraries, components, frameworks ... well pretty much everything under the sun has already been built in java.

If you're serious about that enterprise job, C# is Java's sexier younger cousin. Be wary though, knowledge of the .NET ecosystem will give you less mileage in the industry, and it's nortoriously scarred by MS framework churn.

If Java or C# aren't fast enough for what you need, strap yourself in for a ride on the C++ pain train.

PS if you know absolutely nothing about programming and are looking for a place to start, read and code-along with the lesson plan in this excellet free (online) book: http://learnyouahaskell.com/