Strange Friends

I had dinner with a bunch of Cambridge friends this evening – three of whom were economists and one a biologist. This is the second time that we were meeting up in a week. Some time during dinner, a thought occurred to me – I am mixing with an odd bunch. Odd because I don’t really have much to say.

I once told my colleagues at work that I am a sociable geek – a geek whom can attend parties and engage in small talk, regardless of how much I dislike socialising. However, this does not change the fact that I am a little out of my element with most of my Cambridge friends. This is because most of my Cambridge friends are not from the engineering/computer fields, which is rather surprising.

On the one hand, it is good to know people who think and see things from a different perspective. On the other hand, it is sometimes quite difficult communicating with people who are not used to the exactness and preciseness of technical language. I am not complaining about my friends but rather complaining about the lack of people whom I can share difficult technical conversations with.

In an ideal situation, I would have some friends whom I can share technical conversations with on an even field. However, there is some difficulty in finding such people around. There are just not that many people with my kind of expertise and experiences around. There are plenty of technical people at work, but I spend much of my time teaching and imparting knowledge rather than learning and discussing.

That’s not to say that I don’t want to do the former, but I have begun to realise that I have an unfulfilled gap in my life. I really need to either adapt, or find another alternative – such as writing a technical blog.

Political Numbness

You know what, I did not realise that anything untoward was happening within our opposition coalition. In fact, even after everyone started making a big fuss about MPs quitting and aligning themselves with the ruling coalition, I still did not feel like anything special was happening. Then it dawned on me – I have become politically numb with all the random sandiwara that happens and am no longer able to respond as expected towards political news.

On one side, people are painting the picture of a crumbling opposition coalition – fraying at the edges after being attacked for so long by so many people. However, I see the very same thing happening with our ruling coalition as well, also fraying at its edges after being worn for so long by so many people. So to me, crumbling political coalitions seem to be the norm in Malaysia.

On the other side, people are screaming like victims – victims of their own devices. They sowed the seeds of political expediency and are now reaping the harvest. I have often harped that our people do not have much of a choice when it comes to electing their representatives. That is why I have been trying to drum into people’s heads that there are four possible outcomes on a ballot sheet with two boxes.

Personally, I see these games as all part of a war of attrition, that all sides will lose in the end.

On a more exciting note, I had to fill up my personal evaluation form today. It was fun filling it up because I got to rate my own performance, which was naturally exemplary. However, I found it vexing that I could not rate my boss. I believe that performance evaluations should go both ways. Otherwise, the bosses would never know if they were a good boss because the people under them have no voice. Any honest evaluation, that is.

Hacking Brains

The power of our brain to just get it.

Bobby McFerrin demonstrates the power of the pentatonic scale, using audience participation, at the event “Notes & Neurons: In Search of the Common Chorus”, from the 2009 World Science Festival, June 12, 2009.

Low Power Software

I am a climate change skeptic.Seems like I am not alone in thinking that power-efficiency is a system issue that includes both hardware and software. A recent article at ACM shows that other leading processor architects are also thinking along the same lines. So, I ask myself what am I going to do about it. Due to recent events, I now find myself with a bit of free time. Therefore, I think that I will put my free time to some work by trying to do some interesting things.

Firstly, I will rework my existing processor into a more power friendly design. What I mean by this is not that I will make it lower in power, but I will try to make some changes to it so that the processor’s power distribution and consumption can be intelligently controlled by software. At the barest minimum, this would mean adding a programmable power and clock manager into the core. It could also potentially include lower power but slower computational units that can be used for less critical operations.

Secondly, I will try to modify Icarus Verilog to output some power information. It would not be possible to output accurate power results because power is highly dependent on manufacturing technology. However, regardless of technology, it could possibly output relative power information. So, I could possibly use it to test out different code paths that produce the same results in a similar time period but with different power profiles.

Thirdly, if I have the resources, I will try to make changes to LLVM to facilitate power information. This will probably take a bit of doing as the LLVM compiler is a pretty complicated piece of software. Using the information garnered from the simulator, I could possibly output relative power measures for different types of code. This will be a good first step towards generating power efficient code. Of course, the ultimate aim would be to have a -Op power-optimised flag that will automagically trade-off speed for lower power.

Fourthly, now this is stretching it, I will try to write a nano-kernel that is power optimised. This may just be as simple as automatically putting the processor to low power mode when the running task is idle and waiting on user input. It may also be as complicated distributing tasks over a bunch of heterogeneous cores taking power considerations into account such as sending less critical tasks to cores running at lower power configurations.

Now, if anyone thinks that this indicates that I have succumbed to being an eco-mentalist – you’re absolutely wrong. I still belong squarely in the skeptic camp. However, I do believe that efficiency is important – actually any engineer can tell you that the whole purpose of engineering is to increase production efficiency. I do believe in being more efficient, not for the purpose of saving the planet, but for the purpose of engineering elegance.

So, let me start this today.

Mildly Autistic?

http://video.ted.com/assets/player/swf/EmbedPlayer.swf

I just watched this video description of autism. Then it struck me that I do think in some of the ways that she mentioned. For example, when I design a microprocessor, I simulate the entire functioning of the processor inside my head throughout the process – from the pre-design stage through to the debugging stage. I only rely on the software simulation tools to verify that my design works the way that I thought that it would. I don’t use it to find out how my design works.

I noticed the small ‘S’ first before noticing the larger letters. My colleagues at work sometimes say that I go crazy over the details. I notice detail and I pay attention to them. I cannot stand wrinkles and I just need to smoothen them out. That is the reason why I pick on so many little things. My colleagues just consider me a perfectionist.

Also, I have some real social problems – I consider myself thoroughly socially inept. Faux pas aplenty. Maybe not so mild then.

Crossing Hurdles

Yatta!I am rarely wrong and I hate being wrong. However, I am only human and I do get things wrong sometimes. I will also accept criticism with an open heart and open mind, if and when I am wrong. When I have done something wrong, I will usually try my best to correct it. It may take me a while to get things right, but I will endeavour to make the necessary changes. It makes me extremely happy when my corrections are acknowledged and found to be satisfactory.

One stage of my life is coming to an end while another stage is just beginning. Things could have gone very bad for me but I am glad that they have turned out fairly well. While I do not regret the path the I have chosen, this journey has been an arduous and long one. I will never recommend it for anyone else, unless they are brave or dumb enough to plunge headlong into the unknown without regards for consequence. Paths are opening up where there were none before.

I have had to make some sacrifices along the way and lost some people in the process. However, I do hope that it will all be worth it when things are finally cut, weighed and measured. I am getting a bit too long winded now. Let me end this by wishing Cecilia all the best and good luck!

PS: I must do something to celebrate – like maybe buy myself a new 50″ television.

HP are Liars Slow

I called up HP today to find out why my Streamyx connection has not yet been upgraded and was told by them that I had to call up Streamyx myself to upgrade my line. What kind of nonsense is this? When I registered and was explained the entire process, I was told that HP would handle everything. Last week when I called up HP to check, they said that it will take a few days to upgrade and I should wait a bit and call up again if it is still not done by this week. And today HP tells me that I need to handle it myself.

WTF?!

I gave the customer service agent a piece of my mind. I do not want to have to pay HP for my Streamyx next month and pay TMNet for my Streamyx as well when I only get 512k! That is making a double payment for a non-service. If that happens, I will need to call up my bank and find out how I can cancel/delay payment for my HP purchase. They have failed to deliver the 1Mbit line that I am supposed to enjoy. They have openly advertised the 1Mbps streamyx package and if they fail to deliver, I am well within my rights to do something about it.

I’m just pissed off today. I hate idiots.

UPDATE@2010-02-24: After chasing them a couple of times today, my speed seems to be up tonight. It’s a bit sporadic but I am consistently getting 1M speeds on speed-test. That is good.

I might have been a bit too harsh calling them idiots. Maybe they were just slow or maybe it’s part of our culture to need to push to get things done.