Archive for the ‘Web 2.0’ Category

Development of AcSO - From A to Z

Sunday, May 20th, 2007

Last month we got selected… oh! In case you don’t know about that, just read my previous post. “And Then” the next phrase - Development.

AcSO is basically academic information sharing site, which will be run by the users (Web 2.0 concept). So, it has some amazing features, but no so hard to code. However, since we have four fellas in the team and we want this built well, we need to come up with a nice site structure.

There was an ASP.NET built in login system. It’s very easier to use. But there were some problems, by default it uses some kind of weird database and replacing it is not so easy. So, we argued about two days whether we shall use it or not and finally decided to code our own one which only took about 15 mins :P

First what we decided was to use portlets; basically, web parts. After developing sevaral portlets, we again reran an evaluation and decided that we don’t need portlets.

Then we had an exam paper and after all we have 3 and half days to build the application. So, we just started coding raw pages, and we used some base classes written for the web part application and here is the final result : http://team4366.webdev07.imaginecup.com/

There was one big problem when we are developing the site, “version controlling”. Keshan and Me replaced each others codes several times. So, after all we used manual version controlling mechanism. Before updating code, I always took a backup of the current site. Believe me, I have more than 300 MB in backup files. But, it along didn’t solve the problem. So, we started to working at shifts ;-).

Since these pages have put together in three sleepless days, there are lots of features missing. And we also didn’t have much time to put the validations, etc. Basically, we haven’t fine tuned the site. But anyway we are happy with the current progress of the site and if we go to the next stage, we should start development at least about a month before the deadline.

P2P Minds

Monday, April 30th, 2007

We have just finished a small project - p2p mind.. We’ll probably release the code as GPL, even though it might not be useful for many of you ;-)

check this out : http://www.sandaru1.com/p2pmind/

Web 2.0 is not AJAX

Saturday, November 25th, 2006

AJAX was becoming popular for last few years. With the word ‘AJAX’ another simple word came into play ‘Web 2.0’. Some of us have been thinking that Web 2.0 is just using AJAX in a site which is not so true. AJAX may be a key element of web 2.0 but not the basic concept. The basic idea of web 2.0 is “the content of the site is decided by its users”. AJAX and CSS is used to create a simple interface. With the use of AJAX, a user can do many things without refreshing the same page like a desktop application.

As you all know quite good examples (best known as web 2.0 winners) for web 2.0 are digg, flickr, del.icio.us, youtube. These sites are really popular, have a great amount of users everyday, and new content arrives in each minute. Of course the secrete is web 2.0, the content is decided by the users.

An AJAX mistake

Sunday, October 22nd, 2006

Yesterday (Saturday) I was running the IOI grader on university of moratuwa for their ACM selection tests. As far as the grader functionality is concerned, it worked perfectly. But unfortunately the grader interface was damn slow. There were only 26 contestants and it was on a 100 Mbps LAN. So, I had to restart the server time by time. So, I just looked at the log files and found out there was a huge number of requests. But why is that? Because our grader is using AJAX to grab the latest status. The AJAX script was generating a request for each 2-3 seconds. To make the things worst, those were keep-alive requests. So, not only that the server was using the maximum number of threads, the script keeps sending the requests to the same connection so the connection doesn’t break until it meets the maximum number of keep alive requests. When several guys are sending requests others have to wait in the queue. I simply changed the refresh time of the AJAX script and the number of maximum threads on the apache server. After that restarting the apache server solved the problem, more or less.

Kathapettiya Released

Monday, September 25th, 2006

Kathapettiya alpha version has been uploaded to the site. www.kathapettiya.com. It’s not completed yet, but working demo is online. Just try it and send your comments. Oppss…. Forgot to tell you, I didn’t implementing the channel delete function ;-). Totally forgot to do that. Will do that when I have time.

AJAX, wow it’s getting really popular

Saturday, June 24th, 2006

Yesterday, I was browsing through digg.com programming channel. Mmm.. Impressive, more than half of the stories are related to ajax. So, I decided to write about bit of ajax today.

The main advantage of AJAX is that it works like a desktop application; instead of refreshing the page every time you change something, you can interact with the server then and there. When we talk about the disadvantages, there are a lot; bookmarks, back button, search engine incompatibility, etc (there are hundreds of articles in the internet regarding these.. so, I’m not going to repeat those ;-) ). But use of some hacks will help you to avoid those problems.

There are plenty of AJAX frameworks, both client side and the server side ones. I have gone through many of them and found out that one of the bests is rico. This simple javascript client side framework also contains some animation effects and drag and drop feature.

If you had a careful look at the popular javascript frameworks, you’ll see that most of them are based on prototype. Prototype is a really powerful javascript framework which allows you to create classes.

When we consider about the server side languages, using php is really easy. It’s a simple light weighted language and php applications can be executed in almost any web server (of course only if it supports php).

So, this great combination of tools will make you ajax life easier; prototype, rico and php.

P.S. : As I have mentioned in an earlier post, firebug will help you a lot on debugging.

Rico = Javascript + XML = AJAX

Saturday, June 10th, 2006

After successfully finished an AJAX project (a simple AJAX Content Management System), this time I’m going to create a complete AJAX site. The CMS was created without using any 3rd party frameworks, and had a great time debugging the javascript code. So, this time I decided to use a framework.My choice was Rico – A client side javascript framework. It also provides some javascript animations and drag n drop features – haven’t tried those yet. Actually, this made my work much easier. If I want to update the value of an element, then I just have to create a piece of xml code, the framework parses it and updates the element automatically. But it only supports updating an element value, if I’m doing something outside that, I have to parse the code manually and do it. So, I created my own mini framework using Rico:). Now, it’s really easy.

When I was creating the CMS, the alerts did a great job ;). It really helped me to debug the javascript code. But this time, Rico blog directed me to a nice extension for firefox – FireBug. It’s really cool. Actually, the main advantage is, it captures all AJAX events. Simple and Useful.