{C++ etc.}

Latest Posts
Home | C++ Posts | Linux Posts | Programming Posts | Issue Tracking Posts

Wednesday, November 01, 2006

Millennium IT Launches MARC

MARC (Millennium All-Island Robot Competition) is a new project by MIT to promote IT among teh Sri Lankan community. The objective is simple...

In the year 2100, a spaceship orbiting the planet Mars is hit by an asteroid and is minutes away from destruction. The spaceship is a biological research lab containing valuable experimental data. You are the only crew-person on the ship and manage to reach an escape capsule. You notice a utility robot near by and decide to re-program it to collect experimental data packages scattered throughout the ship and return to the escape capsule before its battery runs out.

MARC - Millennium All-island Robot Challenge is a programming competition aimed at promoting the software industry among school children and university students. Competitors are expected to design an algorithm to navigate spaceship using the robot’s vision and implement the algorithm using an API available in all popular programming languages.
I'm going to try my hand at this in a while.

Project Assignment

Training has been going on for the past two months. We've finished writing the "Mini Trading System" and it's time for us to get in to the real world of software engineering. I got the news that I was assigned to "Millennium Street Access", the next major product to be released by Millennium IT, the other day. Still don't know which process I'll be working on but one thing's for sure... It's going to be a huge responsibilty. Maybe the biggest responsibility I've had to shoulder my whole life.

Monday, October 30, 2006

Auto Hunt

I'm searching for a car these days. Something small and affordable, which means that I will have to settle for something which is about 10 years old. Sri Lanka's 200-300% taxing on vehichle has taken it's toll on the middle class workers. I'll most probably get a 1994 Corolla or a Lancer GLX.

Lanka Link classifieds
is a nice place to find old used cars but it has a really clumsy search and listing system which means that you will have to scroll down hundreds of adds before you get down to the latest ones. No sorting available.

Auto Lanka is another cool place to find used cars but it doesn't have as many listings as the previous one. Anyway it'll still be a few more months before I actually get down to buying a car. Hope prices would go down by then ( and pigs would fly...)

Thursday, October 05, 2006

First post from Windows Live Writer

Still going through training at MIT. I wasn't able to setup live writer the last time I downloaded it. Had to add the numeric id given to my blog page (i.e. "blogID=xxxxxxx"after you sign in) as the feed id.

We don't have any work just yet so most of our time is spent browsing the net or playing badminton in the gym. Kasun and Sagara who are two of the best players among us, got beaten by Sandani and Chathuri today.

Tomorrow's a poya day. There's a car wash organized by the Leo Club.

Thursday, September 14, 2006

Life: Life at Millennium IT

Submitted the final reports for our projects the day before yesterday.
Joined MIT on the 1st. Going through a (hopefully) 2 month long training at the moment where they give you a heads up on C++ and an indepth details of the stock trading software (Millennium Exchange).
Life's back to the 9 hour work mode...

Monday, July 31, 2006

Life: CSE AGM 2006

Work on the AGM of the Computer Science and Engineering Society of the University of Moratuwa and the annual get-together of the CSE department is in full swing. It will be held on the 5th of August at HNB Towers (we could have gone for Taj but I messed up and we couldn't get it for the 5th or the 9th). Designed a t-shirt and a poster so far.

Design for the T-shirt. The gray area's supposed to be black.

The poster started off pretty well but ended up being close to a mess (not actually a mess but very close). I did the design for a 5'x7' poster and later found out it was going to be 6'x10' which has totally different proportions. So I adjusted everything manually, working at full size and 300 dpi. Later found out that I couldn't save the file because all my scratch disks were full and the only formats available were .raw and .tiff. Finally (after deleting alot of my files) saved it in both formats. The .tiff o/p came out well but the .raw file was corrupted which meant that I couldn't do any editing of the original.
Shakila's doing the DJ. Had a meeting with the principal of R.M.V. and Management Committee. Should get the approval to print the sticker pretty soon.

Thursday, July 13, 2006

Life: Sri Lanka Local Governance Leading Practices Symposium; A Success

The ladies of the group...Biyanka, Rasini, Erangika, Iresha, Ayomi, Gayathri, Dinelka and Dinu

The registration team

The presentation team

The whole team

Mr. Haththotuwa(Haththa) Mota,Fonsa, Daham, Kamal, me, Demith and Lasiya

The guys of the team...once more

The guys of the team...again

The guys of the team

Awards Presentation

Leo Fonseka presentation

Behind the scenes...translations and preparation of presentations...Surani madam, Ira, Demith, Samanmalee, Iresha

Premjit, Ayomi, Biyanka

Day 2 Morning before registrations


Lasiya, Ayomi, Dinu and Erangika

Me and Kota

Lasiya, Rasini

The BMICH main hall

The Registration Team

Fonsa being funny

The SLLGLPS 2006 was a huge success. Apart from the problems we had in registrations on the first day, the rest of the proceedings went smoothly. Me, Atula, Lasiya, Rasini, Ayomi, Fathi, Erangika, Jumma, Demith, Dinu and Balla handled registrations while Kaputa, Kamal, Kota, Daham, Sameera, Muffaz, Mufthaz and a few others handled presentations. Chaminda was the one who designed the registration software. On the first day we got really late. We slept late because we stayed up till 3.30 in the morning and it was impossible to get up by 5.30. It was alost 9 o'clock when we got to the BMICH and most of the registration work was finished by then. We planned to put up cues for the next day so that people couldn't come up to us in groups. This worked well and there weren't as many registrants (on the first day there were close to 600 but the next day it was down to about 300). We also made a CD with all the presentations but couldn't distribute it among the participants. They said tehy were going to mail it later on. We have to collect our payments today. But event without any pay, it was a great experience and that's what counts at the end.

Wednesday, July 05, 2006


RMV OSA stands for "Ranpokunagama Maha Vidyalaya Old Students' Association". RMV was my first school. It was called Ranpokunagama Primary School back then and we were the first batch to study there. So, it holds a special place in my life.

The school has expanded and now has Advanced Level Classes. But it doesn't have nearly enough resources. We formed the OSA in hope of doing our best to support the school but the administrative system of Sri Lanka gets in the way of this. We weren't able to notify the Divisional Education Office about our formation because the Director wasn't there when we went there yesterday. Once we hand over the documents, they will be processed and the organization will be approved (or rejected...I don't know).

We were planning on printing a sticker in order to raise funds for our future projects but it has been halted because the principal insisted that we had to have the consent of the OSA granted at a general meeting. But to hold a general meeting we have to get together 100 members. We only have 13 at the moment.
Hence, we have resorted to holding a raffel. The students would not get anything out of it initially (unlike in the sticker project).

We'll be having a meeting on Sunday and hopefully things will be resolved there.
Thilini has sent letters to all. Romesh and Anushka want to have a function where teachers and Old Students meet but I don't know how practical this is. Have to get Thilini to draft a sponsorship letter as well.

Have loads of translations to do and have to check whether I have a copy of the client monitoring proect that we did at Ramedian.

Thursday, June 29, 2006

Life: LKiNG Camp, IITC Research Papers and SLLG Leading Practices Symposium

Lighting the oil lamp representing fellows at the 2nd LKiNG Camp

Staying off bloging for a week has forced me to give a heading to this post which is by far the biggest so far.
I took part in the LKiNG camp held on the 24th and 25th which took up most of my weekend. It was pretty interesting. There wasn't alot of technical content because there were alot of participants who were at the novice level when it came to networking and internet technologies.
I met loads of interesting people. There were three guys from UCSC, Hasitha, Kasun and Priyanga.
Another undergraduate from University of Ruhuna was called Isuru Mudalige. I took an instant interest in the guy because he had my surname. I took some interesting pics. Hopefully I'll remember to bring them along next time I go home.
BTW mom had a cataract operation yesterday. Dad said there weren't any complications.
We have to hand in a research paper for the IITC conference by Friday. Most of the hard work is finished. Thank God the deadline was extended by two days. Otherwise most of us won't have been able to finish.
Got a new project yesterday. Working with the team assigned to the Sri Lanka Local Governance Leading Practices Symposium from our university. My amin job is to translate documents from Sinhala to English, a task made pretty difficult because of heavy usage of administrative terms in most of the documents.
There's alot of other stuff to be done for the RMV OSA, the Old Students' Association of my first school and regarding the CSE AGM.
Next few are going to be really hectic.

Sunday, June 18, 2006

Leisure: Gaming, Gossip and Graphic Designing Podcasts

G4 tv has made available some segments from their shows (attack of the show, x-play, filter etc.) as free podcasts. All of them are interesting but as a gamer my favourite one is x-play.
G4 TV Podcasts

Photoshop TV and Quick Tips for Designers are two podcasts which bring you the news and techniques from the world of graphic designing.

Life: E-Learning

Our CSE department has been one of the foremost educational institutes to adopt e-learning in Sri Lanka. We do our semester registrations online which saves alot of hassle and paperwork. All assignements are available in our online system called "LearnOrg" and we could submit our answers through that too.
This semester we had a nural networks course module and all the study materials were put down in two cd's and handed over to us. No lectures. We had to do a pretty hard assignment as part of the continuous assesment process and that was it.

The neural networks exam will be held on wednesday (21st) and all of us sitting infront of computers watching the lectures and reading the handouts.
But is this the way to go about adopting e-learning... by completely doing away with actual confrontation between students and the teacher? Somehow this doesn't give the same feel as having to sit through lectures and taking down notes and asking questions if one had any. And when the end of the semester arrives, you find that you haven't actually achieved much and you have alot to catch up on.
Maybe it's just me. I don't know. But I think e-learning should be an additional component of learning to reinforce the actual learning process. Not a replacement.

Wednesday, June 14, 2006

Code: J2ME Programming...The First Few Steps

A few months back, I did some J2ME coding for one of my projects. But I didn't really take off on the mobile programming front. The realization of the potential packed into new java enabled mobile devices has compelled me to take up programming for mobile devices, once again. Last time around I used the NetBeans IDE and wanted to try out something different this time around. Surprisingly, I found that neither Eclipse not IntelliJ IDEA had a solid j2me platform. Both implemented plugins which seemed to be outdated and under-developped. The NetBeans mobility pack, on the other hand, provides users with an easy to use interface and it's a breese to use it. And it's free (not like IDEA). So it's back to NetBeans. I also downloaded the Sony Ericsson SDK 2.2.3 for the Java(TM) ME Platform to make use of their native API.
Let's see how things go...

Download Eclipse Download the EclipseME plugin
Download NetBeans and NetBeans Mobility Pack

Tuesday, June 13, 2006

Software. Leisure: Instant Media... Free, Easy and GREAT!

I was wondering around freewarefiles and stumbled across this gem of an app. You can use InstantMedia to subscribe to your favourite podcasts (audio or video). I know there are hundreds of apps which does the same. So what's so great about this? It's got a huge list of inbuild podcasts which you can subscrbe to instantly on almost every concievable subject. It's bound save you hours of work trying to find podcasts which are just right for you. It has alot of additional features which add a nice touch, like the toolbar on the side of the screen.


  • Subscribe to your favorite channels. Hundreds available.
  • New shows will appear instantly.
  • Internet High Definition - iHD
  • Full Screen Video - Supports DVD and HD quality videos.
  • Music and Audio - Plays all video and audio formats.
  • Play Modes - Plays both full screen and small format videos.
  • Playback Independence - Play shows whenever and wherever you like.
  • I´M Toolbar - An optional sidebar which sits on your desktop allows you to instantly see when new shows arrive.
  • Play both QuickTime and Windows Media files via a single player. No more switching back and forth from player to player.
  • Supports .wmv, .mov, .m4v, .mp4, .m4a, .wma, .mp3 , avi, .mpg and many more formats.
  • Integrated Catalog - Integrated Catalog of videocasts (video blogs), audiocasts, and news feeds
  • Download Management - Automated background downloading of large media files. Manages network disconnects seamlessly.
  • Built-in media library. Organize all your media in one place.
  • Auto delete shows in a given channel by age, size, max number of shows. Auto-filter show selection by keyword match.
  • Create multiple playlists for your audio and video files.

Downlod: http://www.freewarefiles.com/program_6_212_21032.html
Product website:

Life: Transition

I got my first computer in 1988, when I was 6. It was an Atari 800XL. That was the only computer I had till 2001.
I craved for computer. I dreamt of all the things I'll be able to do with it. Meanwhile my life was going on as usual, with long nights of reading and grueling days of farming. I enjoyed good books and I loved to watch my crops grow and bear fruit.

I have a computer now. I don't read as much. I don't do any gardening. I play games most of the time. I also have a phone. I listen to radio, read, play more games and browse the net with it. Every night I go to bed wearing the phone's headset and listening to "Yes.FM". I haven't yet done most of the things that I thought I would do when I get a computer. I want a PSP, a laptop and an XBox 360. I've become more materialistic.
I crave for those long nights of reading and grueling days of farming.

Sunday, June 11, 2006

Phones, Software: Getting SE K700i to Work With Linux

I stumbled across this site by accident and thought it would be handy, specially because I'm in the process of converting to Ubuntu.
Haven't tried out any of this yet.

"Sony Ericsson K700i and Linux


Welcome to my little page about the Sony Ericsson K700i and how to make it work with Linux. Most of these instructions apply to Debian GNU/Linux, but you should be able to do similar things with other distributions - after all, most of the time, it's just about how to install the right packages - everything else should stay the same.

This is by no means a complete guide on what you can do with your mobile phone and Linux, just some hints which I want to share with you - most of these things I couldn't find anywhere else on the 'net."

Phones: TequilaCat BookReader - Text Reader for Java Enabled Phones

Last night I was going through my mails and thought it would be wonderful if Opera Mini had a built in PDF viewer. Couldn't find a solution for reading online PDFs but came across one for reading e-books on any java enabled phone. The software is called TequilaCat BookReader. You install it in a (Windows) desktop and add any e-books that you want. The application will convert it to a .jar file and you can drop it into your phone and view it there. Also found out that one can install jars on the SE K700 by dropping it to the root. All this time I was trying to move .jars into folders and they always ended up in the "Others" folder. This thread has alot of info about how to use TequilaCat.

Saturday, June 10, 2006

Phones: Nokia N71...What some reviews left out

I was reading this review on the Nokia N71 and it occured to me that The Smart Phone Show put out a more comprehensive review. All the nice features of the phone have been covered in the "InfoSync" article but they left out some major design issues such as:

- The camera on the front which is very susseptible to smudging and damage specially because it's right below the smart key on the front panel.
- The difficulty of pressing the nav keys and the rocket key.

- The bulk and the huge hinge which jutts out of the phone.

I just saw the video review of the phone so actual users might find more cons. But the list of pros are pretty long and gives you plenty of reasons to go out and buy this.

Friday, June 09, 2006

Leisure: Half Life 2 - Episodes

Valve has released the first of the HL2 episode franchise and reviewers are virtually losing their heads over it.

The character of Alex plays a major role in the game, as with the main HL2. The games are pretty short with average players being able to finish it in 5-7 hrs. They've added some in game guides to tell you how each particular section of the game was designed which appealed alot to reviewers. You can skip these and just play the game if you want.
The level of interaction with Alex is so intense that it get's one craving for a "Hug" key.
Episode two is next in line and the trailer is already out.
Official Site: http://ep1.half-life2.com/

Thursday, June 08, 2006

Code: Blogger Categories Using Javascript - The Complete Guide

Several methods have been suggested on this subject. I went through a few of them in order to add "Catagories" to my blog. Some improvisations had to be done to make it work so I thought I'll publish an easy to follow guide on the subject. Using javascript to hide catagory names in the TI


  • Taher Baderkhan - Calling Blogger advanced search using javascript. link
  • Sean - Using javascript to hide category names in the title. link

The process would be done in three steps.

  • Step 1 - Add function to use Blogger advanced search and add links for each catagory to call it.
  • Step 2 - Hide categories included in the title.
  • Step 3 - Add a line to indicate the categories under which each post had been posted.

Let's get down to business.

Step 1 - Add function to use Blogger advanced search and add links for each catagory to call it.

Add this javascript function within the
<head> tags of the blog (outside the <style> tags).

<script language="javascript">
var blogUrl = "YOUR BLOG ADDRESS";
function showCategory(category){
var encodedCategory = escape("\"" + category + "\"");
var url = "http://search.blogger.com/?ui=blg&as_q=";
url = url + "&bl_url=" + blogUrl + "&bl_pt="
encodedCategory + ":";
window.location.href = url;

Make sure to replace the above words [YOUR BLOG ADDRESS] with your blog's address. Don't include the www part of the address. inclose the blog's address in qutations

Categorizing your posts

Every time you create a new posting make sure to prefix the title of the posting with the name of the category. That’s all. For example, if your posting has the title "Nice Flowers" and you want to add it to the category "Garden" then your posting's title should look like this

Garden: Nice Flowers

Creating the Category URL in the sidebar
To create a category section for your blog. The URL for a category should look something like this

<a href="javascript:showCategory('THE CATEGORY');">THE

Clicking on the link will display all the postings under that category in the blogger search page.

I did not intend this at the begining but I realized that you can even add your posting to more than one category. All you need to do is prefix all the categories to the posting's title. You can seperate categories with commas or semi cololns. For example: If you want to add the "Nice Flowers" posting to the categories "Garden" and "Environment" then the title should look something like this

Garden, Environment: Nice Flowers

The only problem with this solution is that if you insert a new posting it takes few minutes until the blogger search engine indexes your page. So, in the first few minutes clicking the category link won't display your latest posting. I have tested this and I found out it takes around 5 - 10 minutes for your result to be displayed in the category search page. Not bad

Step 2 - Hide catagories included in the title.

It's not nice when you have all the catagory names appearing in your post titles. Let's add a function to strip catagories when displaying them.

<script language="javascript">
var post_catagory_js='';

function filterCategory(category) {
var tok_array = category.split(":");
post_catagory_js = tok_array[0].replace(/:/, '');

.replace(/:/, ''));

function addCategoryComment(){
var cat_array = post_catagory_js.split(",");
document.write('Filed under ');

cat_string = cat_array[i].replace(/,/,'');
document.write('<a href=\"javascript\:showCategory

(\''+cat_string+'\')\; \">'+cat_string+'</a>');

if(i != cat_array.length-1) document.write(',');



You'll notice that there are two functions. The first is the one we'll look at for the moment. It will strip off the section of string which precede the ":" symbol. If you use a different symbol to differentiate the categories section and the actual post section, just insert it in place of ":" in the following lines:

var tok_array = category.split(":");
post_catagory_js = tok_array[0].replace(/:/, '');
document.write(tok_array[tok_array.length-1].replace(/:/, ''));

The "replace(/:/, ''" parts are not essential. You can leave them out if you want to.

Now, find the "<$BlogItemTitle$>" tag in your template and replace it with:

<script language="javascript">


and replace “<$BlogPreviousItemTitle with:

<script language="javascript">



Step 3 - Add a line to indicate the catagories under which each post had been posted.

This is where the function addCategoryComment, which we saw earlier, comes in handy. Since we have already added the javascript function, we can get down to adding the "Filed under [categories]" section. Note that it's assumed that you used "," to separate categories. I wanted to insert this at the bottom of the post. You can insert it anywhere you want with some minor adjustments.

Find the "
<$BlogItemBody$> " and add the following html code right next to it.

<br><ct><script language="javascript"> addCategoryComment()</script></ct><br>



<script language="javascript"> addCategoryComment()</script></ct><br>

Note the
<ct> tag. This is to add a different style to the string. If you leave this out, the default style used in the post string will be applied to the footer that we'll be adding.

The style called "ct" doesn't exist in your stle sheet. Adding:

.post ct {
font-family: sans-serif;

should fix this.

You're done! Just remember that you have to wait a few minutes (hours?) before you start getting search results.

Btw. This post was partially written in MS Word 2007 beta 2 blog writer. I had to paste the codes in dreamweaver and paste it back in word in order to get the correct html.

Software: Free Software Magazine

Want to know the latest from the world of free software? Then this is the place for you.

About Free Software Magazine

Free Software Magazine is the only magazine worldwide that is dedicated to the promotion of free software as a whole.

Our website is based on the fantastic free software Drupal CMS.

For more information on what we mean by "free software" visit the Free Software Foundation (FSF).

Pretty Impressive hah. Subscribe to their feed here.

Software: Feed Reader 3...Disappointing

I'm a great fan of freeware and the open source movement (although I'm a part of it and my views are considerably oriented towards commercial software development) so it was a great disappointment to see that the free RSS reader, the aptly named FeedReader 3, did not perform at all well.

I usually don't read the documentation of any product unless it's pretty complex. So, with FeedReader, I set off to add feeds to it as soon as I got it. The first disappointment...the feed discovery process is extremely slow. It goes on for hours and then you get to select the type of the feed (Atom or RSS). Sometimes it crashes with an out of resources exception. I was trying to add one of my favourite feeds several times and finally, when it got added, I couldn't find a link to it anywhere. The posts from the feed were shown in unread posts but the feed itself was nowhere to be found. I'm sure there's a way to solve these issues but I couldn't be bothered, specially with the plethora of free RSS readers out there.

Wish I had seen this article sooner.

Wednesday, June 07, 2006

Phones: Sony Ericsson K700i Under 3" of Water

Phones have always given me a bad time. I've used four so far and two of them met their tragic ends when they (accidently) immersed themselves in salty water. That's right! not once but twice.

The first was a Trium Mars and it got soaked in sea water when a giant wave washed over us.

The Trium Mars

The second was a Motorola E360 and I fell into the Bolgoda river (on the edge of the University) while it was in my pocket. It convulsed and then went to a slow and painful death.
The Motorola E360

The next one, a Nokia 2100 was saved the plight because I sold it after using it for two months. As if to keep the tradition going, my latest phone fell into one of the draining systems in our hostel bathroom. Tadaaa! how happy I was...not. The phone was under 3" inches of soapy water (wish I could have taken a picture :)). While I was picking it up I was praying (to who ever might listen) not to distroy my baby. I turned it off as soon as it was out of the water but it turned itself on again. Classic signs shorts in the cirsuit due to conduction of water.
I took it apart and placed it infront of the fan to dry overnight. The next morning it was working fine. No overheating. No signs of corrosion. I'm as happy as a bee.
Good thing it fell into soapy water. If it had been salt water, it would have been "cyonara K700i"...

Software: Easy TV...Great way to watch TV for free

I just downloaded this app called EasyTV. It let's you watch a bunch of tv channels on your PC and what's more...it's FREE!!! I've already tested it on a few channels and it's working pretty well. Some of the feeds don't seem to work but there are plenty which does. If you wanna know what tv in Macedonia is like...this is the thing for you. (Surprise!!! they even have a few Sri Lankan channels!!!). Download it here.

Life: Pictorial

Here are some of the pictures that I took recently. I don't yet have a digi cam and have to use my phone (a SE K700i) so the quality's not that good...

The verendah...where we like to sit and talk in the evenings

Me in my room

In our garden 1

In our garden 2

In our garden 3

In our garden 4

In our garden 5

In our garden 6

In our garden 7

The (unconventional) path to our home...note the forest in the distance

Another shot of the path

Nittambuwa...the town situated 2km from out home

Random shot of the kandy road taken when coming home on bus

Where we spend most of our time during exam time...

We do like to party...alot. Adaya, Dinesh, Balla and Has (bet you can't see him) singing...