
Get good at iPhone app development - danw
http://tumblelog.marco.org/46698363/get-good-at-iphone-app-development
======
aschobel
I wish there were some Android devices in the wild.

Google Android was so much easier to write to than the iPhone.

I love the type safety Java gives you compared to Obj-C. Stepping through gdb
trying to figure out why something threw an NSException is no fun, especially
if the stack keeps getting busted.

And IntelliJ is light years better than XCode, if feel clunky moving around in
Xcode.

Unfortunately the users are on iPhone, so no choice. Tho the controls and
animations are gorgeous on the iPhone. [UIView beginAnimations:nil
context:NULL]; is cool as heck.

~~~
ardit33
I have to say that Java is much more easy to develop for than Object C.

But, android api is really not elegant at all. They did a really bad job in
keeping a tight api, which is powerful at the same time. They just kept adding
stuff to it. (the 0.9 version is improved).

While the iPhone Api is more elegant, and the frameworks are well designed.
Also the visuals of iPhone are way superior.

What sucks about iPhone is the language, Object C. It is really much harder
than the Java implementation. Plus it is missing some functionality, mostly on
purpose, while android lets you access a lot more on the phone, camera, adress
book, etc...

------
greyman
This is a topic I am thinking about in the recent days. A lot have been
written about the platform being closed, approvals to the App Store, about
being at mercy of the Apple overlords, etc., etc.

But anyway...it seems to me that iPhone app development is starting to be a
golden mine for some time...the possibilities are much broader comparing to
the desktop or even web 2.0 app market. Many little apps, which didn't make
sense on desktop can become a success on the mobile phone. It's not a bad idea
to try the stuff and upload something, what do you guys thinks?

~~~
tstegart
I really can't see much of a downside to at least trying your hand at an app.
We know the money is there, even for simple apps, so I say go for it. then
again, I'm biased :)

------
netcan
>People are paying for good apps. As in, they’re giving you money in exchange
for software.

You gotta hand it to Apple on the market creation side of things.

No one pays for music. No one pays for small consumer software. Micro-payments
don't work. It's as if that stuff doesn't affect them.

------
comatose_kid
I've been thinking the same thing, which is why I attended iPhoneDevCamp2 in
SF (great event), and will soon be working full time on an iPhone app.

And yes, having a C background does indeed help the learning curve.

If anyone is interested in kicking around iPhone app ideas (I've got one which
would be worth applying for the next YC funding round), or just exchanging
Cocoa Touch programming pointers, send me an email (see profile).

~~~
tstegart
If you had to guess, what sort of app could you make with your skills right
now?

------
tlrobinson
_" If all of your previous experience is in dynamic languages like PHP or
Ruby, Objective-C is really going to hurt."_

I sort of disagree. Knowing C would help in some situations, but not knowing
it shouldn't be a deal breaker.

Objective-C is really a high level dynamic language built on C, so some of the
low level-ness of C shows through (objects are actual pointers, etc).

But the Cocoa APIs are like something you would expect in a dynamic language.

~~~
ardit33
try doing anything really advanced in iPhone, and you wish you new C really
well. Sure, Object C has some facilities, but when I wanted to do sockets, low
level C /BSD sockets were the best. Ditto for pthreading, and a host of other
facilities that come from the BSD undepining of OS X.

You can mix C and Object C pretty well, even in the same source files, while
if you want to use C++, I think you have to give up using Object C.

People coming from dynamic languages will be at a great disadvantage, since
they are used to all the facilities that come from using these languages.

I really think that iPhone app development, is the kind of development that
separates boys, from real developers. Anybody get a PHP web app, or a Ror page
going on in a couple of weekends, not so with mobile client development. It
takes a lot of patience to get where you want.

~~~
tlrobinson
Minor correction (a pet peeve of mine): it's Objective-C, not Object C.

You can actually mix C++ and Objective-C. I would only recommend that if you
have some existing library or something that you must use in an Objective-C
application.

------
Tichy
Just curious, are there really many companies hiring iPhone developers?
Because it seems to me the iPhone would not be a good target for enterprise
applications, because of the distribution model. If I model a business process
on the iPhone and make my company depend on it, I don't want Steve Jobs to be
able to pull the plug on it any time he fancies.

------
yan
So I figure this is as good of a place as any:

fyi, i messed with the sdk and have a fairly wide background in C and
objective C. Is anyone looking people to help with code or to co-author an
idea you have? Respond or email.

~~~
nf
I'm interested. I have a strong web background as well as low level
experience. Drop me a line nf at wh3rd dot net.

------
watmough
Yeah, taking the plunge!

Edit: If nothing else, concentrating on Obj-C and Cocoa for a few months is a
solid way to land a development job related to technologies that are ahead of
any other platform.

~~~
Tichy
How is a language without garbage collection ahead of any other platform? It
feels more like a plunge back into the stone age.

------
henning
Why should I willingly be a sharecropper on Massa Steve's NDA-ridden land when
I can maintain much more freedom and control on the web?

~~~
greyman
One possible answer: you can make more money and with lower risk.

edit: and quicker.

~~~
henning
To play Steve Jobs's game I'd have to buy a Mac, an iPhone, a developer
program license, and possibly an Apple Developer Connection membership. I'd
also have to spend the time to learn Objective C and the iPhone environment.
Together that's a substantial amount of time and money I'd have to make up for
before I wind up ahead.

How is there lower risk?

~~~
JabavuAdams
If you already have an intel Mac and an iPhone or iPod touch, you're looking
at only $99 for an individual developer license.

I didn't have a device, so add the price of an 8Gb iPod touch.

It seems you're overlooking the psychological factors at work in the app
store. It's very, very easy to buy apps. This is so much easier than being
noticed on the web-at-large.

For the same price as a Starbucks coffee, people will buy your app just to see
what it's like. It's throwaway money, to them. The amount of marketing you'd
have to do to get that response for shareware or trial-ware is much greater.

~~~
henning
Despite my reservations, isn't it true with something like the App Store that
you can make money literally while you sleep? Go to sleep, sell some software
with precisely zero effort, wake up a little richer, without having to handle
payment?

 _That_ is cool.

~~~
axod
Just like you can with advertising on the web you mean?

~~~
henning
Anyone with half a brain (and therefore with any money in their pocket) uses
Ad Block Plus, don't they?

I don't understand advertising and I don't want to. Selling a useful piece of
software seems much more classy and straightforward.

~~~
axod
No they don't. Anyone with a brain sees advertising as a useful service to
them. It's _extremely_ lucrative also. Yes there's a very small subset of
society which puts hands over ears and don't want to listen, maybe they also
don't have a TV... but it's a minute percentage.

How do you find out about new products, gadgets, websites, things going on?
Advertising. It might be blatent in your face advertising, or it might look to
you to not be advertising, when in fact it is.

If you don't want to understand it, great! All the more cash for those that do
:)

Also, if you think ad block plus actually stops you seeing all the numerous
types of advertising on the web, you're quite mistaken.

~~~
henning
I don't have a TV. What a waste of time.

I find out about new products and gadgets from sites like this. Is HN an
advertising hub?

I never see pay-per-click text ads or banner ads, that's for sure. I also
avoid webcock blogs, so I mostly steer clear of shameless "viral" marketing
trying to subtly promote services and products.

You can take your ad money and keep it. You don't need to be condescending to
me, especially when you can't spell common words like "blatant" correctly.

~~~
axod
"Anyone with half a brain (and therefore with any money in their pocket) uses
Ad Block Plus, don't they?

I don't understand advertising and I don't want to. Selling a useful piece of
software seems much more classy and straightforward."

Your original response wasn't condescending at all?

"I never see pay-per-click text ads"

Sorry, but that's absolutely wrong. How do you know which links are paid for
and which ones aren't?

How do you expect to sell anything to the average person (Who watches TV by
the way), if you never watch TV? Apart from some shows being pretty
interesting, other mainstream shows are a great way to gain insight into how
things become popular.

Thanks, and I do enjoy the money :) If you want to make money, learn about
advertising.

------
wallflower
Apple's iPhone platform is an authoritarian government like Singapore (since
they have control). However, there are benefits to centralized control.

