tag:blogger.com,1999:blog-29596195807732576552008-03-27T04:34:17.144-07:00Random CrapDumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comBlogger10125tag:blogger.com,1999:blog-2959619580773257655.post-33462530591381087792007-10-04T16:01:00.000-07:002007-10-04T16:39:51.224-07:00WSO2 Identity Solution 1.0 Beta ReleasedWe released the WSO2 Identity Solution 1.0 Beta, just a few minutes ago. It is really good to see things that were developed independently, fit in nicely to produce a larger solution.<br /><br />Please give it a try and send us your feedback.<br /><br />Here goes the traditional release note...<br /><br /><pre wrap="">WSO2 Identity Solution 1.0-beta Released<br />========================================<br /><br />WSO2 Identity Solution team is pleased to announce the release of WSO2<br />Identity Solution 1.0-beta.<br /><br />Release artifacts can be downloaded from :<br /><a class="moz-txt-link-freetext" href="http://dist.wso2.org/products/solutions/identity/1.0-beta/">http://dist.wso2.org/products/solutions/identity/1.0-beta/</a><br /><br />WSO2 Identity Solution provides the following components to enable<br />CardSpace authentication for web applications.<br /><br />* An Identity Provider<br />The identity provider includes an application to issue information<br />cards and a security token service. Security token service can be<br />deployed to issue tokens to trusted users. An identity selector will<br />obtain tokens from the Identity Provider and authenticate the users to a<br />Web applications with those tokens.<br /><br />* A set of Relying Party components<br />Relying party components include an Apache HTTPD module and a Servlet<br />filter. The HTTPD module can be used with any Web application that is<br />hosted with Apache HTTPD irrespective of the implementation language.<br />The Servlet filter component is intended for Java based Web containers.<br /><br />Key Features in this Release<br /><br />* Identity provider<br />- Supports connecting to a JDBC or an LDAP user store<br />- Issues information cards based on username-token credential and<br />self issued credential<br />- Allows adding custom claims and mapping them to user attributes<br />in the user store<br />- Revocation of issued information cards<br />- Manage trusted relying parties<br />* Apache HTTPD relying party module - mod_cspace<br />* Java Servlet Filter relying party component<br /><br />Reporting Problems<br />------------------------------------------------------------------------<br />Issues can be reported using the public JIRA available at<br /><a class="moz-txt-link-freetext" href="https://wso2.org/jira/browse/IDENTITY">https://wso2.org/jira/browse/IDENTITY</a><br /><br />Contact us<br />------------------------------------------------------------------------<br />WSO2 Identity Solution developers can be contacted via mailing lists:<br />* For Users: <a class="moz-txt-link-abbreviated" href="mailto:identity-user@wso2.org">identity-user@wso2.org</a><br />* For <a class="moz-txt-link-abbreviated" href="mailto:Developers:identity-dev@wso2.org">Developers:identity-dev@wso2.org</a><br />For details on subscriptions see<br /><a class="moz-txt-link-freetext" href="http://www.wso2.org/projects/solutions/identity#mail">http://www.wso2.org/projects/solutions/identity#mail</a><br /><br />Thank you for your interest in WSO2 Identity Solution<br /><br />WSO2 Identity Solution Team<br /></pre>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-60270291518531593502007-09-25T14:35:00.000-07:002007-09-26T04:22:41.869-07:00Lecture of a lifetime - Achieving your childhood dreamsI got <a href="http://www.youtube.com/watch?v=ZQtwEKlUutA">this</a> (sad, funny, entertaining, moving, motivating, you name it...) video clip from a friend. Randy Pausch a CMU professor dying of pancreatic cancer delivering his last lecture. If you find it good, watch the whole 2hour lecture <a href="http://www.cs.cmu.edu/front_im/pausch_9-18-07.wmv">here</a>.<br /><br />Best thing about this lecture is its finale. I think I never have seen (or attended) a lecture with such intense ending that made me think over and over again. I wouldn't say that this lecture changed my life though it for sure made a huge impact. At the very least, it made me think seriously, whether I do what I always wanted to do?<br /><br />Talking about childhood dreams, I don't think it'd be easy to achieve my childhood dreams, except for a few. Mine are not as specific as Randy's, they usually are more generic in nature. However, it is not the time to reveal them yet (huh! topsy krets). Hopefully, I would someday be able to blog (or do the equivalent of blogging then) on my childhood dreams and how successful I was in achieving them.<br /><br />The whole lecture was full of food for thoughts, but one clue in particular on achieving childhood dreams:<br /><blockquote>Brick walls are there for a reason. They let us prove how badly we want things.</blockquote><img style="border: 1px solid blue; z-index: 90; opacity: 1; position: absolute; left: 253px; top: 111px;" id="smallDivTip" src="chrome://dictionarytip/skin/book.png" />Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-11416815392804035092007-09-11T16:00:00.001-07:002007-09-25T14:25:34.738-07:00What's my blog rated?Browsing around randomly - well, I was using google, so it was not entirely random - I found <a href="http://mingle2.com/blog-rating">this</a> funny web site which claims to provide a "Film Rating" for any blog.<br /><p><a href="http://mingle2.com/blog-rating"><img style="border: medium none ;" src="http://mingle2.com/img/bb/blog_rating/pg-13.jpg" alt="" /></a></p><p>Huh! my blog is rated PG-13. For 10x use of "crap" (can't help it when the blog it self is named "Random Crap") and 1x use of t i t.... What? Where did I say that? I searched through the whole blog, couldn't find where that is. Probably in html format only.... so I opened up a page source window and searched for the three letters followed by a space. Hmm, strange, I still can't find it. Could it be that their analysis is faulty somehow?</p><p>Anyway it's nice to have such a badge on your blog. Looks cool...</p>PG-13? who writes for children under 13? CRAP once more!!! Gimme an R.<br /><br /><br /><span style="font-weight: bold;">Update (25/09/20007): </span>As Yasith pointed out in his comment, after this post, my blog is rated R (isn't that great?):<br /><br /><a href="http://www.justsayhi.com/bb/blog_rating"><img style="border: medium none ;" src="http://www.justsayhi.com/bb/img/blog_rating/r.jpg" /></a><br /><br />For once I thought it would be a hard thing to achieve such an honor. Oh! it's just 13 craps and one word which happened to truncate in a totally unintended way, over which I have no control. Shame on blogger ;)Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-44893434353030484222007-06-05T12:09:00.000-07:002007-06-06T12:57:30.453-07:00Go Offline with Google ReaderIt has been a long time since I gave up my offline RSS reader. I loved the google reader interface and it's usability since it was in public beta. Only disadvantage about using it was that I had to be online to read any RSS feed, which hard was a problem for me.<br /><br />I have been extremely busy these days due to an extended us trip and some deadlines to be met. Thus did not log in to the google reader for the last few weeks, until this evening after finishing my work. The first thing got my attention was a link in the top right hand corner which said offline. That was something I saw there for the first time. I was thinking may be they have written a stand-alone application to complement the web UI. Anyhow, I just clicked on it to check what it is and there I got the surprise of the month for sure.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_q8Da8bf-x2I/Rl56RpA_41I/AAAAAAAAAA0/k6jq6URiFYo/s320/sync.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 242px; height: 88px;" src="http://bp1.blogger.com/_q8Da8bf-x2I/Rl56RpA_41I/AAAAAAAAAA0/k6jq6URiFYo/s320/sync.png" alt="" border="0" /></a>Now you can save the latest 2000 items to your machine so that you can read them offline. 2000 is a decent amount I guess. This feature has been introduced to google reader only a week ago on the 31st May. It uses the recently released google gears, a browser plugin which enables writing offline web applications. It should rather be called a toolkit than a browser plugin. The official google reader blog says:<br /><br /><blockquote>To do this, we've used the newly released <a href="http://gears.google.com/">Google Gears</a>, a browser plugin that enables offline web applications. Once you've installed Google Gears, you can download your latest 2,000 items so they're available even when you don't have an internet connection. To get started, simply click the "Offline" link in the top right of <a href="http://reader.google.com/">Google Reader</a>.</blockquote><br />Here is my google reader gone offline, yay!<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_5b3DddfUW7w/RmcN2nby0aI/AAAAAAAAABY/5x3WZTroq7c/s1600-h/groffline.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 421px; height: 261px;" src="http://bp1.blogger.com/_5b3DddfUW7w/RmcN2nby0aI/AAAAAAAAABY/5x3WZTroq7c/s400/groffline.png" alt="" id="BLOGGER_PHOTO_ID_5073038737205809570" border="0" /></a>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-51001927097001237272007-05-08T12:47:00.000-07:002007-05-10T13:24:25.870-07:00Axis2/C 1.0 ReleasedApache Axis2/C 1.0 was <a href="http://www.bloglines.com/blog/samisa?id=53">released</a> a few days ago. Well that was last Sunday, the 6th. The release was delayed by a few weeks due to improvements and fixes suggested.<br /><br />Wow! what an achievement, of course I am happy to be (however vanishingly small) a part of the <a href="http://www.bloglines.com/blog/samisa?id=51">great amount of human hours used </a>in this exercise.<br /><br />In the meantime, Apache Rampart/C project, the WS-Security implementation for Axis2/C has plans to release 0.90 by the end of this week. We found a small memory issue with our xml canonicalization (xml-c14n) implementation yesterday, and it is fixed now. You can test the release artifacts from <a href="http://people.apache.org/%7Ekaushalye/release/rampart-c/0.90/">here</a>.Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-42367725872987749462007-04-13T15:46:00.000-07:002007-09-26T04:23:22.490-07:00On Bits, Bytes, and Bitrates<span style="font-weight: bold;font-size:100%;" >How fast can you download torrents?</span><br /><div style="text-align: justify;">This is one of the problems that I get from most of my friends who are into torrent downloading business. When I say that I get something like 55 kBps, with SLT ADSL basic connection, which offers 512kbps downstream, most of them go nuts! What the heck happens to the 457? If you wonder where 457 came from, try subtracting 55 from 512.<br /></div><br /><div style="text-align: justify;">This post is a reply to all those who disagree with me at such discussions. Now I can ask anyone who starts arguing with me on this regard, to do their homework first, i.e., to read mu blog ofcourse!<br /></div><br /><div style="text-align: justify;">Theoretically, with SLT ADSL basic package, I should be able to download at 512kbps (i.e., 500Kibps, 62.5kBps, or 64KiBps). All these figures are in accordance with the IEC 60027-2 standards. IEC stands for <a href="http://en.wikipedia.org/wiki/International_Electrotechnical_Commission" title="International Electrotechnical Commission">International Electrotechnical Commission</a>. They define the standards on <i>Letter symbols to be used in electrical technology</i> [<a href="http://en.wikipedia.org/wiki/IEC_60027-2">1</a>].<br /></div><br /><span style="font-weight: bold;">kbps, kBps, Kibps and KiBps</span><br /><br /><div style="text-align: justify;">In the above paragraph, I've mentioned <span style="font-style: italic;">kbps</span> in four different manners (sometimes with an <span style="font-style: italic;">i</span> next to the k). This shows the difference it can make just by capitalizing a single letter of a letter sequence in engineering. Oh! did I say "gibberish"?<br /></div><br /><div style="text-align: justify;"><span style="font-weight: bold;">kbps</span> is a measure of data transfer speed. Some refer to it as a measure of bandwidth too. However, as bandwidth has no fixed definition at all, for some meanings of bandwidth, it may not make any sense to be measured by <span style="font-style: italic;">kbps</span>. Wikipedia has a great article on different meanings of the term "bandwidth". 1 kbps is 1000 bits per second (not 1024). This measure had been always used mostly (if not only) in telecommunication and there is no dispute over whether it is 1000 or 1024.<br /></div><br /><div style="text-align: justify;"><span style="font-weight: bold;">kBps</span> is the data transfer rate in 1000 Bytes (a byte is 8bits) per second. It is commonplace to write this measurement as <span style="font-style: italic;">KBps</span> or <span style="font-style: italic;">KBPS</span>, though it is not the standard. Also it is very common to use <span style="font-style: italic;">kB</span> to indicate 1024 bytes. Even it was used in almost all the computer applications that were built before the new millennium and in many applications even today. However, since IEC now have a standard for measurements of information too, <span style="font-style: italic;">kBps</span> stands for 1000 bytes.<br /><br /><span style="font-weight: bold;">Kibps</span> is pronounced <span style="font-style: italic;">kibi-bits per second.</span> The <span style="font-style: italic;">kibi-</span> prefix stands for 1024, in the same manner kilo- stands for 1000. This prefix was introduced to replace <span style="font-style: italic;">k</span>, the <span style="font-style: italic;">kilo-</span> prefix used in a binary sense.<br /><br /><span style="font-weight: bold;">KiBps</span> by this time it should be fairly obvious that <span style="font-style: italic;">KiBps</span> stands for <span style="font-style: italic;">kibi-bytes per second</span>. and that it is 1024 <span style="font-style: italic;">bytes per second</span>.<br /><br />In the same way <span style="font-style: italic;">Ki</span> is used for 1024 (2^10) bytes, <span style="font-style: italic;">Mi</span>, <span style="font-style: italic;">Gi</span>, and other respective prefixes are used to represent 2^20, 2^30 and the respective powers of 2. (FYI: <span style="font-style: italic;">Mi</span> is <span style="font-style: italic;">mebi-</span> and <span style="font-style: italic;">Gi</span> is <span style="font-style: italic;">gibi-</span>)<br /><br /><span style="font-weight: bold;">Calculation<br /></span><br />Okay, now it's time for elementary mathematics.<br /><br />My ADSL connection is 512kbps download.<br />Therefore it is 512*1000 = 512000 bits per second.<br />That means (512000/8)/1000 =64 kilo bytes per second.<br />also, 512000/1024 = 500 kibi bits per second.<br />and in turn, (512000/8)/1024 = 62.5 kibi bytes per second.<br /><br /><div style="text-align: justify;">giving 15% for noise, the actual download speed would be something like... (64/100)*85 ~ 55kBps.<br /></div><br /><div style="text-align: justify;">Afterall, I am a happy man, I get almost the most out of my ADSL connection practically possible.<br /></div><br /><span style="font-weight: bold;">Usage</span><br /><br /><div style="text-align: justify;">Even though the standards are there, it has not been adopted by many computer applications yet. For examples, Windogs still use <span style="font-style: italic;">kB</span> for 1024 bytes. Linux and other open source software (rulez!) like Gnome are among the first to use the standards.<br /></div><br /><span style="font-weight: bold;">Lessons to learn<br /></span><ol><li style="text-align: justify;">If you have an SLT ADSL basic package and your torrent client says that it is doing 55kBps, don't complain, it is doing it's best.</li><li style="text-align: justify;">Never trust the computer when it comes to storage sizes or data transfer speeds. You never know (if it's manual specifically says so) whether <span style="font-style: italic;">k</span> stands for 1000 or 1024, and whether <span style="font-style: italic;">M</span> stands for 1000000 or 1048576.</li></ol></div>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-56679616927592098292007-04-04T09:11:00.000-07:002007-04-04T09:21:14.329-07:00Someone Else<span style="font-weight: bold;">Someone Else</span><br /><span style="font-style: italic;">by </span><a style="font-style: italic;" href="http://www.writeclique.net/work.php?ID=4803">Nuwan Ishantha</a><br /><span style="font-size:85%;"><br />Is this you who I see?<br />Or is it someone else?<br />Or is it someone else that I saw in you?<br /><br />Is this confusion?<br />Or is it that I "was" confused?<br />Confused that you were someone else, when you were still actually you?<br /><br />Am I who I think I am?<br />Or am I someone else?<br />Or am I just not the one I thought I was?<br /><br />Am I?<br />For I see that you are still who you are<br />But that you are still someone else.<br /><br />I am someone else.</span>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-43076508926982442252007-04-02T17:09:00.000-07:002007-04-03T20:09:57.090-07:00WSO2 Identity Solution Alpha Released!<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_5b3DddfUW7w/RhGjtV2N27I/AAAAAAAAAAo/VSFeYn_ItwY/s1600-h/ot-dist-is-logo.gif"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp1.blogger.com/_5b3DddfUW7w/RhGjtV2N27I/AAAAAAAAAAo/VSFeYn_ItwY/s320/ot-dist-is-logo.gif" alt="" id="BLOGGER_PHOTO_ID_5048996656613022642" border="0" /></a><br /><br /><br />This is bit of an old news. As I was not at home for the last week, I could not blog about this earlier than this.<br /><br />WSO2 Identity Solution is an open source implementation of Microsoft <a href="http://msdn2.microsoft.com/en-us/library/aa480189.aspx">CardSpace</a>, which is a standards-based solution for working with and managing diverse digital identities.<br /><br />I started working on the Identity Solution by accident, when someone was needed to write an apache module for this solution. Although there were many who knew better, and I knew nothing about writing apache modules, I got the chance since I was jobless (not exactly!) then. Afterall, it is the main project that I'm working on at the moment. At the first shot at it, things didn't look so good. I was trying to write the whole module using very low-level APIs, not knowing that there are a lot many comprehensive abstractions that can be used. Handler concept, which is new in Apache2 made my task a few orders of magnitude easier than it would have been in Apache 1.3.<br /><br />Nick Kew's companion <a href="http://www.apachetutor.org/">website</a> of the book "<a href="http://www.amazon.com/Apache-Modules-Book-Application-Development/dp/0132409674">The Apache Modules Book</a>" came in handy when I needed any bright ideas. I wonder how efficient I would have been if I had the book at hand. Thanks Nick, for the great effort.<br /><br />Release note:<br /><pre wrap="">We are happy to announce the alpha release of WSO2 Identity Solution.<br /><br />This release can be downloaded from the following location:<br /><br /><a class="moz-txt-link-freetext" href="http://dist.wso2.org/products/solutions/identity/alpha/">http://dist.wso2.org/products/solutions/identity/alpha/</a><br /><br />Key features of this release includes<br /><br />* An Apache2 module to enable CardSpace authentication on a<br />web application.<br />* A ServletFilter component to enable CardSpace authentication<br />on a Java servlet based web application.<br />* Two samples explaining the use of the above components.<br />(Please follow instructions given in the README files)<br /><br />Release artifacts :<br />-------------------------------------------------------------------------------<br />Binary distribution - identity-solution-alpha-bin.zip<br />Source distribution - identity-solution-alpha-src.zip<br /><br />Project Information<br />-------------------------------------------------------------------------------<br />Web site - <a class="moz-txt-link-freetext" href="http://www.wso2.org/projects/identity">http://www.wso2.org/projects/identity</a><br />Issue tracker - <a class="moz-txt-link-freetext" href="https://wso2.org/jira/browse/IDENTITY">https://wso2.org/jira/browse/IDENTITY</a><br />Mailing list - <a class="moz-txt-link-abbreviated" href="mailto:identity-dev@wso2.org">identity-dev@wso2.org</a><br /><br /><br />Thanks,<br />WSO2 Identity Solution Team</pre>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-25394148394224309032007-03-26T07:37:00.000-07:002007-03-26T12:54:19.453-07:00"Is not the Title of a Book, AFAIK" is not the title of a book, AFAIK - Part I<p style="text-align: justify;">It was too much for me to digest, the first time I encountered <b><i>recursion</i></b>. That was when I knew all the bits and bytes about GW-BASIC, an awesome language for the beginners at the time. BASIC allowed all the hacks that aren't possible with modern languages while providing very least of the structured programming constructs. Still, many people used BASIC and it was fairly adequate for not-so-impressive programs (usually written by the owner of a pc) a layman would have ever needed. It was a time when I could write a program to find all the permutations of a given set using a myriad of <i>goto</i>'s pointing every here and there of the program. Yet it was so familiar and easy to write, although all the programming text that I came across said that's not the way to do it. Duh! who cares about those structure-worshiping authors. I can do it in fewer lines than they do!</p><div style="text-align: justify;"> </div><p style="text-align: justify;">However, that was history. Much later at some point in time, I switched the language that I use to program from BASIC to Pascal. Suddenly it all seemed so easy. Structured programming seemed to be the way to go. Recursion was so natural with Pascal procedures. I wondered why I didn't start programming in Pascal earlier than this...</p><div style="text-align: justify;"> </div><p style="text-align: justify;">This change in programming language alone was one of the reasons that made me to grasp recursion quite easily. You can call one procedure within itself. But, only if you make sure that your procedure stops recursing (calling itself) at some point, your program would really work. Recurse ad infinitum is something that we can never achieve in the limited time frame that we live in, no matter how fast the recursion is performed, albeit if pull together some alien technology from Stargate (SciFi) to build our computers.</p><div style="text-align: justify;"> </div><p style="text-align: justify;">Infinitely many recursion, though can not be used with computers, is used extensively in mathematics, for it only is a thought process that proving theorems are involved with. The most popular such usage would be induction. We show that some statement <b>P</b>(<b><i>n</i></b>) is true for some initial value of <b><i>n</i></b>, and for <b>P</b>(<b><i>m</i></b>+1) if <b>P</b>(<i><b>m</b></i>) is. As we have already proved that <b>P</b>(<i><b>n</b></i>) is true, from the second part of the proof, we have <b>P</b>(<i><b>n</b></i>+1), hence <b>P</b>(<i><b>n</b></i>+2), and hence <b>P</b>(<i><b>n</b></i>+3)... ad infinitum. It is preferred in mathematics to say for 'all <i><b>n</b></i>', instead of 'to infinity' due to certain technicalities, however. The basic idea is the same: apply the inductive statement over and over infinitely many times, you get all <b><i>n</i></b>.</p><div style="text-align: justify;"> </div><p style="text-align: justify;">Uh oh! I didn't notice that I wrote about a pageful of crap until I previewed the site just now. Original reason I started writing this post was to note down some self-referent statements that could be constructed using natural language. Being the way too technical low life I am, I got brainsick with the parallels of self-reference in computer languages. Thus I'd mark this post as part-I. I will follow up with a sequel soon...</p>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.comtag:blogger.com,1999:blog-2959619580773257655.post-45991535889604201832007-03-23T07:07:00.000-07:002007-03-26T12:16:22.576-07:00To Blog or not to Blog<p style="text-align: justify;">Alright, finally I made my mind up. I am going to start blogging yet again. Did I say "yet again"? Yes ofcourse...</p><div style="text-align: justify;"> </div><p style="text-align: justify;">Well, I had been maintaining a weblog the days I started programming seriously. I have been messing around with computers since I was in grade 6. But it was in the vacation of 8 months (?) or so I had after my O/L examination, that I took computing really seriously. All I did those days is looking for some clever way of writing a piece of software. So I made a note of things that I learn each day on a web diary. Mind you, those were the days that the word <i>blog</i> itself was yet to be invented. Writing programming stuff for a few months, anyone is destined to be bored with it. I am no exception; all work and no play makes dummy a dull boy! Besides, I had to prepare for my A/Ls the next two years. Hence that tech blog was long gone.</p><div style="text-align: justify;"> </div><p style="text-align: justify;">The next time I started blogging was when I was an intern at IFS. The whole purpose of that blog was to keep track of the work I did there. Since I did not maintain the industrial placement report, which was required to obtain my B.Sc., on a day to day basis, this blog kept the necessary information instead. Like many (almost all except for Nuwan and GL may be) other students, I wrote the report about a month after the training was ended, when the university asked us to submit it. This blog was hosted in MSN Spaces, and it served it's purpose very well. I had no idea of continuing that blog anyway.</p><div style="text-align: justify;"> </div><p style="text-align: justify;">Now, coming back to the present, I have started blogging yet again. This time, the content is going to be drastically different (at least I hope so) from my previous attempts at blogging. I may drop technical posts here and there, but I want it to be non-techy savy friendly this time.</p><div style="text-align: justify;"> </div><p style="text-align: justify;">So here we go...</p>Dumindu Pallewelahttp://www.blogger.com/profile/11917586605875038397noreply@blogger.com