Info from the Trenches

1 view
Skip to first unread message

Andre Garzia

unread,
May 24, 2011, 11:55:29 AM5/24/11
to revto...@googlegroups.com
Folks,

I know this group has been silent for a while but I have information to share, unfortunately, I think the information is too OT for the use-livecode lists, so it will go here.

I know own all the tree big OS for mobile development, I have:

iOS: iPhone 3GS and iPad 1
Android: Nexus S
WebOS: Palm Pre 2

Now, from fiddling with all these devices, I've reached some conclusions. I will first talk individually about each OS and then some conclusion.

=======
    iOS
=======

iOS is the most active market right now. The iOS operating system is a minimal OS, just the minimum set of features to be usable. It is like when you want to level a platform and you level it from the bottom. iOS operating system is kinda dump, has no REAL multitasking, no matter what his steveness says, the current concurrent task thing is not what true multitasking is.

The official development environment is Objective-C with CocoaTouch frameworks. You use XCode to build it all and if you are using their own tools, the overall experience with quite good. XCode is a powerful development tool and has all the features expected from an programmer editor. Interface builder works great and you can create great standard looking and behaving interfaces by drag & dropping.

LiveCode deployment for iOS is the most advanced of all the mobile offerings from RunRev. Right now, most of the hardware features are supported. The lack of support for standard controls is the major problem. It is really hard to create applications that look like iOS apps. If you are creating a custom a custom UI then you can go as high as your talent but if you are design challenged like me, then, you are lost. You can't create standard looking and behaving apps. You can fake it to a degree with some third party offerings but this is faking, they look almost true to the apple HIG and look and feel but the don't behave as expected.

The app store is very easy to use for the customer. For the developer, the app store process is less than good. Apple acts like the big brother and we know how things can suddenly change for the worse. The iOS platform is the most closed of them all. You basically don't own your iOS device, you are only allowed to do what apple allows you to and when apple allows.

=========
  Android
=========

Android is the fastest growing platform out there. Many hardware builders are shipping android devices and you can basically get them in any country or carrier. The android os, at least 2.3.4 version, is very pleasurable to use. It has more features than iOS and one can quickly see the advantage of the android "hardware" buttons such as back, menu, search and exit. The system is very polished and the UI is very modern. Android is moving really fast and I think is the most future-proof of all the platforms.

The official way to develop is using Java. You install eclipse with the Android SDK and build you java stuff. Java development has a lot of overhead and in the end there are tons of strange xml files to write and lots of noise and boilerplate code needed before doing your actual business logic. Java developers don't seem to be able to see how bureaucratic it is to develop java software.

LiveCode deployment for Android is the new guy in the block. Most of the hardware stuff is supported but the lack of support for the other "hardware" buttons such as menu, search and exit is a major pain.  Also the fact that the native UI is not supported makes us suffer from the same problem as the iOS deployment where it is really hard for the non-designer oriented developers to produce something that looks good but since the Android platform is more "free" than apples, developers experiment more with custom UIs and most software has their own custom controls so your custom software will look like home. The major issue for Android, IMHO, is the lack of support for activities. Android apps are composed from one or more activities and apps can launch activities from other apps. For example an email application might have an activity called "email lists" and one called "compose email" so other apps can launch the email app compose new email activity. This is very powerful and shows the platform integration. The back key for example, will get you back to your previous activity, so if you from your app launch an compose email activity and the user press the back key, your own software activity is relaunched. Java apps have support from this built-in, we haven't and thus we loose a lot of possible integration. Also there is no support for notifications and other android goodness. Android deployment need to advance further before it reaches the same level as we have in the desktop.

The android market walks loops around the iOS market. From being able to choose a software from the web and have it installed on your mobile app, much like Amazon delivers kindle books directly to your kindle from the web itself, the android market is a pleasure to use. For the developer, the process shows how easy it can be and once you become an android developer, you realize how broken the whole iOS provisioning and process is. Android is going places and their market experience is very good.

========
  WebOS
========

WebOS is the child of Palm and now is on HP. HP is releasing new devices HP Veer, HP Pre 3 and HP Touchpad and will also ship WebOS on desktops very soon. The WebOS system is a surprise. Its usability is far greater than both iOS and Android combined. The system feels very organic. The gesture area is better than android hardware keys. I will not explain much about WebOS but basically I grew so fond of it that even as I own a Nexus S (one of the most advanced phones available right now), I am using the Pre 2 as my personal phone.

The official development suite is great. WebOS is all javascript and html based. All apps are build with Javascript and you have access to the source of all apps that ship with the phone. It is a developer machine dream come true. Things work great

Unfortunately there is no LiveCode deployment for WebOS and it appears that is not on the roadmap but if HP pushes it really hard, then, it might change.

The app catalog is very good but your device is locked on the app catalog based on the carrier you use when you first activate your device. Even if you change carriers later, your device will still be locked (it locks you by your IMEI). This is horrible but HP developer relations says things will get better soon. I am waiting to see. I am right now locked on the app catalog, I can only see free apps because my brazilian carrier is not on the partner list. This sucks but the platform is so good that I am still using it.

============
  Conclusion
============

Mobile is changing. LiveCode is a real contender but it needs more if one wants to deliver true native apps. The current official development suites for each platform are very different from each other. WebOS is great because you can simply transfer your web knowledge directly to the phone. Both iOS and Android knowledge are not that transferable except for the fact that iOS developement knowledge can be used for Mac development and this is great.



Phil Davis

unread,
May 24, 2011, 1:11:09 PM5/24/11
to revto...@googlegroups.com
Thanks for this write-up, Andre! VERY informative!
Phil Davis

George C Brackett

unread,
May 24, 2011, 1:53:09 PM5/24/11
to revto...@googlegroups.com
Thanks, Andre! I always learn when I read your writing.

One additional observation: with iOS, Apple owns your customers unless you build in some inducement for them to contact you directly (e.g., an enhancement). As a small developer, I find this lack of connection a major marketing issue.

George

David C.

unread,
May 24, 2011, 2:07:26 PM5/24/11
to revto...@googlegroups.com
Hello Andre,
I appreciate your thoughts on mobile development, as well as your
honesty about SOME of the pitfalls of iOS development. George eluded
to one above, but in fact there are so many issues involved with
developing of iOS that -could- be mentioned (IMO), that it would be
very easy to turn this into a full blown "bash Apple" thread.

...let's just say that I am not a fan.

As for Android, another benefit to developers is that there are quite
a lot more options in regard to the tools we use for development, as
well as the costs associated for development. The world does not begin
or end with either Apple or LiveCode in that aspect. ;-)

In regard to WebOS, I've looked it over pretty closely on a few
occasions and like what I see, but my personal "web skills" would
require a major overhaul before I could ever become productive. I
would however, like for you to clarify one thing you mentioned:

"All apps are build with JavaScript and you have access to the source


of all apps that ship with the phone."

Does that statement apply to all WebOS apps? Surely not...


Best regards,
David C.

Andre Garzia

unread,
May 24, 2011, 2:42:10 PM5/24/11
to revto...@googlegroups.com

In regard to WebOS, I've looked it over pretty closely on a few
occasions and like what I see, but my personal "web skills" would
require a major overhaul before I could ever become productive. I
would however, like for you to clarify one thing you mentioned:

"All apps are build with JavaScript and you have access to the source
of all apps that ship with the phone."

Does that statement apply to all WebOS apps? Surely not...

The apps built by Palm/HP that are bundled with the phone, such as the email app, the contacts app, the messaging app. You have access to their source code and their license permits you to use parts of the code in your own apps... This is really bold!

 


Best regards,
David C.

George C Brackett

unread,
May 24, 2011, 3:07:36 PM5/24/11
to revto...@googlegroups.com
WebOS sounds very attractive, especially since I had to get retrained on Javascript, CSS, Webkit etc. when writing a PhoneGap app during the time Apple wasn't allowing LiveCode. What's the likelihood of a decent market, do you think?

George

Andre Garzia

unread,
May 24, 2011, 8:10:01 PM5/24/11
to revto...@googlegroups.com
WebOS is a great system to develop for, the market is way smaller than iOS or Android but then again, this means that your software is more visible. There are customers there and they want more software. Instead of your app being one in a pool of 400.000 other equal apps in iOS, in other platforms such as WebOS or Android, you can make a difference. I may sound like an evangelist for the platform and once they get their app catalog lockout by region and carrier out of the question, I may as well become an evangelist. I think it is a great platform and it is as free as I need it to be.

Go to developer.palm.com and download their SDK. Their emulator is a virtualbox image. Or read more about it on www.palm.com, many new devices coming and I think this platform will grow a lot but it will still be small compared to iOS or Android.

Scott Rossi

unread,
May 25, 2011, 3:47:28 AM5/25/11
to revToMobile
Recently, Andre Garzia wrote:

> I know this group has been silent for a while but I have information to share,
> unfortunately, I think the information is too OT for the use-livecode lists,

> so it will go here....

This is a great write-up Andre, thank you.

Regards,

Scott Rossi
Creative Director
Tactile Media, UX Design


Tereza Snyder

unread,
May 25, 2011, 9:11:22 AM5/25/11
to revto...@googlegroups.com

On May 24, 2011, at 10:55 AM, Andre Garzia wrote:

I know own all the three big OS for mobile development, I have:


iOS: iPhone 3GS and iPad 1
Android: Nexus S
WebOS: Palm Pre 2

Now, from fiddling with all these devices, I've reached some conclusions. 


Thanks for putting this together, Andre. I can now sound more intelligent with less effort—and expenditure!

t

-- 
Tereza Snyder
Califex Software, Inc.



Reply all
Reply to author
Forward
0 new messages