So You Want to Go to Code School

A Guide to Choosing a Code School and Succeeding When You Get There

Technologies to Learn in 2016

Tutorialzine published this awesome post at the end of last year, describing all the newest trends in web development. It is a very comprehensive list, but for someone starting out, the prospect of learning one or more of Python 3, Go, PHP 7, ES6, Node.js, Swift, and TypeScript, can be a little daunting! If you’re looking to break into web development, learn one technology from each of the three parts of the stack: the database layer, the backend layer, and the presentation layer. There will always be more technologies to learn, but when you are starting out it is more important to focus your energies.

Learn a Database

You can’t go wrong by learning a solid foundation in MySQL. It continues to be the most popular database, and it has extensive documentation and a ton of community support. If you feel comfortable writing SQL queries that join relational data tables, explore a non-relational database like MongoDB. They solve very different problems, and take completely different approaches to the data storage and retrieval.

Your database skills will never go to waste, so don’t be afraid to invest some time in that foundation.

Learn a Back-End Framework

If you’re just learning to program, you don’t need to worry about learning a framework in every language. The principles remain the same in each one (generally): a web server listens for incoming requests, a router directs the request to the appropriate business logic, and a controller applies the business logic and generates a response.

You don’t need to invest in learning Flask (Python), Rails (Ruby), and Express (JavaScript). Stick with one programming language and learn the mechanics of how a web server works.

Learn a Front-End Framework

Learning JavaScript is now a must for any full-stack web developer, but with new frameworks being released almost weekly, which one do you choose? Just 12 months ago, Angular was the first choice for many developers, but with the release of Angular2, and the requisite investment in Typescript (as of this writing, there are few docs for writing Angular2 in plain JavaScript), the barrier to entry is a little steep. Many developers have embraced React instead.

JavaScript is now a fundamental piece of web applications, and getting your mind around one of the many new front-end frameworks will give you a lot of employment opportunities.

A Brief Note on Editors and Tools

A few new code editors were released this year (see Atom and Visual Studio Code), but the learning curve you must traverse for each new tool likely won’t pay off in a substantial increase in productivity later on. Stick with one, and learn it really well.

Git is not an optional tool these days, and like SQL, you will never go wrong by learning more about Git. Check out these posts for a few of the things I have learned about Git, and that I still use on a near-daily basis.