tangentially Adam
Ruby on Rails Tutorial, Chapters 9, 10, 11

I have completed chapters 9, 10, and 11 of the Ruby on Rails Tutorial.

These final three chapters added the “real meat” of the sample application: editing users, adding microposts, having users follow other users, and showing a signed in user a feed of all the microposts of the users he or she follows.

My sample Rails app is available at: https://adamlum-sampleapp.herokuapp.com/.

I’m looking forward to increasing my comfort level with Rails.

My Foray into the App Store

With my recent acquisition of Objective-C and iOS5 knowledge I wanted to get something into the App Store as quickly as possible, accomplished yesterday as Apple approved my app Reciprocally.

Reciprocally is a simple app that easily allows you to check your reciprocal links on other websites to make sure they’re still pointing back to you. That’s it.

I also still have the app I developed for a client of mine which is still yet to be submitted.

I’m itching to make some more sophisticated iOS apps and get them into the App Store.

http://itunes.apple.com/us/app/reciprocally/id499956787?ls=1&mt=8

Ruby on Rails Tutorial, Chapter 7 and 8

I just completed chapter 7 and 8 of the Ruby on Rails Tutorial.  These two chapters had me implement the sign up and sign in/out functionality to my sample application (which can be found at https://adamlum-sampleapp.herokuapp.com/).

The eighth chapter also served as a primer for Cucumber, a behavior-driven development framework.

Brushing Up My Ruby on Rails

Back in the beginning of 2009 I took a Ruby on Rails course at Sierra College. I received an A, and even had a couple Rails project contracting gigs shortly after but that was the extent of my experience. My Rails ability has become rather rusty to say the least, plus quite a bit has changed since the Rails version I used.

I decided to start Michael Hartl’s online Ruby on Rails Tutorial Second Edition book, targeting Rails 3.2.

Currently the second edition is only completed up through chapter five, which I’ve finished up in the last day or so (what better time to stop and write a blog post about it).

I feel like I’ve picked up quite a bit of knowledge in a short amount of time. I’ve setup RVM and the latest versions of Ruby and Rails, during the lessons I’m often reminded to update the Git repositories I’ve created (also pseudo-new to me), I’ve been introduced to publishing to a production environment with Heroku, and also introduced to Test Driven Development with RSpec, Guard, and Spork.  All very cool stuff.

I’m eagerly awaiting the upcoming chapters of the book, though in the meantime I’ll still be experimenting with Rails.

EDIT: Shortly after I made this post, chapter six was released of the tutorial.  I finished it up shortly after.

CoreData and Categories

A slight delay in starting and finishing up the sixth assignment due to the holidays and finishing up the yet-to-be-announced app I mentioned in a previous post (done and submitted to the client) but it’s completed and available at: http://adamlum.com/iOS/CS193P/Assignment6/.

As I was just concerned about becoming familiar with the CoreData framework and Categories, I didn’t do the part of the assignment that asked for code to handle multiple UIManagedDocuments (each Virtual Vacation having it’s own).

I believe this was the last assignment, so all that’s left to do is to watch the rest of the lectures.

MapKit, CoreLocation, Blocks, MultiThreading

My code for Assignment #5 is uploaded to my website at: http://adamlum.com/iOS/CS193P/Assignment5/. This assignment was an an exercise to extend the Flickr application by including a MapView, using CoreLocation to determine where to center the map, and making use of blocks and multithreading to download images from Flickr asynchronously.

I didn’t make both an iPhone and iPad version as outlined in the assignment - at this point I’m more trying to learn the fundamentals of the language and frameworks involved in making an iOS application.

Onto the next.

Slight Delay in Class Progression

My CS193P Assignment 4 has been available on my website for quite some time now (http://adamlum.com/iOS/CS193P/Assignment4/) and I’m just about done with the fifth assignment but there’s been some slow down as I have been working on an actual iOS application for a client; no details I can post about yet though.

WeekendHacker

I discovered a website off Hacker News a couple weeks ago, WeekendHacker, where developers and designers can post small development or design projects in exchange for development or design services (that seems to be the initial idea, but many offer half of the project, money, etc. too).

Whenever a project is added, they tweet it out via their twitter account (@weekendhackers) so I’ll be paying attention to that for any projects that may be interesting and help me possibly sharpen some skills.

Drawing, Segues, Gestures, and Universal iPhone/iPad Applications

Assignment #3 and the corresponding lectures for the CS193P class was very interesting. I was introduced to a bunch of the CoreGraphics framework for drawing on screen, the various Gesture Recognizers, seguing between screen on the storyboard.

One thing I really like about creating universal applications in the same project for both the iPhone and iPad is how custom UIViews and UIViewControllers can be reused on both devices. Professor Hegarty definitely stresses this concept.

I’ve uploaded my assignment #3 files to: http://adamlum.com/iOS/CS193P/Assignment3/.

One note, I implemented everything in the assignment except changing the scale of the graph - I implemented the pinch gesture recognizer to update the scale and had it save off the new scale for running the application again, just not the changing of the screen.  I didn’t come up with a way to properly map my Y point from the Cartesian coordinate to the screen coordinate. I plan to revisit this project and fix that up; I’m just excited to get to the next assignment. 

iOS Progress

I’ve gone through the first four lectures and finished up the first two homework assignments (a Reverse Polish Notation calculator and then extending it by making it programmable) of the Stanford CS193P iTunesU class.

I’ve uploaded my assignment’s project files to: http://adamlum.com/iOS/CS193P/ and will definitely put the subsequent files there too.