Categories
Computing

Mobile applications, RIP

Michael Mace has posted a thoughtful piece which seems to capture well the state of play with mobile application development. I think he’s right that there doesn’t seem to be much success to be had there as an ISV.

I thought it was interesting that he claims the forming web platform has beaten the native platform for mobiles (with graphs that suggest such a platform exists), while also claiming that there is no native platform. He’s right that there are, in practice, around twenty or so. His analysis seems to be that the OS vendors in the mobile space were wrong – no native platform is needed for mobiles, when the web will do. Surely he’s missing that the web for mobiles is a mobile specific platform. Even the latest browsers work best when your mobile web app is designed with a small screen and patchy coverage in mind. Take a look at the crop that target the iPhone. Most are very simple when viewed on a desktop, and many tout offline usage features.

So whilst I agree with his conclusion – native app development on mobile is a dead end right now – I disagree with the technical analysis (no platform was needed) behind it.

Categories
Computing

Why not Lisp?

Ok, so I’ve made it up to chapter 18 of my book, and I’m still enjoying the read. There was a brief diversion while the book chased the illusion of an OS/filesystem independent file naming library, but it’s keeping me entertained.

Perhaps by working for another OS company, the dream of unifying the various Unix & Win32 filesystems seems less important to me. Better really to give in, and recognise that the file namespace is the domain of the OS/filesystem/user, and there are too many leaks in abstractions above them.

Anyway, the title of this post is why not Lisp – putting aside my reservations of yesterday – why isn’t it more popular? There are the many reasons noted by Paul Graham, but there is a more prosaic one that hit me when I started.

There is no implementation that seems reasonable to use!

On my chosen OS (Mac OS X at the moment) I have the grand choice of three commercial implementations, and four open source implementations. All seem to have a significant gotcha.

Only one of the commercial implementations appears to have a ‘free redistribution’ model, the other two want some percentage or down payment from the sales of any product I create. Yuk.

Of the open source implementations, none are complete enough to host all of the examples from the book I’m using to learn the language. Some lack threads (hello – this is 2006), and others lack Unicode (hello – wave if you don’t speak ASCII English).

Whether the royalty free commercial implementation supports the features needed by the book is not clear (great sales pitch!). The book’s author recommends a vendor without a price list, which I assume to mean they’re in the we-want-a-percentage camp.

For any more popular language there is usually a bit more choice and competition among the tools vendors. As I see it, on Mac OS X, there isn’t a clear ‘one stop shop’ implementation I can choose to: learn the language with a popular text, and then distribute my first few applications ‘for free’. The situation on Win32 doesn’t look much rosier, although I’ve not looked at the details.

No wonder no-one is using Lisp.

Categories
Book Reviews Computing

A dive in to Lisp

Prompted by a book I borrowed from a friend, I’ve decided to learn Lisp.

Many years ago, the first programming course on my degree was in a language similar to Lisp (that I now forget), and I thoroughly enjoyed using it. MacLisp was also around on campus, for use in ‘maths stuff’. Not being a mathematician, I ignored that.

Both experiences made me write off lisp (and similar brethren) as a practical language – they seemed too small, too focussed on things like recursion that aren’t all that useful on constrained systems.

However, there’s a famous quote around that notes that everyone should learn Lisp, if only for the experience, and the write up in Hackers and Painters persuaded me to have a go.

So far, I’m up to chapter 15 in ‘Practical Common Lisp‘, and I think I may be hooked!