Always wanted to build a web or mobile application? The team at Learnemy has put together 25 resources where you can learn Python, Ruby on Rails, HTML and CSS, and Objective-C without paying a single cent.
These resources will not make you into a super programmer, but enough for you to create a working application.
UPDATE: Want to get the updated list of sites, plus 15 more sites? Get the ebook, “40 sites to learn programming for free“, when you sign up for a free account on Learnemy today! Visit https://www.learnemy.com now!
What should I learn?
HTML gives your web page its structure, while CSS makes it pretty. They might seem pretty superficial, but you can create a working web prototype just by knowing these or even an iPhone app So if you’re aiming to produce a prototype within the shortest time frame possible, learn these first.
Python, Ruby and Objective-C are programming languages used to make an application work. The first two languages are the most popular ones for web application today, so just pick either and you’ll do fine.
Note: Do NOT start a discussion among programmers on which is a better language. It’s like discussing on which religion is better, which often results in awkward situations.
Objective-C is the main programming language used for iPhone, iPod Touch and iPad applications.
HTML and CSS
1. W3schools: Their tutorials are easy to follow and you get to play around with the codes.
Knowing CSS and HTML is like knowing how to use pen and paper; it doesn’t make you an artist just because you know how to use the tools. To learn more about web design, check out these sites for information and inspirations.
- Smashing magazine
- Startup digest (Design): This is a newsletter
- Design festival
- Net tuts+
- CSS line
- Pattern tap
Before that: You’ll need a text editor and have Python installed.
Installation guide: http://www.python.org/download/
1. Dive into Python: This eBook explains terms (string, variable, class etc.) and basics of Python in a conversational tone, which makes it very easy to read.
2. Google Python Class: Conducted by a Googler who also works at Stanford University, this class expects you to have little knowledge about programming (e.g. know what a variable is). It also comes with exercises to complete.
3. How to Think Like a Computer Scientist – Learning with Python: This eBook is provides in-depth explanation of things. Unfortunately, it’s written in a textbook format, which can be tiring to read.
4. Django Book: Django is a popular python framework. In layman terms, a framework is a way to manipulate a programming language so that it is easier to use. This eBook covers Django 1.0.
5. Learn Python The Hard Way: This well written book helps you learn by doing exercises, instead of rote learning.
Ruby on Rails (RoR)
Note: Ruby is a programming language. Rails is a framework. Since Ruby on Rails is more commonly used than Ruby, the resources here are for RoR.
1. A Quick (and Hopefully Painless) Ride Through Ruby (with Cartoon Foxes): A cute guide on terminology.
2. Ruby On Rails 3 Beginner To Builder 2011 (Part 1 – 3) (Part 4) (Part 5) (Part 6) (Part 7) (Part 8): Best resource ever! The videos explain the terms (albeit not as cute as #1) and teach you how to build the entire application, from the front-end to the back-end (all the way to the database). This gives you a comprehensive, yet not overwhelming, view of using RoR.
3. Rails for Zombies: These videos use zombies to teach you about coding, which make it fun to watch. But the content is too brief and not enough for you to create an application. Comes with a google group.
4. Ruby on Rails Tutorial: Learn Rails by Example: This eBook teaches you how to code by guiding you through the process of building twitter (yes, that twitter!).
5. The Intro to Rails Screencast I Wish I Had: Introduces testing, an important part of building an application.
6. Rails Guides: Guides on everything Rails.
1. iPad and iPhone Application Development: The most raved about source to learn mobile app development on the iOS 5. This course requires you to be somewhat familiar with programming with C. You can take the two pre-requisite courses (Programming Methodology and Programming Abstractions) on iTunes U too. Download the supporting documents for this course here.
2. Developing Apps for iOS: This is the same course as #1 but it’s on iOS 4 instead of 5.
3. Development Videos by Apple: Learn tips and latest developments for iOS and Mac OS X apps.
4. The Objective-C Programming Language by iOS Developer Library: These documents may seem a little overwhelming and dry, but they give a good understanding to Objective-C.
5. iOS iPhone and iPad Development eBooks: Big selection of books on Objective-C, iOS 4, iOS 5 and ipad. But there are ads on the pages, which can be quite distracting.
Oh man I’ve got an error!
In your early attempts, you’ll definitely run into problems. Google the error showing on your screen to see if anyone had written solutions, tutorials or answered it on stackoverflow.
If you are still stuck, that’s probably because you don’t know the right keywords on Google to retrieve the relevant data. So you can ask for solutions on stackoverflow or at these Google groups
Python: Python User Group, Singapore
Objective-C or iOS: iOS Dev Scout (iDS) – Singapore
PS: Like this list of resources? Share it with your friends or like Learnemy on Facebook to keep yourself in the loop!