I have been thinking a lot lately about Native vs HTML5 and what is the best approach. As indicated in previous articles I would be more concerned about the Web API you are providing first rather then Native or Web. It really depends on the application you are creating.
If it is fairly basic and simple displays then all web may be the best solutions. If you want a store present then at minimum you will need to do the hybrid approach (Phonegap) approach. If your require a lot of the Native features for accessing camera, voice, complicated then then I think the Native approach should be considered.
Another reason to consider Native over Hybrid is device support. If you are developing native you are developing for a specific platform / OS. This means you won’t get any surprise unlike developing web based. Different platform / OS have different browser implementations some even for Browser and Embedded Browser. This in turn makes supporting web based applications very difficult.
I found a very interesting iPad Web Development Site. You have emulators, iPad web development tools etc. It is amazing how much information is out there for beginners and experienced iOS developers and designers.
Of course when it comes to development for Native iOS application the selections list becomes a little smaller. What else do you need but xcode4, interface builder, simulator and actual test iOS devices. Some design templates, wire frame tool kits would also be very useful for both types of development.
I’ve been thinking about how much would it take to get involved with technology coding contest. I checked out Google Jam which was insane. It was really cool writing the same test in C but you have to be a math or physics major in order to do well in code jam. Signed up for the Ford open / Xc project, order the USB cable and then realized that my 2003 ford focus was not compatible. The good thing I found is the site it was hosted on challenge post.com. This is a website dedicated to challenges. Based on what I have read there does not appear to be anything unusual about the contest posted.
Since the client runs locally and potential in some cases are actually installed locally would communicate with one or more remotely hosted Web API’s.
The new buzz word patented by someone is WebApi which is just what I explained above. A WebApi is not tied to any specific client side technology. The protocol is standard http or https. The WebApi exposes its interface in the form of a SDK. Documentation contained in this SDK explain the detailed request and response format. It is also important to include proper error response. Error response in the same way that http responds with errors like error 500 or 400.
Interesting link I can across today:
It has a detail index of all of the CSS, HTML5, JS API, SVG and Other support. Clicking on an item shows you how well it is supported in the major desktop and mobile browsers. Selecting the Table tab allows you to do a detials comparison of selected browsers. Of course selecting HTML5+ iOS6+Android 4.2+BB10 shows some very interesting results. I’m not surprised, given my experience that Android has the least amount of HTML5 support. If I included BB 7.1 then that would not be the case but we don’t want to go there.