Tuesday, July 24, 2012

Small business

Today I am in Darling Harbour for a conference. I usually arrive early to such occasions, find a place that sells hopefully good coffee, sit somewhere and enjoy my morning kick.

The idea is to avoid that dreadful filtered coffee served in luke warm containers outside the conference room. I have to have a proper cup of hot cappuccino to begin my day.

The shopping mall nearby is empty, there are cleaners, and few early starters but no morning rush yet. Inside the mall I had two choices, Gloria Jeans on the corner and that food stand in the middle with a sign “Bayside Gelato”.

I chose the gelato place and ordered my coffee to a man who looked like the owner, clearly a second generation Italian from Calabrese. A short, charming guy with pitch dark thick hair and larger than life big black eyes. We had a short friendly chat and I mentioned why I like supporting small businesses.

Global financial crisis and the effect of globalization had tough effect on everyone. If there is one way you wonder you may play a positive role in your community, consider supporting small businesses. Just avoid chain brands and buy your coffee or lunch from that guy around the corner.

Friday, July 6, 2012

How to become an IOS Programmer

If you are a proficient C/C++ programmer this is what it takes:

- Enrol to one or both of Apple Developer programs, each costs ~$100/year. There are two programs; Mac OS/X and/or IOS.

- Download/install XCode (yes it is nothing but an IDE.)

- Get yourself Stephen G. Kochan's "Programming in Objective-C 2.x" book. 

- Study/experiment with simple command line examples using the book (part time 1-2 weeks). Just focus on learning the Objective-C language not IOS or Cocoa (Mac OS/X stuff.)

- Get yourself an iPhone, iPod Touch or iPad for development. There is a simulator that comes with XCode but sooner or later you would need to run your code on a real device. For instance iCloud stuff cannot be tested with a simulator.

- If you want to learn say IOS don't waste your money buying more books (I did and they are hopeless.) Simply download and follow Stanford University classes using UTunes (held by Paul Hegarty). Follow tutorials while coding. The great things about them, a) the material is organised efficiently (you would progress fast), b) you can pause the video while catching up. They'll take about 2-3 weeks part-time (1-3 hours a night). You can skip stuff you don't immediately need. eg. if you are writing a document based app don't waste your time learning graphics programming or accelerometer API. The most important bit: Learn MVC architecture and learn it thoroughly.

- Enrol to stackoverflow: http://stackoverflow.com/

- Start your own project. When stuck Google your question. Start your question with "IOS...". Most definitely the answer will be in the first 3 of search results. 99% of the time the answer would be coming from stackoverflow. 99% of the time the answer would be correct.

- From time to time you would need to read Apple documentation to understand concepts more thoroughly. eg. If you want to learn iCloud there is a pdf, if you want to learn Undo Architecture there is a pdf, etc. Every developer documentation has high quality, to-the-point and concise content with simple code snippets. Download them, read them during your breaks or while commuting. 

-Don't waste your time asking questions on the Apple Developer forums. They are ghost towns. 

Finally writing for Apple eco-system is great fun. Objective-C is a great language, Apple architecture is amazing, Apple documentation is superb, and stackoverflow is awesome. From programming point of view Apple devices are easier to handle since the hardware and form-factor is strictly controlled by Apple. You don't need to wrestle with 100's of devices to adopt your app. 

Questions? Please ask.