Posts

iPhone Offline Web Apps – the RESTful Way – Part 1 of 2

Image
[ Concrete/Very Interesting ] Whist building a web application for the iPhone, I was presented with a problem. One of my team managed to replicate the work we've been doing using Objective-C. I looked at the code – didn't like it but it worked. The problem was, it worked offline . ‘Can't have this’ I thought, so I embarked on making my application offline capable. Sounds easy – well in principle, it is. In practice, there were a few pitfalls that I thought I'd better blog about. Of course, I had a cold and had just received an H1N1 vaccination, so maybe on a good day… Anyway, here is some background and my tips to Offline Web Apps, the RESTful way. HTML5 Offline Application Cache You can find out lots of good stuff about this on the Internet. The official reference from Apple can be found here . The key is to create an cache manifest file naming all your resources - HTML files, Scripts, Style Sheets, images, and so on… You then reference the manifest file (....

RESTful Teamwork – Tips for Agile iPhone Development

Image
[Concrete/Interesting] I’ve been working with a small team on an iPhone project. I bet half of you out there are doing something similar. One member of the team is struggling with Objective-C – I need to understand the costs and benefits of native development on the iPhone. The rest of us are working on a WebKit browser app for the iPhone . Naturally, I decided we must use REST to provide a good balance of speed and functionality on the device. I’m using the jQTouch framework (based around jQuery 1.3.2 )with a bit of AJAX on the device framework and the server is developed in C#. The REST service is implemented under WCF, so building server side is a dream (see REST in Windows Communication Foundation ). Team working is a breeze – we have a basic data model and use this for reference. However, under my direction we are building up the solution screen by screen, focusing on the end user application and looking server side when we need data or processor. The team works very well be...

The Squirrel on Cloud Computing

[Concrete/Important] The Squirrel is pulling his tail fur out – I’m surprised he has any fur left. He’s been trying to convince the Bears that Cloud Computing is important and in paw’s reach but the little Acorn ERP is just too big to get up into the clouds. The first push back came from Little Bear, and the Squirrel was expecting this. “Cloud Computing is not really aimed at us” said Little Bear. Little Bear is scared, probably has too much on his plate. And he’s been nurturing the Acorn and building this huge Oak Tree. In a way, he’s right, though Squirrel. The Cloud is not for our type of ERP, not today. We need to be lean and we need to change if we’re going to live in the Cloud. And it’s the same for On Premise and Hosting – storage may be cheap, but the more structured the requirements, the higher cost per GB. And it’s costing us an arm and a leg to host our Oak Tree. “No way will we be able to manage a forest of Acorn ERPs, not unless we change...” replied the Squirrel. “...

Is your code RESTful

[ Concrete/Important ] Well nearly, but not 100% - well not yet. A few years ago I wrote an HTTP GET/POST web service (sounds RESTful) between a Windows CE.Net client on a hand held device and an Apache server running a light SOAP Web Service. It wasn’t hard to write but the messages were specialized, so fell short of being a true RESTful implementation. REST stands for REpresentational State Transfer and refers to an architectural style or pattern. In essence it describes clients served by services where state transitions or transfers in the client take place through the representation of a new state in the data returned by the service. Web applications architected in this way have stateless servers and would typically map messages or web service requests onto the HTTP verbs GET/PUT/POST/DELETE. At its core, my latest project http://www.far2muchmail.com/ , uses messaging between an Outlook desktop client and a web service. The web service is in PHP and not currently highl...

"Better to say nothing and be thought a fool..."

[ Abstract/Important ] "Better to remain silent and be thought a fool than to speak out and remove all doubt." - I read this on one of my colleague’s Skype. Made me wonder ‘why do people say this sort of thing?’ and I was reminded, this is something my Dad used to say to me. I guess some people say this because they believe it to be true. Seems reasonable, maybe that’s why Dad used the phrase. Sometimes people use the phrase because they have nothing better to say – now that’s perverse. Although not every topic attracts or even deserves debate, I believe that if a debate is offered, one almost has a duty to present one's views. More so, at the risk of saying something foolish, in any debate of weight, whether or not your view is solicited, you must speak up. To do otherwise is indeed foolish.