[Editor’s Note: I recently learned of two more free resources to learn programming (Python and Java) and have updated the list below with links to the tutorials.]
There are several kinds of web developers:
- Front-end – people who develop the parts of a website with which the user interacts
- Back-end – people who develop the parts running a site behind the scenes
- Full-stack – people who can develop on both the front and back ends of a website
I’ve been building websites for around 18 years now, the last 10 exclusively using WordPress. Unfortunately, web development is only a part of my overall job so I’m always a little envious of friends who develop full-time and can code circles around me. I mentally think of myself as a “half-stack” developer (that’s not a real thing, I made it up) because I am mostly a front-end developer who also manipulates the back-end as necessary, but wish I had deeper knowledge regarding the back-end of website development and how the two parts interact.
To that end, I recently did some research to help me figure out what skills I still need and how to get them. In particular, I found a fabulous article by Daniel Borowski called A Guide to Becoming a Full-Stack Developer in 2017. In this article, he lays out a thorough list of the skills needed (programming languages and a lot of other necessary skills) and includes links for learning them.
I’d love to do a comprehensive full-stack bootcamp, but simply don’t have weeks that I can spend doing that. For me, it’s better to tackle one thing at a time and do it at my own pace. I figure there might be some other “half-stack” developers out there who are in the same boat. While there are also general links in that article to sites like Lynda.com regarding programming language learning, I wanted to make a list of languages that are generally recommended and see if I could find a specific free resource online for each.
Here’s the list of languages along with links to learning sites with introductory courses for each:
- HTML: Learn HTML and CSS:part I by Codecademy
- CSS: Learn HTML and CSS:part I by Codecademy
- Python: Python by Codecademy and Python Tutorial for Beginners: Learn Programming in 7 Days by Guru99
- MEAN: Become a MEAN Stack Developer by Code School
- Ruby: Ruby by Codecademy
- Ruby on Rails: Learn Ruby on Rails by Codecademy
- SQL: Learn SQL by Codecademy
- Java: Learn Java by Codecademy and Java Tutorial for Beginners:Learn in 7 Days by Guru99
- C#: Try C# by Code School
- PHP: PHP by Codecademy
- SASS: Learn SASS by Codecademy
- jQuery: jQuery by Codecademy
Whew, what a list! If you are a full-stack developer by trade and can think of any languages that I missed here, please tweet to me @cindy_leonard and I’ll update this post!