Couple of weeks back i came across Scott Gu’s blog post on the upcoming release of Microsoft Silverlight 2 and a first look at the new features. While the blog post gives good initial insights into what new Silverlight has to offer, what caught my attention was the Digg app they have created to demo the new feature set and also the statement - “The entire application is implemented in about 35 lines of C# code and 75 lines of XAML page/user-control markup.”
Sounds cool? Most would say YES if they have always worked on Microsoft technologies. But anyone who has spent a bit of time in BungeeConnect’s On-Demand Application Development Platform would say - Are you serious? Cause it takes only 15 lines of code to make a similar Digg application that also without any need for XAML. And all this just for starters. Before i get into more details, you can take quick look of the Digg app i developed in BungeeConnect. While i am not sure how much time it took for Silverlight folks to create the app, it took me around 45 mins to complete this start-to-end including the UI, fonts, etc. So what’s so cool about BungeeConnect besides the less code?
No Developer Software Downloads
Few weeks back i was downloading the Microsoft Visual Studio 2008. Total download size for the software and windows sdk came out to be 3GB+. And if i recall correctly, for the install to take place i needed around 5GB of space. I know disk space comes for pennies these days, but seriously, 5GB? As compared to that, in BungeeConnect, you just need to signup on the site to get started with the web-based IDE. Can’t get easier than that.
No End User Downloads
For those users trying to use Silverlight apps, they might have noticed the message on their screens requiring them to download Silverlight exe before they can use the app. Now, that tiny bit of request automatically puts your application on a 2 year slow growth path. Actually 2 year is a bestimate, given Silverlight is rapidly evolving software, which is still not getting deployed via Windows Update. In other words, you would be missing out on quite a few users today and also incrementally if you make apps in Silverlight. As compared to that, BungeeConnect requires no end user downloads.
Instant Gratification
You might have noticed in Steve’s post that he only give out screenshots for the app. Obviously, when the application is running on this localhost, he can’t do better than that. Only way for him to let us touch the app would result in getting one of msft’s web team involved, requisitioning a sandbox server, filling up few docs justifying the need,…..Once he is through, you get to play with the real app. Obviously that is pain that no one wants to go through(not even for a new product). Now, not just Steve, we all face this issue every day and to be frank everyone hates it. As compared to that, in BungeeConnect you can build and instantly deploy your applications. And all this happens on the BungeeConnect infrastructure. For those who have not played with BungeeConnect, you just need to switch to “Staging” tab in the Online-IDE, go through couple of steps, and your application is live and ready for end users to play with. Cool, right?
Instant Scaling
Build your application in .net, java, php, RoR and you are automatically burdened with the task to scale it up(app severs, web servers, db servers). That’s not an easy task when you are just a team of 2 or 3, and want to focus all your team resources on getting the feature set right. From the above mentioned list, BungeeConnect provides automatic scalability to your apps from day 1 for 2 of the 3 components - Web Servers and App Servers. Yeah, you dont need to maintain your own web and app servers and also the team for them. All you need to take care of is your MySQL database(BungeeConnect can connect to your externally hosted MySQL db). In my opinion that makes your life way easier.
Code Sharing
Another thing you might notice in Steve’s post is that he is offering source code of the Digg application to download and tryout. Hmm. BungeeConnect takes a different and easier stance on that. Bungee has a concept of DesignGroup, which can include multiple solutions and team members. With that in place, whoever is part of your DesignGroup can “import” or “include” your solution code in few clicks. This makes code sharing and reuse way easier, as compared to the download-unzip-copy route.
Language Features
While i want to talk in detail on this topic, I will touch only 3 points for now. First: AJAX effects/No JavaScript- Are you a small team looking for always scarce costly expert Javascript resource? or do you want to add Javascript effects but know the your competitor has 2 years lead in a similar core js lib? Are you sick of making sure your app runs just the same in IE7 and FF2, and FF3 and IE8, and Safari, and….? BungeeConnect takes this pain out of your development cycle. What Bungee offers is composite html controls that have AJAX functionality built into them. This makes your typical form swapping, DOM manipulation tasks so easy that you would curse yourself for wasting time on your still-not-bug-free js lib(thanks to IE)…… Second: Very strong collection and selection binding making the UI manipulation much easier. This was something new for me, since i moved over from php to Bungee. And this something to be used to fall in love with. Third: Yesterday i was reading through Brad Feld’s blog post for a Position of API Hacker in one of the company he has invested in. Although i dont know the specific reqs for the position, i guess they will be looking to make API calls, fetch data, and display it as a mashup. Something similar to the Digg app, i would say. Now BungeeConnect offers a very strong xml to class mapping, making api calls like these a no-brainer. If as a dev, you would still want to go the regular xml tree traversal route, i wouldn’t consider that to be a wise idea.
Enough said for now. Next, i will try to get write tutorial for the Digg application i did and post it in the next few blog posts.
Update 1: Matt Misbach over at BungeeLabs has done another Digg implementation in Bungee. Click here to read about it.
Update 2: For the Official list of what all Bungee has to offer, Click here. Note, the document might not be up-to-date.