Special thanks to Jared Silver for building this fantastic list to help students get into coding!
Resources to Start Learning
“I want to learn how to build a website.”
“I want to make a simple informational site about me or my business.”
- “I want to build a complex web application with features like user accounts.”
There exist many different options for building a web application, and each of them has different benefits and drawbacks.
- PHP is good for beginners, but not a lot of new companies are using it today. It also has a lot of security flaws. But, if you want to learn it, the Codecademy track could be a good starting point.
- Ruby (specifically with the Ruby on Rails framework) is a very popular language that does a lot of the hard work for you. Many new startups begin with Ruby on Rails because of how quick it is to get working. Learn Ruby the Hard Way is personally one of my favorite resources to recommend for people getting started learning how to code. Aside from teaching you to code, it also teaches you how to teach yourself to code (very, very important). Code School’s Ruby track is also pretty solid.
- Python (specifically with the Flask or Django framework) is another very popular language, commonly used for applications that require any sort of complex mathematical computation. Learn Python the Hard Way is written by the same person who wrote Learn Ruby the Hard Way.
- *Editor's note* Here's a link to a "Practical Python" powerpoint
“I want to learn how to build a mobile application.”
“I primarily care about iOS applications”
Mobile App development, specifically iOS is very different compared to other forms of programming. But thankfully, Apple has spend a lot of time making the development environment easy and intuitive for new developers.
There are only two languages iOS apps are written in: Swift and Objective-C. Objective C is the more traditional language and has been around for much longer than Swift. But on the downside, Objective-C is a comparably verbose language and can be highly frustrating when learning. We would recommend learning Swift, since Apple is solely focused on making it a better language to use.
One of the best iOS courses out there is on Udemy by an instructor named Rob Percival. He teaches by teaching you how to build some of the most popular apps out there. Some other resources you might like to explore are Apple’s own Swift resources.
“I primarily care about Android applications.”
Android applications are written in Java, which is a very powerful language developed by Oracle that powers a large number of technologies. Udemy has another great course by Rob Percival that teaches Android App development.
“I’d like to do both simultaneously but don’t want to learn either specifically.”
With the advent of multiple mobile platforms (iOS, Android, Windows), developing an app for each platform meant more time and money. In order to tackle this, some companies built cross platform frameworks that can deploy on all platform from a single codebase with a few tweaks here and there. Some popular frameworks for the same are React Native, NativeScript, Meteor etc.
“I want to learn how to build hardware prototypes.”
“I want to learn how to do data analysis or financial modeling.”
Most data analysis and financial modeling is done in either R or Python. We generally recommend learning Python because in addition to its use in data analysis and financial modeling, it can also be used in a variety of other areas like building web applications. A good resource for learning either R or Python, specifically with a focus on data analysis or financial modeling, is DataCamp (note: this is Jared’s referral link to DataCamp, and you will receive two free days of premium for joining through it).
“I want to learn how to build applications that use the concepts of Artificial Intelligence (Netflix recommendations, self driving cars, facebook ads)”
The entire field of Artificial Intelligence is based on statistical modelling. Explore Udacity to check this out further.
I want to know where to find cool startups in Boston