Hacker News new | ask | show | jobs
by maxklein 5657 days ago
Go for the tablet using ONLY native Objective C. Don't use PhoneGap.

It will be a good learning experience, you will be able to instantly test the code, and there are no two ways about it. Few hacks or tricky stuff. It's a pretty straightforward platform.

Also, you can easily earn money with this, and the money is purely passive. No server administration, etc. You can finish it, put it in the store and run off for the next year.

Also, you learn about memory management and device constraints.

If you want something even more interesting, consider a use-case like using a tablet to control some hardware (like a lightbulb).

3 comments

I know some pretty capable devs who find Obj C challenging, certainly in comparison with JavaScript. There's a reason good iPhone/iPad devs command a high hourly rate.

Also, your hard earned Obj C knowledge will be pretty much useless outside Apple platforms.

There are definitely a lot of apps where you have no choice but Obj C, but reading OPs experience I think he'd enjoy focusing on designing the app rather than dealing with implementation details.

And whatever you do, test it on an iPhone 3G or iPod Touch 1G. If it performs reasonably on that, it will be blazing fast on an iPhone 3GS/4 or iPod Touch 3G/4G.
Also, you learn about memory management and device constraints.

Didn't know that a tablet platform will have device constrain with so much processing power at hand. Will someone enlighten me about the amount of low level stuff (memory management and thinking about rams and disk space and the likes) goes into writing software for iPad or even an android and iPhone.

> Didn't know that a tablet platform will have device constrain with so much processing power at hand.

These devices (Android/iOS devices) are fairly limited in power when compared to your average laptop or desktop.

For the iPhone and iPad, there's not much low-level stuff you'll normally worry about. Memory management is pretty easy to understand. In most cases, if you follow a few rules of thumb, you'll be okay.

There is a 10MB limit on 3G app store distribution; anything over that will be wifi only.

Memory management is handled via a set of rules that are basically if you create it you are responsible to release it. If you borrow it you must not release it. Similar to malloc/free and new/delete in c/c++. It is a level of abstraction higher though. You are dealing with retain counts and autorelease pools. A memory leak in an application can crash a phone with limited memory fairly quickly.