How do you really build large impressive web applications?

written by Evin Grano

There have been enormous leaps in browser technology and computers that have made rich internet apps and cloud applications no longer a figment of someone’s utopian dream, but a reality that can be acted on today. I want to take you on a journey how my company, Eloqua, did just that, take an utopian dream of the best web application and made it a reality, with SproutCore.

How do you decide what technology to use?

Well, the journey started about a couple of years ago, even before I came to Eloqua. Eloqua was the market leader and really the inventor of the marketing automation space. This space is where the marketing teams and the sales team work to get the right information to the right people at the right time. In order to grow your business, timing is crucial. Eloqua had built an application from the ground up over the last 10 years. It had all the successes and failures that come with inventing a space. Now that they succeeded in inventing the space, it was time to start the revolution all over again. Eloqua now needed to change the game because the space was starting to get crowded and we all know that unless you are innovating and catching the next wave, soon the market leader can become yesterday’s technology footnote in Wikipedia. This is when Mike Ball and I came onto the project and it was called Eloqua 10

We were looking for the next greatest thing in web technology and we started to see this resurgence in an age old idea: returning to fat clients with business logic and thin servers, but all with a new significant twist. Continue reading

Introducing Greenhouse

written by Evin Grano

Greenhouse

Well, we have finally done it. At jsconf2010 on Sunday, Mike Ball and I introduced Greenhouse: a Graphical Interface Builder for building blazing fast native-style applications using SproutCore.

Development on Greenhouse started in earnest only a couple of months ago. Mike and I worked in it in only in our spare time, but we have it far enough along to share with the community as a developer preview in SproutCore’s current master branch.

The truth is, we waited a lot longer than most other projects to start on our interface builder. But we didn’t want to start until we could do it right. We wanted SproutCore to go officially 1.0. We needed the API to become stable because there is nothing worse than jumping the gun and delivering a half-baked designer with an API that changes underneath.

So What, Everyone Has a Interface Builder…

While this may be true, no one has really innovated in this space for 20 years. They all seem to look the same. Here is a small sample of them:

Interface Builder

IB

Atlas

Atlas

TIBCO Interface

TIBCO

Ext-JS Builder

ExtJS

So these are good, but they all have the same problem.

If we are to build beautiful web applications, we can’t do it with a cluttered workspace. My wife does mosaics and she can’t really be creative unless she has a space to create in…I think it is the same for developers. We need a workspace for creativity, but these interfaces are cluttered with controls and only give you a small window to see your actual content!

So what can we innovate this space? How do we turn these cramped UIs in to a place where we can create some awesome web applications? Here are the steps that we took:
Continue reading