Thursday, October 27, 2011

To iOS or NOT

Last week, I attended a 4-hour seminar/showcase of iOS Application Development at Mint College in Fort Bonifacio. iOS basically is the operating system for iPhone and iPad devices. It integrates closely with Mac and of course Apple.

A few weeks before that, Steve Jobs passed away raising the question: "How will Apple and innovations from it without Steve Jobs?". You can come up with your own view of the matter, but we'll reserve that for some other time.

The market of mobile applications is increasing exponentially. It's just like the days when all companies and establishments wanted to have their own website and website application has been on the same rise. Now, establishments are clamouring for their own mobile application.

Mobile applications are not new to the horizon, even at the consumer level. Back in the early ages of cellphones, applications already exists and most are on the courrier's end. Eventually, they were made to adopt the Internet and made the system port to websites -- e-commerce came to play a great role, online-banking, and the fraud part, also joined the wagon.

When Apple launched its first version of iPad for the tablet framework, suddenly, the landscape of computing started to change. Despite the existence of tablets way before Apple released its own, (hence the legal battle that it is facing on all sort of countries from other players), tablets are not seen as usefull of to be considered consumer-based or business platform.

Apple changed the outlook on tablets down to the consumer level. Application development needs to pursue and grab the opportunities that it presents in almost all industries: Education for the technology-end; business operations; medical practice.... and the list goes on to coin the tag "I have an app for that".

A couple of years back, the challenge to develop for the mobile platform, as suggested by the increasing adoption of devices, came to play a role in the process. I am a web application developer, though I started my programming practice from DOS-based applications, I should be able to bridge any deficiencies or any adjustment for the web. In about a few weeks of searching for faster solution, I cam accross jQueryMobile - a javascript implementation that uses the industry-proven jQuery framework. It was in its Alpha-1 stage back then. Now, it's in RC2 release -- just about to go mainstream.

I was pulled by it. Going through the readings and searching, jQuerymobile pulled them too. The path is, I will not have must adjustment from how I develop my applications using PHP-MySQL-Javascript-CSS-XHTML and others. jQueryMobile provides really beautiful integration for the mobile platform. As part of the challenge, I had developed a mobile version of the school system I am improving. A restaurant/bar menu and ordering system came next. It was easy, you can build an application with database-integration and custom-views in a matter of hours or days, way faster that most available practices at that time.

There's a catch however, as it is web-based, it can only run with a mobile's browser. Well, by right now, most mobile devices comes with an Internet browser. From my tests and with the available devices I can lay hands on, there are browsers that do not interpret javascript and CSS -- you'll be doomed with text-only -- not good.

Development in the native form -- like iOS -- will eliminate such -- but you can only develop for iOS device -- the ones that ONLY come from Apple. I am not liking the way how it can go. Like when I dropped MS VB development -- thinking I'll be stucked developing for windows only. To this day, that had not changed much. I went to open source -- for the web.

The same dilemna approaches me. If I'm going to develop with iOS:

  • I'll get familiar with using Objective-C. (anyone knows who and what else uses Objective-C? I have not gone to knowing this yet)
  • I can build iOS apps definitely
  • Consequently, I may go away from my web-application development and into iOS. Because, they don't mix and match and the tendency is you'll accommodate one for the place of the other.

After drilling further, I came accross Adobe's Flex Builder with PHP(AFBP) -- SWEET!!!!! I can do Flash faster and I can exploit my PHP know-how.

It is SWEET!

Going through a little reading and tutorials, I found out that developing for iOS and Android can just be an option away from distribution. Build on one platform and implement on others. If I go iOS, the app can only work on iOS device. with AFBP, I can leverage to work on Android too..

Further, using PHP on the server-side gives me comfort. I can expand this to use databases -- mySQL is just a script away.

How about other adjustments? Well, I need to learn how to do Flex and Active Scripting -- but that's just part of the tutorials I can go through..

On to the next exercise...

No comments:

Post a Comment