February 2008


I assume that most web-aware folks have seen or heard (or used) Google Docs, the online word editor by Google. It is certainly not the only one in existence and today I’ve tried Buzzword:

buzzword

google docs

Since it’s Adobe, the interface is a cool dark Flash interface (it seems that they are building lots of stuff round this platform these days) that basically makes you want to write something there. In terms of presentation, there are fewer icons on the top taskbar but more are available on clicking the icons on the right.

In terms of features, I’ve not found it too different from Google Docs, the most commonly used tools are there and it’s fussy-less and straight forward.

 

So how does it rate compared to Google Docs?

Pretty good and for writing my own documents, I’ll certainly use it. But I’m a bit wary of the collaborative aspect. It’s nothing to do with the editor but it’s just that most of my collaborators are already using Google Docs and I don’t think they’ll be that keen to move; in other words it’s inherently disadvantaged compared to Google Docs and that will I think be a major hurdle for this really cool text editor.

Can’t I get an offline version of this?

STL is a great library to use when programming with C++. It contains loads of helpful data structures (stacks, queues, lists, …) and a set of useful algorithms (sort, swap, min, max,…) which are efficiently implemented. However, there’s a major problem with STL; how to decipher the error message.

In the sample C++ program below, I have on purpose missed the iterator in the insert statement; instead of typing “aList.insert(aList.begin(),10);” I typed “aList.insert(10);”

Sample Program:

#include <iostream>
#include <vector>

using namespace std;

int main(){
      vector<int> aList;

       aList.insert(10);    // iterator purposely missed here

       return 0;
}

Error Message:

pascal@zetwal:~/temp$ g++ stltest.cpp
stltest.cpp: In function ‘int main()’:
stltest.cpp:9: error: no matching function for call to ‘std::vector<int, std::allocator<int> >::insert(int)’
/usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/vector.tcc:93: note: candidates are: typename std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<typename _Alloc::pointer, std::vector<_Tp, _Alloc> >, const _Tp&) [with _Tp = int, _Alloc = std::allocator<int>]
/usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../include/c++/4.0.3/bits/stl_vector.h:657: note: void std::vector<_Tp, _Alloc>::insert(__gnu_cxx::__normal_iterator<typename _Alloc::pointer, std::vector<_Tp, _Alloc> >, size_t, const _Tp&) [with _Tp = int, _Alloc = std::allocator<int>]

Do they seriously think I’m supposed to understand that???

Trust and Betrayal (Ruroni Kenshin)

First of all I’d like to explain the different parts of this anime; I myself was confused about it to start with. Chronologically we have the following in the series:

  • Samurai X: Trust and Betrayal (Reminisence)
    • This is an OAV (4 parts) that is the prequel to the anime Rurouni Kenshin. It tells the story of Kenshin who was found by Hiko, the master of Hiten Mitsurugi-Ryū, who trained him to be a skilled swordsman. However at 15, Kenshin leaves his master to join the Meiji restoration.

 

  • Rurouni Kenshin
    • An anime that has 95 episodes that tells the story of Kenshin after the Meiji restoration. It basically follows the story of Kenshin who now has a reverse blade sword while he tries to help people around him.

 

  • Samurai X: Reflection (Seisouhen)
    • This is an OAV (2 parts) that show the end of the series.

 

  • Samurai X: The Movie (Ishin Shishi he no Requiem)
    • A movie that is chronologically (I think since I have not seen it yet – will be updated by the end of this week) between the anime and Seisouhen.

 
This is one of my favourite anime and Samurai X: Trust and Betrayal is just one of the best anime I’ve seen so far. Instead of just being a classical sword fighting anime with blood gushing in all directions, the anime ranges from serious, funny, and even sad. Samurai X doesn’t have the funny part but it’s a stong anime from start to end as we see the story of Kenshin fighting for a cause he believes in, finding love and eventually …

A definitely must see anime!!!

passion_benjamin_zander.gif

The other day I was asked that question again: “What does it take to be good at programming?” Normally I would analyse, think and blurt out a list of crap list a set of qualities and but that day I just spontaneously replied: “Passion“.

Everyone can draw but with varying ability ranging from drawing a drawing a dog that looks like a cow to being able to paint like Picasso.

Programming is an art as well since it involves creating codes and algorithms to solve problems – an algorithm is just a set of instructions which if properly followed will solve a problem and I believe anyone can specify proper instructions for a task. So, if we can train people to list down their instructions for a problem properly, we can create programmers but being able to create good programmers is another story. Just as we can’t train people and make them become Van Gogh or Picasso, we can’t train people to make them great programmers.

Passion is an emotion of feeling very strongly about a subject. Passion is an intense emotion compelling feeling, enthusiasm, or desire for anything and often requiring action. Passion often applies to lively or eager interest in or admiration for a proposal, cause, or activity. - Wikipedia

tv_homepage.png

One of the major contribution of Claude Shannon to Computer Science is the Information Theory. In simple terms, the Information Theory states that:

The value of Information is inversely proportional to its probability of occurrence.

For example, saying that the Sun will rise in the east tomorrow is insignificant information – the sun rises in the east everyday; no big deal really. However, if the sun will tomorrow rise in the west, this is massive news since the probability of the sun rising in the west tomorrow is nil!

The New Information courtesy MBC

Watching the MBC news led me to conclude that the MBC must have redefined the Information Theory. I don’t think that they’ll divulge that coz it’s most likely an Industrial Secret. So I’ve tried to analyse the news and guess what formula they might be using for their new Information Theory and this is what I have concluded; the three laws of MBC Information Theory.

Law 1:

The value of Information is directly proportional to the number of ministers present or to the importance of the minister in the event covered.

Law 2:

Nothing bad ever happens in Mauritius (or if it happens, it’s the “previous government” to be blamed).

Law 3:

Mauritius is the centre of the world and nothing (or very rarely something) happens outside Mauritius.

The different laws explained:

1. From what I’ve observed, every-night we need to have at least one minister on TV. Usually it starts with the prime ministers and moves on to the other (more junior) ministers and very often half of the 30 mins news is just an account of the field trips of our ministers. If my memory serves me correctly, the director of the MBC once justified this by saying that: after all it’s normal; they were elected by the population (and so they must be important to the population) and so the population has the right to know what they are up to. Hmmmm, well well, since Minsters are not so present in the news in Europe and the US, guess that these countries must be dictatorships! Oh God, we’ve been lied for so many years :O!!!

2. Apart from crimes and road accidents, there’s never mention of whether a minister has been accused of something illegal, a region doesn’t have running water or there’s some uprising or a similar event. After all: “Mauritius was made first, then heaven was copied from it” – Mark Twain, and it’s surely not an Overcrowded Baracoon!!! If it is, it’s because of the “previous government” – those bastards!!!.

3. Out of the 30 mins news, we rarely have more than 5 mins devoted to News of the “rest of the world” (or are we in the Trueman show?) So given that (5/30 = 1/6) 1/6 of the news is dedicated to the “rest of the world”, Mauritius must be 5 times bigger than all the other countries in the world (Ratio 1:5)

Should I write a paper on this?

The Ebene region has, since a couple of years, witnessed massive developments with buildings growing like mushroom after rain.

Indeed, just by walking round and counting you can easily spot around 10 buildings with at least 3 more under construction. While this is all good for our development, it does not seem like there is any urbanization plan that is being followed. As the “current government” rightly pointed out, no plans have been made for parking accomodation (by the “previous government”) and during office hours (which are quite long there) cars line the roads for kilometres (and these roads are not massive!!!)

Even worse, with the sheer amount of building popping up there, in some years time, the Ebene region won’t have any trees or grass anymore; it’ll just be buildings as far as you can see and far far from the idyllic cybercties that we see in India!!

There is an urgent need for an urbanization plan with wider roads, parking and space reserved for green spaces. Currently only Cyber Tower one has some grass round it; Cyber two is a joke in terms of planning with 4 walls surrounding the “tower”. So before the “next government” criticises the “current government” for its inaction, we need to plan and at all costs stop this frenzy building craze that we have with the Ebene region.

lovers.jpg

St Valentin … a la Mauricienne

 bart-simpson-generator.jpg

What’s the price of a Computer these days? At $750 (~ Rs 30 000) you can get a pretty decent one – maybe powerful enough to play some of the latest games! So for most office (typing, spreahdsheet) jobs and browsing, a simple $600 (~ Rs 25 000) PC will certainly do the job.

However, the PC won’t run on its own: we’ll need software (and an OS) and most of us go blindly for Microsoft Windows and Microsoft Office. Despite all the criticism they’ve received, they do the job but they are bloody expensive!

 

Some Prices:

  • Windows Operating System
    • Windows XP Home Edition: ~ $200 (Rs 8000)
    • Windows XP professional Edition: ~ $ 250 (Rs 10 000)
    • Windows Vista Home Edition: ~$ 200 (Rs 8000)
    • Windows Vista Professional Edition: ~ $300 (Rs 12 000)
  • Microsoft Office
    • Office 2007 Standard: ~ $325 ( Rs 13 000)
    • Office Professional: ~$375 (Rs)

So most computers will need an additional $500 investement to be usable which brings the total cost to ($500 + $600) $11 000 (Rs 44 000) which is reasonable if you live in the US but certainly not in Africa where “36.2% of the population is living on under $1 per day” - http://en.wikipedia.org/wiki/Africa. Yet it could prove too costly to be left out of the eWorld trend!

 

Open Source to the rescue

One of the most widely used Linux distribution these days is ubuntu … and it happens to be African! It’s a fantastic distribution that’s updated every 6 months (yes a brand new revised OS every 6 months) with updates coming out on a weekly basis – Cost: $0.

Cost of Open Office (whose documents respect the ISO standard): $ 0

So just by making a little effort and moving to Open source software, can incur benefits of $500 which is not negligible! And the list of software does not apply only to Windows and Office; here a list of Windows software and their linux equivalent: http://www.opensourceafrica.org/default.php?view=softwarereplace

 

Obstacles

So if it’s all so good, why aren’t people moving to the world of Open source staright away? There are many obstacles in the way of which not all are to do with the software themselves

  1. Pressure/Lobby
    I’m very sorry to say that but many African regimes are among the most corrupt in the world and investing into free software will generate $0 in terms of commision. Moreover, there’s a huge lobby behind adopting “paid” software
  2. Visibility in the media
    The voices crying out for open source are very hard to hear and subdued by the very loud voices behind “paid” software. For example, how many have heard of the new release of KDE (which is a real landmark)? Yet whenever Apple or Microsoft does something, it’s a very very big event that’s covered by the press, TV, … and is considered the next essential gadget.
  3. Inertia
    Inertia is one of the biggest force at work in this world – people are relcutant to change. Many PC users have been brought up knowing nothing else but the world created by Microsoft – Linux is just a thing for geeks that is rather scary!
    Also, even governments do not have the courage to advocate Open source and use open source themselves. Lack of support is often a major fear but support will be supplied as the need for it is created.
  4. User-Friendliness of software
    This is an issue with Linux and a few other Linux based software. Normally they now work out of the box but sometimes for some unknown reason they just won’t work! Ubuntu has done a lot of effort in that direction but there’s still a small small thing missing to reach total user-friendliness

 

The Future

Things are looking better for Linux -with especially Suse and Ubuntu (Kubuntu) leading the fight – and the Open source community in general. As more and more awareness is raised and software get better and better, it will be hard to overlook them.

If the marketting is done properly, and the Open source world opens instead of being viewed as a geeks thing, the future looks bright. In the end, it’ll all be about the image.

- – - – -

An interesting website: http://www.opensourceafrica.org/

I’ve assumed the following change Rate: 1 US Dollar ($1) = 40 Mauritian Rupees (Rs 40)