Sproutcore on Windows

Once in a while I get these feelings, which tells me something really really big is about to happen. When I get these feelings I cannot sleep because I become like a child waiting for Christmas morning. This is exactly how I felt when I first heard about “Sproutcore” this week.

Sproutcore is a development framework for writing applications in a browser, and it supports in theory every browser that supports javascript. I know there are others providing similar solutions, for example Microsoft Live Mesh, Microsoft Silverlight, Adobe Air, or even Google Gears to some extent. Yet, there are differences with these solutions and Sproutcore, that makes me believe Sproutcore can be much bigger then all these other technologies.  In fact it could change the way we work!

Open Source
The first major difference is that Sproutcore is a Model View Controller (MVC) Framework. This is a concept taken from Apple’s Cocoa Framework. In fact, Apple is a major contributor to Sproutcore. The MVC framework makes developing web applications into the realm of developing desktop applications.  This especially true for Apple developers.

Sproutcore itself is open source, which is another difference that makes it very interesting. My belief is that with open source software, bugs can get solved faster and the feature set can be extend much rapidly then with a closed framework. I also believe that open source frameworks for the before mentioned reasons are much likely to be adopted.

In the case of Apple, they are using Sproutcore in their new service to be launched next month with mobileMe. There was a preview of this service at Apple’s Keynote at WWDC 2008, which was really impressive. I am holding my final word on this service till I actually start using the service.

Thick Client
Another important point that differentiates the Sproutcore framework from others is that the client application is intended to be a thick client not a thin client as we have come to expect with web applications. Sproutcore is developed in such a way that it is no longer necessary to have a server back end. You can develop an application in a browser and it will be like a stand alone application which could or could not require an internet connection. For me this point, coupled with the rich User Interface controls that come out of the box is the big big selling point of Sproutcore.

Experience with Windows
So naturally, I have downloaded Sproutcore and tried it out right away. My first experience was on a windows machine that I have. If you do not have Ruby and RubyGems installed you will need to do this first. I did this and then ran the one line install. Worked smoothly. But when I started with the demo, it just did not work. I got various errors and eventually gave up. I later found out that the development framework was never really tested for Windows. Here the power of the open source community struck again. Yesterday on Sproutcore’s blog they posted an update that claims experimental windows support has been added. That was fast! I still have not had the time to give it a go, but I am waiting for support to change from the experimental state. I will just have to in the mean while work on the OS X platform.

Closing Thoughts
So if my feeling is right, this is going to be big. Lets see who the early adopters, other then Apple, will be.

This entry was posted in Apple, Development, Technology and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s