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! While you're at it, check out some resources Treehouse students have shared here.

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

Wich programming language for web apps ?

Wich programming language should i learn to be able to create web apps.

Should i learn:

  • python
  • php
  • node js or react js
  • c#

?

1 Answer

Stuart Wright
Stuart Wright
41,118 Points

You will need to learn HTML, CSS and JavaScript for the front end of your web app. You might also choose a front end framework or library such as React, but I would recommend learning plain JavaScript before diving into those.

For back end languages you are spoiled for choice - everything you've listed (except React which is a front end library) can be used on the back end, and there are others (Java and Ruby spring to mind of the ones offered on Treehouse).

The truth is, becoming a good programmer and understanding how all of the parts fit together to make a working web application is more difficult than picking up the syntax of any particular language. Learning programming is not the same skill as learning C# or learning JavaScript. So I wouldn't worry too much about which backend language you choose. Whichever one you choose to learn first will help you to learn programming and teach you lessons that apply to other languages, even though there are of course differences. I like Python personally, but any of the ones you've listed are valid choices.

Depending on the type of web app, there's a good chance you'll want to learn a little bit of SQL too, if your application will rely on a database.

This might all sound a bit overwhelming, but don't worry - you don't need to be an expert in every technology. You can pick things up as you go along and learn the parts you need to know as and when you need them.

My recommendation would be to learn the basics of HTML, CSS and JavaScript in that order, and build some small sites that don't require any server side processing. And then only once you're reasonably comfortable with these three technologies start worrying about server side programming.

thanks, i am learning html and css and javascript on teamtreehouse.

Can i go with c# for back end, and also can i create desktop apps and mobile apps with c#.

Kurt L
Kurt L
22,856 Points

Great answer. I've been learning both Rails and Django. Nowadays, because Python is becoming popular due to data science and other fields, it seems Django is getting a boost. How is Rails doing in the London area?