Monday, August 6, 2007

Project Constellation: Proof of Concept

As of today I have successfully been able to demonstrate to myself that the technological foundation, on which Constellation should run, can be developed.

A few words about Constellation. Like the numerous social networks out there, Constellation will also offer you to keep in touch of your community. Initially I intend to keep this network among Carnegie Mellon Computer Science students only. I hope that the project will expand as I get more people involved.

For the last two years, we have been experiencing a boom of Web 2.0. Its been attracting us by its dynamic applications and various eye-candy effects. Many think that the world is slowly moving towards online office suites and web operating systems. However, there is no single standard that Web 2.0 pioneers are maintaining. Browser Compatibility, the main headache of this technology is being addressed in varying ways. However it is my belief that in order to properly embrace the idea of Online Applications, we need a proper cross-platform infra-structure that is easily to develop and is modular in nature. The way things are going, it is very difficult for web-programmers to come towards a common standard.

Out of this necessity comes Constellation. A social network based on the Java Applet Platform. Cross-platform compatibility, object-oriented nature and modularity are features that are inherent in the Java programming language. So why not use this as the basis of developing online applications? Applets run using the Java Runtime Environment and are much more suitable than XML, AJAX or any other web 2.0 scripting languages. Plus, the developers of Java have much much importance on making applets run securely. Hence that makes it safe for mass use.

For this reason, Constellation stands on the JApplet platform. However, that is not all. In order to accomplish true modularity and a decentralized design scheme, Constellation is being backed up by BeanShell. BeanShell is a Java library that interprets, compiles and runs Java code as well as Java-like scripts. In simple words, the library lets you leave your code anywhere and let your program dynamically compile and use it for its own purposes. Thus development of Constellation is a continuous process where new contents and features are constantly being added to the system.

Constellation will act a content holder with a few basic functionalities. Developers on any part of the world can add write Java code and keep it with themselves. All they have to do is inform Constellation of their development. This way the content holder can allow the users to add new features at their will. As the Java source files and other resources will lie on a different machines spread all over the world, the Constellation network will truly be decentralized.

Wednesday, August 1, 2007

Social Computing

I've been wandering around these so-called social computing sites lately. Sites ranging from online bookmark sharing to massively online multi-player games like Club Penguin. I must admit, it is a cool idea. Socializing on the web should not just be limited to chat-rooms. There are some really good ideas out there which are rapidly popularizing the e-socializing culture.

Club Penguin gives you an eye-candy arctic world where people play as penguins. The graphics and mini-games are good enough to keep the newbie interested. For people who have loads of friends playing this MMORPG, its a totally amazing experience. Reading the online penguin newspaper I've found out that these friend-groups throw huge parties from time to time. Amazing concept. Loved the idea.

StarportGE, another multi-player online game. Its a closely resembles one the of games I am personally developing. But this game is unique in the sense that though its an RTS, it is incomplete without the online part. Player get a whole galaxy to colonize. Money is earned through AI controlled trading stations. Players can shape the character to be good or evil. The galactic police stations offer rewards for defeating the leading enemy players. Over-all amazing game play experience makes up for what it lacks in the graphics department. Too bad I haven't found games similar to it.

Trying out flock...

Just installed Flock to try to get into this social browsing phenomenon. Got disappointed, that software needs lots of improvements. Ideas of writing a browser like this in JAVA are starting to pop up in my head.