Happy Holidays Everyone
I haven't made a blog post in a while, so I thought I would come back and give a quick update on what's been going on.
I did finally get a MacBook pro. I ordered it the day it came out and it was shipped to me and arrived in about 10 days. When it did finally arrive, I have to admit, it was the best computer related purchase I'd ever made! I am now a mac fanboy. It does everything I need it to do, and everything just makes so much sense. It was far more expensive than any laptop should be today, but I guess you pay a premium to have a premium machine. I run parallels on it and use it for Drupal, iPhone (I'll go into that later), and Android development. I kick in the horsepower when I do my photography stuff and some video editing stuff. I'm amazed how useful the system is right out of the box. Everything I've installed on it so far is for personal use. Eclipse, MAMP, Vuze (for downloading software), twhirl for twitter, and Adium for chat. Of course the software development utilities for iPhone include Xcode and Interface Builder. I just hope this laptop lasts longer than 3 years. Though, I'll probably want the newest version of the Macbook Pro once it comes out. I have to be strong and resist it! I'll hold on to this for at least 5 years before I get another one. But for now, I am a apple guy through and through.
Now as for iPhone stuff, I bought a couple of books that came out at about the same time. One book for iPhone development, and another book for Android development.
Before I got the MacBook Pro, I focused my attention on the Android platform simply because I knew Java, and I did not have a Mac system to build iPhone apps. Once I got my Mac, I still did some Android development, but it wasn't going so well. Basically what happened was the book I was using for Android reference quickly became out of date. There had been so much change in the API and the SDK of Android since the time of the books writing that it because obsolete by the time it got to me. So I went on to amazon and ordered the books you see above. Once book was for iPhone, and another book for Android. I made sure both books were as new as possible so that by the time I started reading them, there would not be any confusion about why the code from the book doesn't work.
In the end, I decided to focus on iPhone development. Why? Very simple. There are no Android jobs in Canada. Looking on Craigslist proves that there are a ton of iPhone jobs out there in the GTA and even south of the border. Android jobs are very few and far between. If I were to move to California, I could probably apply for an Android job at Motorola, but I have no plans on moving to the US right now.
But I have to admit, I do like iPhone development. The thing I did not like was that I had to learn Objective-C. The language is said to be easy to learn, but I haven't been able to wrap my head around it and I've been working with it for over a month now. I have C experience, and I have Java experience.... I just haven't been able to make the connection. I think it's because the Object Oriented syntax is so different from Java, and I'm expecting it to be the same. The C stuff is easy to understand, but then there are a few elements that were added to make it just a bit harder to grasp than C was. On top of all of that, I have to worry about memory management! I thought my days of allocating memory were over! Yarg! I did find a book that will help me get accustomed to Objective-C and how it interacts with Cocoa ( http://is.gd/dnTy ). I've used it to create regular Mac apps. The best part about this book is that it actually starts with knowing the reader has a background in C and Java. The Object Oriented stuff is translated to Java so Java people can understand, and C stuff is compared to the Objective-C syntax so you can see what is new and different. Here is an example of a Mac app I built using this book
Now you might be wondering why I would be focusing so much of my attention on iPhone development with respect to finding work. You thought I already had a job, right? Well I sort of do, but I definitely don't! The company I worked at basically ran out of money and can't pay for work that needs to be done. So I could keep working there, but if it doesn't result in a pay cheque, I'd rather focus my attention on doing something that will result in money. So I've been in job search mode for a couple of weeks now, and have found some disturbing facts about iPhone jobs. They are all contract work! No one wants to bring on an iPhone developer full time, and pay them a decent salary. I'm sick of working on contract. I hate it so much. I still want to learn iPhone development though, so I'll finish up with the book and then hopefully something will open up for me. The great thing about my mac is that it is so easy to take screen shots. So I've decided to take screen shots and document my learning process.
I did attend those iPhone tech talks when they came to Toronto and they inspired me to get more involved with the iPhone/Mac OS community. There is so much out there that I don't know and I should know. Those guys and girls knew their stuff and inspired me to know my stuff. This smart phone stuff isn't going away and I think I made the right career decision to go with Android and iPhone as my preferred platforms of development.
My next blog post will probably be about my car and/or job hunting :)
P.S. I finally got my Master of Science Diploma. It hangs on my wall.