Business
Why we built our document library the way we did in SambaJAM

For years, we've been working in the Enterprise Content Management (ECM) space delivering large document management systems and collaboration portals for banks, global companies and NGOs. All of them used huge and complex systems such as FileNet, Documentum and (less huge but still complex) Microsoft SharePoint. And for years we never understood why it was so hard to manage documents using their clunky web interfaces.
For example, in SharePoint, a great product in manay regards which is why its become Microsoft's fastest growing product ever and used by loads of companies around the world for collaboration and document management, you get something that looks like this to manage your documents:
Its essentially a list of documents on a web page, if you click the arrow next to each document, you get a list of options you can do on that document, clicking one of the options opens a new window with a clunky form to edit or fill in. And SharePoint is one of the easier ones to deal with!
If you look at many of the start-ups in this space you’d think all of them would be taking advantage of the latest in web2.0/AJAX technology to improve on this web-page list concept, but you’d be mistaken. Just take a look, while the lists look nicer, they all still provide the same thing, a list of documents on a web-page which clicking on takes you to another page with all the document properties and forms to edit them, not really much of an improvement.
So when we came to design the document library for SambaJAM we looked for inspiration from what is undeniably the best tool to manage your documents - your desktop! By using the latest in web2.0/AJAX technology we set out to create a very intuitive, familiar experience for our end users to manage documents in their web browser. Some of the key features that were important to us during the design:
- Thumbnailing: Just like your desktop, isn't it much nicer to actually see visually the files your looking at. You may not remember the file name, but you may remember the front page had a bright orange logo. We've ensured all our documents are thumbnailed so you can easily browse through documents. However, if you do just want to go back to a list of documents (detailed view) you can simply switch views and do that too!
- Drag and drop Documents: With many users and document controllers spending a lot of their time simply organising the documents everyone else has uploaded into the correct folders so they're properly organised and easy to find, we decided the easiest way to move documents around was simply to select the ones you wanted to move, and drag them to the folder you wanted to move them too. Not only that, but like Windows, you can also drag documents and files into the folder tree on the left hand menu.
- Context Menus: Like your desktop, you can get access to all the actions you're allowed to perform on a document simply by clicking your right mouse button. All of the actions will bring up a popup form instead of re-directing you to another page so you can quickly do what you need to do and return back to the folder you're working on.
- Tagging: Sometimes, documents don’t also make sense organised into specific folders. That’s where tagging comes in, you can tag different types of documents like ‘proposals’ or ‘reports’ with specific tags and using the tag tree menu on the left hand menu, easily show all the ‘proposals’ or ‘reports’ in the document library regardless of which folder they’re in.
- Filters: Sometimes you just want to see the latest modified documents, the documents other people are currently working on or just the ones you're currently working on. By using the filter menu you can quickly filter all the documents to what you want to see.
- Online Previews: Sometimes you just want to read a document, or quickly open it to see if its what you're looking for before you download it. Sometimes you can’t download it because the document was written in Microsoft Office 2007 and you only have Office 2003. That’s where online previews come in. By double clicking a document, you can open another tab in your space to view the document (so you can still easily flick back to your folders if needed) and read the document online. If you upload rich media such as audio (and in future Video) you can also listen/watch those online as well!
- Versioning: The only way to ensure you're all working off the same version, and that no one's changes are lost is version control. We allow you to easily check-in and check-out documents to make your changes so every time you save a new copy, the previous versions are still accessible and can be rolled back to at anytime if someone made a mistake.
- Commenting: Easily write comments against your documents instead of emailing your comments back and forth!
- Uploading: Nearly every system I've ever seen requires you to go to a separate page to upload your files, and generally its one file at a time, during which you can't get on with anything else. We've decided that if you're uploading loads of files, especially large files which take time to upload, you should be able to simply queue them up, and then minimise the window to the footer so you can continue with your work and get notified when the uploads are finished. When I first used SambaJAM I uploaded several hundred files, and it had absolutely no impact on the rest of my work, I simply minimised it and got on with other things on SambaJAM!
- Online Editing: We've integrated with Zoho so you can create and edit your word documents, spreadsheets and presentations online without leaving your web browser! Not only does this save you having to download the file and re-upload just to make a quick change, in the future you'll be able to collaboratively edit the document with your colleagues in real time!

- Workflows: Workflows allow you to send documents for review or assign quick tasks like 'Update the logo on the front page' to other users without using email. By initiating a workflow for your document, you not only generate tasks for the people you want involved to see in their Tasks inbox on their Dashboard, you can also see the progress of how far along the review process the document is.
- Microsoft Windows, Office and Email Integration: I'm getting ahead of myself here but we don't believe you should actually have to log into SambaJAM to create and edit documents stored there. Wouldn't it be great if you could edit your documents in Microsoft Office and using its built in functionality, save it back to SambaJAM directly? Or map SambaJAM as a network drive to manage your documents in Windows explorer? Or map SambaJAM as an email account in Outlook so you can simply drag email attachments into SambaJAM? Or simply email a document into SambaJAM without logging in? That’s a few of the things that will be coming in later on so watch this space!
And not only ALL of the above, but all your documents are stored on an Enterprise Content Management system used by Fortune 500 companies around the world so you get enterprise class security, scalability, customisation and all the other features you'd expect from a system of this type!
Pretty awesome eh? In-fact something I heard the other day that made me laugh, but I should put as a disclaimer:
IF YOU'RE ALLERGIC TO AWESOMENESS - PLEASE DO NOT USE SAMBAJAM!!!
You have been warned... ;)
Rich Internet Applications and Web 2.0 with GWT-Ext, GXT and SmartGWT!

- 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.
- 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.
- 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.
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-betaLatest Tweets
Blog
- Google phases out support for IE6
- The end of the recession (nearly!)
- The business cost of snow days
- Paper Is The New Plastic
- Good Design
- November Minibar Presentation - Using Open Source to acheive the impossible!
- Some Photos from Recent Exhbition at London Olympia
- Last chance to visit our stand at IMS 2009 tomorrow!
- Press Release: SambaStream to reveal SambaJAM at IMS 2009
- Come visit us at the Online Information Exhibition on 1st - 3rd December 2009











