Some links to material I’ve been using to refresh / learn some coding skills. It’s been ages since I wrote any code from scratch, so I needed something that would not be too high-level, but I also wanted it to get into practical applications really quickly.
All the material below is free, and combines video, lecture notes and templates.
Excellent free access to courses from Stanford via iTunesU (for video) and course websites (for lecture notes and examples)
106A Programming methodology
From nothing to coding in Java, explaining principles of programming and logic along the way.
I’ve been using the Spring 2011 version of the handouts etc.
106B Programming Abstractions
C++ course, that assumes no prior C++ knowledge, but does assume you know a bit about programming.
Developing Apps for iOS
Definitely assumes you know another language, but then takes you through the iOS dev environment, Interface design and MVC model. I started with this course, then moved back to the other 2 for a bit to brush up on some of the groundwork. I did manage to follow the instructions and complete the first couple of assignments before doing that, so it definitely gives enough guidance to get you started.
- Beginning iOS Development: Setting Up The Development Environment
- Beginning iOS Development: Building Fortune Crunch
- Beginning iOS Development: Using Interface Builder
- Beginning iOS Development: Xcode Fundamentals
- Beginning iOS Development: Windows, Views, and View Controllers
- Beginning iOS Development: Debugging Fundamentals
- Beginning iOS Development: Data Persistence
They also have tutorials on loads of other aspects of programming and languages (I’ve been having a look at some Ruby on Rails stuff too)
If it’s specifically iOS development that you’re interested in, then you need to sign up to the iOS development programme. The Developing Apps for iOS material shows you how to do this. You don’t need to pay unless you actually want to run your app on a device. Until you get to that point, a free account will let you run an emulator that comes with the suite of iOS development tools available from the apple developer website.