Archive for May 20, 2012

Comparing smart to other alternatives

May 20, 2012 Comments off

If you look at smart mobile from the context of Delphi, comparing it directly with Delphi or expecting it to be a re-engineered version of a product that (let’s be honest) has 15 years head start with countless senior architects working on it, then smart will naturally never live up to your expectations.

You have to look at it in context to web development and the tools common to JavaScript developers, and also similar tools available for other programming languages (like visual basic for android). The tools we set out to “beat” in terms of code were:

A fair comparison

First, none of these products (with the exception of monkeycoder) can offer you classes, inheritance, interfaces, virtual and abstract methods or anything even close to such functionality. You have to make do with java script, prototype chaining and a lot of manual labour to create an iPhone app.

Secondly, of these products only dreamweaver and sencha have designers that can render the html “live” (the preview function in smart is actually quite similar to what you find in dreamweaver, except that we don’t open the preview in a separate page).


Monkeycoder which is a new version of blitzbasic, have no design features at all. The IDE is basically notepad with a few adaptations. Yet it enjoys quite a large following due to the quality of the code it generates. But the system is very small and is best compared to old turbo pascal in terms of what you get out of the box.

Apple Dashcode

Apple dashcode is an excellent system, both in terms of design, events via the designer and editor functions. But it’s still a mess to work with and JavaScript only. It will be utterly alien to anycome comming purely from Delphi and also boxes you into apple standards forever.

Adobe Dreamweaver

Dreamweaver is a multi million dollar application with at least 10 years of constant development behind it. It is at present being touted as a “mobile web studio”, but that statement is cosmetic and carries little substance behind it. This is for designers more than it is programmers (and it is by far the best designer out there in my view).

Aptana studio

Aptana web studio is source-code only and more or less an html editor with syntax highlighting (but with a very cool plugin system) and auto correction.

Sencha designer

Sencha designer is a bit like Delphi, but the system is pure javascript and have no classes or wrappers except for the visual elements.

Taking a closer look

When you start to compare what these systems deliver, I think most developers will agree that what we have done with smart mobile studio is quite an achievement. We might not have all the “bling” down yet, but we are more interested in rock solid classes than we are superficial pixels. We could have cut development time by 50% had we deviated from the first principle of “Delphi only” components. But part of the motivation was to prove that Delphi still have some life in it and can be used to knock out unique and powerful solutions.

With smart mobile you can knock out a pretty complex web app in hours rather than days, and days rather than weeks. It does require you to write your own event handlers (just like you would under JavaScript, c# monotouch, freepascal and c++) and looking at the RTL units to familiarize with the new HTML5 based component library is a primer. But I’ll set smart mobile against the wast majority of HTML5 “web app makers” out there – any day of the week.