Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

General Discussion

Which is best Backend language to learn?

I just have completed my Front-end track and in a confusion that which is the best back-end language to learn with front-end track. Can anyone there suggest me the language that helping you the most with front-end!!

2 Answers

Ari Misha
Ari Misha
19,323 Points

Hiya there! Every Back-end languages and their frameworks have their own pros and cons. And i think choosing one comes down to individual's own preference and coding style. But i'll say this from my own experience , no disrespect to anyone , but this is just my own experience. And Down below ima rank my fave Frameworks:

  • Ruby-on-Rails - Ruby is so flexible, beginner-friendly, dynamic and object - oriented scripting language. If you have the power of ruby, you could do almost anything with it. Not even JavaScript can achieve that. Its that flexible. I know its not super popular but i think its really underrated. Moreover , Rails framework follows CoC(Convention over configuration) and DRY (Dont repeat yourself). Rails does most of the stuff for ya like 70% of Rails is Database code. Setting up and interacting with Databases is such a pain in the ass in other languages but Rails does it in one line of code. Rails is not the fastest but performance wise its the best.

  • Node.js - Relatively new as compared to veterans like Rails, Spring, Django etc. But written in famous JavaScript. Its considered ideal Backend framework to work with your front end. Its the fastest framework out there. Its versatile and interacts well with your front end. But its kinda incomplete without Expressjs and other tools. But its bright future is still to be witnessed. I'd defo recommend Nodejs. Combining with all the tools, its lethal , sexy and powerful.

  • Django - Written in Python, its follows MVC architecture in its own weird Pythonic way. But its hella versatile , easier to learn, and did i meantion its written in python?! Python being the one of the most versatile languages out there, Django has that added advantage of power of Python. Plus if you wanna meet deadlines , Django is defo for you.

There are other Frameworks out there. Im not much familiar with c# but .Net seems like an exciting prospect as well. And its really in demand as well. Then there is Laravel which is written in good ol' PHP. Even though are tons of frameworks out there written in PHP , i think Laravel is the best in business. Actually you can achieve a lot with PHP. Also there is Spring , written in Java - The most mature and enterprise loved language, But Spring can be hard to learn , in my opinion , but its defo a solid framework plus its almost Java so yeah.

Like i said in the beginning, this post is from my own experience. And few people might disagree but i have coded in Rails(and still do , havent regreted learning it even a bit), Django, Laravel and Nodejs, i found Rails is the best out there for a programmer but Nodejs and .NET is rising and upcoming. Do some research on your own about these frameworks, and start with one.

~ Ari

Thank you for your answer it was very helpful to me. I think, I should start with Node.js and Ruby.

Ari Misha
Ari Misha
19,323 Points

susmita vasavi devi konem I'd recomend you to start with Nodejs and keep an open mind for Ruby-on-Rails. Since you're already finished with front-end , it wont take longer to finish with Nodejs. Dont forget to learn Expressjs as well. There are additional tools to help you in projects that you need to be aware of like npm, Gulp, Bower, etc and Databases like SQL and NoSQL especially MongoDB. For advanced tooling, you should try to learn Redis. If you somehow learn even 65% of all of above topics, you're closer to being a pretty good Nodejs developer.

~ Ari

Henrik Christensen
Henrik Christensen
Python Web Development Techdegree Student 38,322 Points

There is no "best" back-end language, they all have their pros and cons :-)

First you should figure out what you want to use it for and what the demand in your area is (in case you want to learn it to get a job).

PHP: is easy to learn and cheap to host + it's very popular (~30% of all websites are built using PHP).

Node.js: this wont take too long to learn in case you already have a good knowledge of javascript - by learning this you won't have to learn a new language.

Start-ups tend to use either Python/django or Ruby/rails, but if you want to work for a major company then you should try to learn C# or Java.

Thank you, I start with Node.js.