Why Can’t We Have Both?

I love reading stories by John Dvorak – he is very opinionated – and I love that (I’m a tad opinionated as well). I read his column at PC magazine and watch his streamed show called “Cranky Geeks” on a regular basis.

John’s latest tirade is against Web 2.0 applications. The subtitle on the Article entitled “Stormy Weather for Cloud Computing” sums up his view very succinctly: “Cloud computing apps are for suckers. If there is an alternative that runs locally on your own machine, it will always be better.”

He goes on to list 7 things that are wrong – or could go wrong with software that’s hosted in the cloud. I have to say – that I totally agree with him on some points, and totally disagree with him on others.

First – where we agree: whenever you host something off premises – you’re going to run the risk that it will be offline. Either your connection will go “down” or theirs will – or there will be a server issue or whatever. That’s the case with all Internet-based applications.

I would even take it a step farther and say that even with completely in-house applications – there is going to be down time. I guarantee it. The reason is because we still host applications on servers – and servers go down. The hard drive dies, or the processor melts or Windows has a spaz and just ups and dies.

Either way – it’s downtime.

However, I do think that John is throwing the baby out with the bath water (an American saying). Hosted applications save people tons of money and tons of time in terms of buying, managing and maintaining a whole IT infrastructure in-house.

When it comes to designing a network topology, buying (and updating) server hardware, network storage, database servers, performing backups, ensuring redundant everything, paying heating and cooling and electricity bills, updating and installing patches and new application versions – it’s just a heck of a lot easier to let other people handle that part of the equation.

Especially if you’re an ISV (Independent Software Vendor). If you’re an ISV – your business is building software – not managing a data center.

At the same time – if you’re building applications – you often have to choose whether you’re going to use browser-based technology or client/server technology. It’s apparent that with the outsourcing of the hardware becoming a more affordable option – more and more people are looking to develop browser-based applications.

However, there are times when a client/server model or having a native client or having an offline version of your software is necessary (or even preferred over a pure browser deployment model). For example, what if you have a POS system that must interact with local hardware like scanners and cash drawers?

Try doing that in a browser!

In general, we find that people who use an application all day every day want a native, rich, thin client (we call it a “Smart Client” here at Servoy). The native client means that the user can work in their preferred operating system and the application will have the same look-and-feel as all the other applications they are already used to using. It can talk to hardware, the local file system, etc. – things that are impossible to do with straight HTML.

On the other hand – browser-based application are great for occasionally connected users, for end-user customers to check status, or answer a particular question, update their account information, etc. It’s also great for portions of the application (think an executive dashboard, a remote sales report, etc).

The big question to ask yourself is: “Why can’t we have both?”

The answer is usually: “Because we have to build the entire application twice.” And, in general, it’s true. Most products require that you re-build the data entry screens and reports in HTML for the browser, IN ADDITION to re-building the business logic behind the calculations, validations, etc.

This means that you are doing double the work – and maintaining two separate code bases quickly becomes a nightmare! Not to mention the fact that you have to then manage how you’re going to roll out new features: is it a client/server-feature only? Both? Only browser-based?

I can’t tell you the number of times I’ve seen this approach taken by well-meaning companies trying to gain the advantage of either first-mover advantage or because their struggling to modernize their aging application and immediately think “browser.”

At Servoy our answer to “Why can’t we have both?” is simply this: YOU CAN. Not only that – you can have a SINGLE code base – and deploy your solution as a client/server application as well as a pure HTML/CSS browser-based application. At the same time. From the same server.

Not only that – but you can also sell it to your customers as a SaaS (Software as a Service) application either with a native client or a browser client; you can also sell it as an on-premises solution that your customer can host inside their firewall or in the cloud and deploy to their employees as client/server or browser-based. From the same server. At the same time.

You CAN have both – the solution is Servoy.

Real World .NET Comparison Results

We’ve just wrapped up our Servoy vs. .NET Real World Comparison project. I wish I could say the results were surprising, but they weren’t.

We first got the idea for this project back in April 2008. We’re always getting asked by potential customers and existing customers how Servoy compares to .NET in terms of getting a solution written and deployed (and the ease of maintenance on both).

We have heard from our customers that Servoy is between 5 and 10 times faster than .NET in terms of development speed – with only 1/3 or less lines of code. But, we didn’t have anything we could really quantify – so we decided to create a project from scratch and do our own test.

We wrote a specification for a bug tracking system – code named Bugger (sorry in advance to our UK friends for the rude reference!). By creating a functional specification with UI guidelines – we set out to see what would happen if two sets of teams wrote a solution in their tool of choice: one team in Servoy and one team in .NET.

You can get the whole scoop – and download the actual solutions and source code for both projects by heading on over to http://www.servoy.com/dotnet.

ServoyWorld Pre-Launch Countdown

We’re in the final 30 days before ServoyWorld 2008 in Las Vegas.

Things are abuzz here in many different directions. I can’t really give all the details here – but I’ve seen a lot of the presentations and they will be absolutely awesome! They cover everything under the sun – and we’ve really tried to listen to attendee feedback and offer a “beginner” track as well as a track for more advanced folks.

As usual, engineering is still cooking with full steam – working on the latest-and-greatest additions and enhancements to the newly released 4.0 version, in addition to some very cool stuff that isn’t public yet.

If you’ve never been to a ServoyWorld before – and you’re into Servoy – or maybe you’re just evaluating Servoy – you owe it to yourself to come and check it out. You’ll meet some terrific people – be able to get some ‘face time’ with engineers and execs – AND be have ample opportunity to have ALL of your Servoy-related questions answered.

In case you just got back from vacation and haven’t signed up yet – the cheap hotel rooms are gone – but you can still register for the conference at the ServoyWorld site. There’s only a couple of spots left for the pre-conference and post-conference classes – so if you’re still on the fence – sign up while you still can!

iAnywhere announces free web-version

iAnywhere today announced a free version of there new database (version 11) for web applications. For Servoy developers this means that if your iAnywhere database also has to be accessed by PHP/JSP/other web-tech you don’t have to purchase a separate license anymore. Not all details of the license terms are known yet as the news is hot off the press so watch this space as further details become available.

Read the press release here.

Who’s Afraid of the Big .Net?

Famous IT-journalist Robert X. Cringely blogs about Servoy

The ability to create (and maintain) a single code base for Windows, Mac, Linux, and Unix desktops, as well as a variety of browsers, could save software geeks oodles of time and money. Servoy claims its customers can develop Web apps many times faster than by using Microsoft’s .Net, and for a fraction of the cost.

Press Here

What a whirlwind week! I just got back from Amsterdam where we hosted a press tour for an “A-list” band of journalists: Joel Dreyfuss, Amy Wohl, and Dan Tynan.

It was simply an amazing week. We had the opportunity to tour the Dutch countryside and spend a lot of time in a van going to destinations that were “only 40 minutes away” from downtown Amsterdam.

Listening to them talk was like hearing a verbal history of the computer industry. These folks have simply “been there, done that” in a way that I didn’t think was possible. They have, literally, been involved with and personally witnessed the birth of every major technology; every major trend; every major piece of hardware and software.

They have consulted for every business in the Fortune 500 – and they have personal relationships with just about everyone you can read about in any type of media story. Period.

In addition to being terrific company – their insights and advice were really helpful – especially to a fast growing company like ours. Their vast knowledge of what works and what doesn’t, what to watch out for, and simple “…here’s what  you do…” guidance will help us get even better.

It was a true honor and priviledge to meet them, get to know them, and break bread together.

I wanted to give a special thanks to them for taking so much time out of their impossibly busy schedules to meet with us – and also a special thanks to our own Brenda Christensen for getting it all together.

I’m looking forward to the next one!

Servoy Tip – Eclipse Templates Speed Servoy Development

Servoy would like to thank Darren Clarke from The Support Group for the August Newsletter’s Servoy Tip — Eclipse templates speed Servoy development. Are there blocks of code that you find yourself typing over and over when working on your Servoy projects? With the templates feature of Eclipse, you can banish this repetitiveness from your coding forever. To read more details in the Servoy Forum about this tip, click here.

Servoy Essentials 4-Day Training

The Support Group is organizing an in-person 4-day training in 3 US cities: Boston, San Francisco, and New York. The Servoy Essentials Training class will jump-start your Servoy development. The hardest part of any new technology is understanding how the technology “thinks.” The training course teaches not just the core Servoy functions, but also covers the architecture of the Servoy development and deployment environment. This comprehensive approach will enable students to develop highly attractive and functional systems. With instruction from an experienced database developer; and lots of hands-on student exercises, you’ll gain practical knowledge and experience with Servoy that you can put to use immediately. For additional details, pricing and registration, click here.