Live data from Hacker News

IPhone Development: Android SDK from an iPhone Developer's Perspective

iphonedevelopment.blogspot.com

21–30 of 34 posts

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#21
post #11

FTA: Indeed. Intents are powerful. The problem is that they give you power that you don't need the vast majority of the time in the vast majority of applications. This is silly, and tells me the author didn't think past the SDK. The Intent framework is what allows me to take a photo with the regular camera app (the one that pops up when I press the shutter button) and select "Facebook" from the "Share" menu. The Face…

Of course he thinks you don't need the extra power provided by intents. This is the same guy who thought it's a bad thing that the Nexus One has a better resolution than the iPhone. Unbiased he's not. It'll be interesting to see how he's gonna respond if the next gen iPhone has a higher resolution screen. :-)

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#22
post #6

As a guy who runs an embedded development company, I have to say, Android is pretty costly to do compared to the iPhone OS for any given amount of functionality. Like usual, the Java everywhere approach of it makes it pretty painful when you have a config file error, as a full 1/3 of those are not really validated with something that will tell you that you made an error. The business case of "No reviewers" makes it a…

Last I checked, PhoneGap apps don't use native OS controls, so your app never quite looks right. Android scripting is fun to play with, but from what I can tell it's a looooooong way from something you could release an app with. Appcelerator Titanium looks quite promising though.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#23

> Let me also put my biases right out front: I don't like Java. You don't need to write Java to write Android apps.

The only alternatives I've seen that look like they might be potentially production ready are PhoneGap and Appcelerator Titanium. (both use JavaScript). If you've found others I'd love hear about it. I like the Android framework a lot but I too am not a big fan of Java.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#24
Heads up, if you're looking to try Android development on OS X, once you learn the basics drop Eclipse and just use this TextMate bundle: http://www.onebitwonder.com/projects/android

The only good thing about Eclipse (IMO) is the in-line error handling, otherwise it's just overly bloated, slow, and clunky.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#25
It's like working with the evil offspring of GridBagLayout and XML

That one had me laughing out loud. Ah.. Good ol' Java, I remember you. Anyway, as an iPhone dev looking to branch out into Android, I found this piece immensely useful, though I'm sure mileage may vary.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#26
I got the impression that they liked/used the Interface Builder on the iphone SDK (the comment on the easy of making things pretty) - if that is the case that is telling. I do no iphone dev, but I have some close friends who are prolific and successful iphone devs, and they take a dim view of anyone who thinks it is more than a toy (of course, maybe something else was meant? I dunno - but yeah, GridBag+XML sounds horrid doesn't it).

I guess things like Charles Nutter's duby language (and other alternative JVM langs) can really make a much more pleasant experience.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#27
post #2

I haven't looked at Android yet but my experience with Objective C and the iPhone SDK is exactly the opposite of his - I found everything about iPhone development painful. As far as I could tell, Objective C does not work the way my brain does. The Interface Builder does not seem well integrated or make interface design "a joy" - it felt like more a hindrance than a help. The SDK does not make simple or common tasks…

I've just spent a couple of weeks putting together a simple iPhone app. While I have the benefit of having written some Cocoa apps in the past, I really didn't find it the nightmare that you described. Of course, the DRM and signing up for the developer program is a complete pain, but waiting and following instructions means it's only a minor hindrance. Even if it's a big philosophical discomfort with the platform. M…

Having written Cocoa apps in the past probably makes a huge difference. They did make the DRM work somewhat better later - I actually started trying to develop the instant they made the SDK available so initially I was one of a huge number of people complaining about cryptic error messages and complex instructions that didn't work at all. They later replaced it with messages that were sometimes helpful and instructions that sometimes worked.

I tend to have a "knack" for breaking software - which is why I've done QA for a lot of my career. It's clear there exist people who got the iPhone DRM to work once and it just kept working after that; I don't know how they managed it or what if anything I did differently. As a workaround, I eventually got in the habit of treating the iPhone SDK much the way people used to treat word processors back in the day. That is: save often and make frequent backup copies of the whole project. When your project stops working for some mysterious reason, go back to the previous version that did work. In short, I applied "cargo cult" programming techniques.

I did ultimately manage to put an app in the iPhone store but that experience soured me on further iPhone development. Though I might try using Corona sometime.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#28

His example of how Android is worse than iPhone is quite inaccurate. Activities in Android do not correspond to UIViews in iPhone - they're supposed to be self-contained and somewhat independent units of execution (UI units in this case). The fact that Intents are so limited demands pretty loose coupling and makes developing larger applications easier (and your code more modular). If I wanted to do what he wants to d…

Maybe I'm in the minority, but I find UIBuilder to be awful. Unintuitive and almost impossible to grok without some prior experience or handholding. For my first "hello world" apps I wound up coding the views entirely by hand and skipping the .xib

I'm right there with you in that minority. I think using previous Apple tools had led me to expect the interface should be "discoverable" and it wasn't. UIBuilder is, if anything, user-hostile. Plus the XCode integration is really poor.

The iPhoneRant blog reflected my experience pretty well with posts like this:

http://www.iphonerant.com/2009/06/xcode-is-flaky-interface-b...

http://www.iphonerant.com/2009/06/hahahahaha-wow.html

Quotes: "Programming the iPhone means managing a hodgepodge of view and view controllers and nav controllers and where the hell was I? It really doesn't allow your brain to just think about what the software is supposed to do. The fact that no one's come out with a good source to teach this stuff is very telling--it's unteachable. You have to slog through it, and when you get it to work, you're done. You can't necessarily explain how you got there or why it works. And it doesn't lend itself to being teachable, which is a good reason all the books on iPhone programming stink."

"The XCode environment is flaky and shit-filled. Little things add up, like the fact that you can't just select a file in the top frame and save it with command-S. No, you get a beep. Can't do that. You have to CLICK IN THE LOWER WINDOW, on the code, and then hit save. Because, otherwise you might save a few clicks and make things easy and intuitive."

I've actually got an App in the store. When I started I figured I'd do this silly little thing as a proof-of-concept and then go on to more ambitious ideas but I gave up because iPhone programming was just so unpleasant I couldn't bring myself to do it anymore.

I commented on UIBuilder here: http://blogjack.net/2009/06/why-do-iphone-development-tools-...

And on the early DRM experience here: http://blogjack.net/2008/07/iphone-20-woes.html

My hope is that one day Apple produces an Apple-worthy development environment.for iPhone OS. XCode/UIBuilder isn't it.

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#29

> Let me also put my biases right out front: I don't like Java. You don't need to write Java to write Android apps.

The only alternatives I've seen that look like they might be potentially production ready are PhoneGap and Appcelerator Titanium. (both use JavaScript). If you've found others I'd love hear about it. I like the Android framework a lot but I too am not a big fan of Java.

As Scala compiles down to JVM bytecode, it's available for Android development:

http://www.ibm.com/developerworks/opensource/library/os-ecli...

Re: IPhone Development: Android SDK from an iPhone Developer's Perspective

#30
post #27

Earlier quoted context omitted.

I've just spent a couple of weeks putting together a simple iPhone app. While I have the benefit of having written some Cocoa apps in the past, I really didn't find it the nightmare that you described. Of course, the DRM and signing up for the developer program is a complete pain, but waiting and following instructions means it's only a minor hindrance. Even if it's a big philosophical discomfort with the platform. M…

Having written Cocoa apps in the past probably makes a huge difference. They did make the DRM work somewhat better later - I actually started trying to develop the instant they made the SDK available so initially I was one of a huge number of people complaining about cryptic error messages and complex instructions that didn't work at all. They later replaced it with messages that were sometimes helpful and instructio…

That makes sense, a year or so of progress makes all the difference to a development environment. And yes, knowing a bit of desktop Cocoa makes it much easier to get into, but I didn't have much of a problem learning Cocoa once I found Hillegass' book.

Corona looks interesting. I could make fun of the spelling mistake on their home page though.

Post reply on HN