Welcome to Little Computers

 

NSLog(@"Hello, world!");

This is the Little Computers class blog. Please note the Syllabus, Readings, Assignments, Tutorials, and the Resources links at the left. For this class you should purchase at least one of the C books listed in the resources link and you should get Aaron Hillegass’s Cocoa Programming book. Though it’s possible to get through the class without getting one of the recommended books, it will definitely be much, much more difficult. A lot of excellent information is distilled in these books and it will help reinforce the many hard subjects covered in class.

This class is about the future of little computing using the iPhone as a starting point. We will cover to some degree how to develop iPhone apps destined for the Apple App Store, but the main thrust of the class is to explore the many latent possibilities of this powerful platform, platforms like it, and those to come (Android, Palm Pre, etc.).

I will not lie. This will probably be one of the hardest classes you will take at ITP. The class requires either intermediate to advanced programming skills or a large reservoir of boneheadedness. On top of some fairly tough subjects, tough assignments, there will be readings every week which you should be prepared to discuss thoroughly in the following class.

This class is a collaboration. Because the topic is so broad (the iPhone is full blown UNIX machine with more computing power  than a $20, 000 workstation 20 years ago), there will be many, many things I myself won’t know how to do. I can be your guide as you explore new computing possibilities, but often you will have forge out on your own. And you will be expected to contribute back any discoveries to a shared public class repository on GitHub (more on this later).

Programming is a slow, painful, confusing, and frustrating activity. Apple has done it’s best to create some great tools to make it more enjoyable than a lot of what’s out there, but contrary to popular belief, Apple cannot work magic. Programming is hard. Very hard. Your average iPhone program will probably be 20x times longer than anything you’ve ever written in Processing. But there’s also the likely chance that it’ll be far, far more rewarding. This post is both an encouragement and a discouragement.  If you’re ready to learn something new, and loose some sleep over it you will have a lot of fun.

The iPhone is a genuine road sign of an entirely new way of looking at computing-  very small computing that’s accessible to mortals. Good luck, I look forward to the semester.