JavaScript

The Future of SaaS

dgildeh's picture

Today Google announced their new Google Chrome OS here. This is a very interesting development and something many were predicting when Google launched Chrome last year.

For those of you who aren't one of the apparent 30 million users using Google Chrome, its a new web browser from Google. Why do we need another web browser when we already have Internet Explorer, FireFox, Safari, Opera and a hundred other browsers? Well Google noticed that many web browsers just aren't designed for rich internet applications like we build in SambaStream. A lot of new applications are written in JavaScript and use AJAX technology, which makes for extremely user friendly user interfaces that look and feel like your local desktop applications, but don't require any installation (saving IT departments huge headaches when rolling out a new application across large organisations) and run anywhere simply through your web browser. The problem with current web browsers is they run JavaScript pretty slowly, and unfortunately if one JavaScript application crashes, it will crash your entire browser. They don't also provide all the capabilities required out of the box (although they're heading there) for offline browsing, and slim interfaces that don't interfere with the web application's interface and available space to display them.

So Google created a new open-source web browser called Chrome to address these issues. Because we build our own applications at SambaStream on Google Web Toolkit, which essentially allows us to provide rich and fast JavaScript/AJAX applications for users, Chrome is great! Not only do our applications run faster, we can (in future) make them work offline (useful if you're on an airplane and have no internet but still want to use your applications) and also if another application crashes (because ours would never do such a thing!) it won't shut down the whole web browser and lose all your work. It also allows us to provide simple desktop icons so you can launch and use our applications just as you would a normal desktop application.

This is the future of how applications will be delivered. Through a web browser, with no installation required, just sign-up and point your web browser to use it, and all your data will be securely stored, backed up and accessible anywhere in the world. Not only does it save money, it opens up the whole way we work allowing you to do so much more than you could on you current desktop.

However, even Chrome is just a web browser, and needs to be run on top of another operating system such as Windows, MacOS or Linux, so while you can use your web applications on your browser, you still have to switch back to your local desktop applications, look after your data and manage your local applications, upgrading and patching them regularly as new updates become available. Now Google has announced the beginning of a new class of operating system (OS) - essentially all the OS does is load the computer, the browser will now become your user interface on which you will run all your applications, browse the internet and communicate. And better yet its open-source (also known as free to the rest of us!)

So why is this such a big deal? As we're a business software organisation I want to give the example of what small and medium size businesses currently do (the potential benefits and cost savings are FAR greater for large global enterprises but I'll leave them out for now).

Imagine this - right now you buy pretty expensive PCs, you install them locally, buy some servers to run your email and other applications, put them somewhere secure in your office, hire an experienced IT guy to run and manage them if you can afford, or if you can't, hire an IT support firm that will come in to fix your PCs and servers if needed, and generally that's quite a lot of the time. The fact is your current PCs and Servers run very complicated operating systems and software (such as email servers for your email). Complication = Complexity = more chance of something going wrong. On top of that, you manage all your data locally, if you're not experienced enough, you may have a security hole you're not aware of, if you forget to backup you could lose all your data...the cost of managing your data properly is actually very expensive, and the more security and redundancy you have the more expensive it becomes.

Now imagine the future - you buy a very cheap "thin-client" PC, which essentially has a screen, a keyboard and some memory. You switch it on, instead of waiting a few minutes for your PC to start-up, it starts almost instantly, because the fact is the operating system does nothing more than start your web browser. Its light, simple and as a result less likely to crash and have problems. You've just saved a lot of support calls and money. Secondly, the server can now go, because all your applications such as email, Microsoft Office tools, accounting systems, CRM etc. are hosted securely by SaaS vendors like SambaStream. The vendor provides the online software through your web browser, looks and feels like a local desktop application, but because the vendor provides it as a service, they take care of all the security, data backups and updates to the system. You now don't need an IT guy to support it anymore.

This is the vision we have at SambaStream, to provide enterprise-class applications for organisations of all sizes that need little more than a web browser and a simple monthly subscription to run. One day businesses won't need to pay lots of money to setup their IT systems. Just pay a monthly subscription, and get support for each application from the experts, the people who actually built the application in the first place and will be able to fix it faster than an IT guy who has to manage several applications and probably isn't an expert in any of them.

I personally don't think Google Chrome OS will have a huge impact anytime soon, Windows has become an institution for many people and I believe many businesses will take time to change the current mindset to move away from their current applications and way of working, but its a start and I'm sure within the next decade we will see a significant shift towards the vision I described, in fact I bet our company on it!

High Performance GXT / GWT Applications: Coding Java for JavaScript

agiannone's picture

It's been some time, so I thought I would try and post another informative blog.

I thought my second blog would involve detailing the trouble points and steps involved in migrating between Gwt-Ext and GXT, however, it’s now been such a long time that I can no longer remember what the trouble points were except for a few:

Rich Internet Applications and Web 2.0 with GWT-Ext, GXT and SmartGWT!

agiannone's picture
Finally I get a minute to write my first blog entry.
 
Anyways, enough ranting and let's get down to some business. You may not be aware but we are intending to build our front-end using some cutting edge, actually, bleeding edge technology! I won't disclose too many secrets for the time being as we are strictly in stealth / undercover mode in terms of development (this might be because we haven't got anything done... or maybe because what we are doing is going to be unique!).
 
We initially started building our front end using the GWT-Ext library based on the ExtJS library. Unfortunately Ext decided to change their licensing model to an "Open Source for non-commericals only" model which really annoyed Sanjiv Jivan (creator of the GWT-Ext library) who in turn went off to develop an alternative called SmartGWT which is based on the SmartClient JavaScript library. You can read more about these trials and tribulations by searching Google and reading Sanjiv's blog (http://www.jroller.com/sjivan/). In the mean time, or better, just before changing their licensing model, Ext took on board a small project called GXT. Some may ask: "What is the difference between GWT-Ext and GXT" and the answer is: "There are a few". I'm sure that wasn't at all vague or unfulfilling in terms of answering your questions, so let me expand, in fact, I'll take this opportunity to expand also on SmartGWT:
 
  1. GWT-Ext (http://www.gwt-ext.com): This GWT Java library is based on the ExtJS JavaScript library (http://www.extjs.com). The ExtJS JavaScript library is very stylish, functionality rich and most of all performant. The way the GWT-Ext works is by manually placing the ExtJS libraries on your web page and then transforming your Java into JavaScript which in turn makes use of the ExtJS libraries. The GWT-Ext library was quite advanced and included large number of features from ExtJS. The main issue with this library is that it currently isn't being brought forward but merely patched due to Ext's license change and Sanjiv's subsequent switch to SmartGWT.
  2. SmartGWT (http://www.smartclient.com/smartgwt/): This GWT Java library is based on the SmartClient JavaScript library (http://www.smartclient.com) and is Sanjiv's new brain child. This library works in a similar way to GWT-Ext i.e. you link in the SmartClient libraries and then the auto-generated JavaScript will make the relevant calls. This library has been completed very quickly and the first stable release is ready to be used. Sanjiv once again suceeded to impress and deliver a second library in no time at all. However, we found the SmartClient library lacked a sense of sexyness and style but most of all was not as performant as ExtJS. This can be quite clearly seen when comparing the showcase for ExtJS and the showcase for GXT/GWT-Ext.
  3. GXT (http://www.extjs.com/products/gxt/): The output of this library is identical to that of GWT-Ext as it is also based on the ExtJS library. The one fundamental and core difference between this library and the GWT-Ext library is that the GWT-Ext library requires you to include the ExtJS JavaScript libraries whereas GXT does not. GXT is built with the original GWT concepts in mind. It will generate, optimise and include into your page only the required JavaScript code in pure GWT style! So if you compiled two identical applications, one in GWT-Ext and one in GXT, the GXT application would be lighter and faster than it's GWT-Ext counter-part. The only thing that sucks about this library is that it still lacks maturity when compared to GWT-Ext (although it's leaping forward and will soon overtake and leave GWT-Ext far behind) and the fact that you need to pay for commercial use. 
So, you may be asking yourselves, what have we chosen at SambaStream? The answer is GXT.
 
We initially developed version 1 of our application in GWT-Ext but once the licensing troubles came to light and the fact that this library was pretty much going to remain stagnant for all eternity, we decided to port everything onto another library. The library of choice was GXT for some very simple reasons: a) it is more performant than SmartClient, b) it looks a lot better (although SmartClient are releasing a new skin in v7.0 which is much nicer, but still not quite there), c) it uses pure GWT principles making applications more efficient/compact and d) we expected porting this across to be a walk in the park and trust me, it wasn't!
 
Note that the cost factor was not weighted highly as the GXT licenses are affordable and the overall product is good and established.
 
Now, I had set out to write a technical blog explaining point (d) above with all the differences we encountered so far between GWT-Ext and GXT but I got side tracked with the History of our library choices. Watch this space though because the next blog will be geekness in words and will highlight a number of differences between GWT-Ext and GXT!
 
Peace out!
 
Ale
 

 

We chose GXT as our strategy and it has finally paid off. The Collaboration spaces we created are working nicely and it is fully developed using GXT and GWT. Feel free to join the free Beta program. All your feedback is welcome.

We are not going to distribute the information you provide when joining the Beta, but SambaJam works on an invite only basis, so we use your details to invite you into SambaJam. You can then use it as much as you like and as often as you like to share documents, organise your calendar, create wiki's, discussion forums and easily invite other people to work with you. 

You should see a box with the form on the right hand side which you can fill in. 

If the form is not there, click here to see the form:

 http://www.sambastream.com/form/sambajam-private-beta 
Syndicate content

Latest Tweets

SambaStream Newsletter

Follow our Product Updates and Company News with our Monthly Newsletter

Syndicate content