Sandiwara Semasa

And our annual post-SPM drama continues. A dejected parent wrote a letter to Malaysia-Today to complain about how his/her son was denied a JPA scholarship even with excellent results. I do not want to be a bastard and I know that every parent honestly believes that their child is the greatest. However, after reading the child’s achievement and knowing many JPA scholars in my life, I have to say that I find the child wanting.

Disclaimer: I do not know the actual person and all I know is gleaned from the letter.

The parent should understand that every person who applies for JPA scholarship already has excellent academic results – that is a given. This is primarily due to the fact that there are many thousands of students with top results in our country while there are only about two thousand JPA scholarships distributed across all disciplines and countries. So, something like dentistry would probably not account for very many scholarships.

Therefore, in order for scholarship applications to stand out there has to be something extra about the applicant, other than their excellent academic results. The letter claims that the child won a “VIJAYA SHANKAR PARAMSOTHY” Trophy, which seems to be an internal school award (as opposed to the Fulbright scholarship of the same name). While I do not want to underplay the child’s achievements, I am not certain if this would be something that immediately jumps out at the person reviewing the application.

I do not want to sound condescending but I have had this same conversation with other top scholars before. If you are fighting for a scarce resource, you really need to have something extra to help push you to the top of the pile.

That said, the JPA scholarship is not the be all end all of the child’s life.

Deathly Hallows

Never was much of a fan of Harry Potter – but certainly one of Emma Watson!

Footing the Bill

Came across this yesterday and I have to say – it’s quite good!

Pada permulaannya, kita tinggal di sebuah negara yang kaya dan aman

Akan tetapi, segelintir orang telah menyalahgunakan sumber alam tanahair ini dan merampas tanah anda

Semua sumber alam telah dirampas oleh kroni-kroni mereka

Ini telah menyebabkan kehidupan anda menjadi semakin susah

Rasuah, penyalahgunaan kuasa, persubahatan kerajaan dan ahli perniagaan

Mereka tidak akan berasa simpati terhadap anda, mereka tidak akan mendengar rayuan anda

Bila menjelang pilihan raya, mereka akan memberi anda sedikit faedah

Bila telah dapat sokongan anda, mereka akan bertindak seperti dahulu dan tidak akan mengenang jasa

Akhirnya, mereka mahu anda menampung kehidupan mewah mereka

Kita boleh membawa perubahan.

Sibu, Jom Ubah!

Firefly Dusk

For the first time in my life – I got to see fireflies. They were quite a sight to behold. Blinking in synchrony, they light up the mangrove like Christmas lights. I was quite impressed. Being an electrical engineer, I like the whole concept of bio-luminescence. One problem that we face today is that electricity needs to be supplied. It would be great if electricity could be autonomously generated by our bodies and used to power devices.

Our civilisation is tethered down to sources of energy. Without electricity, life as we know it in most of the developed world would stall to a halt. While we have made some progress in the realm of wireless power transmission, it is still not easy to accomplish. Furthermore, radiation losses would make wireless power transmission a lossy power source.

While the bunch of us were at Kuala Selangor, we went up to visit the lighthouse as well. I cannot remember if we ever learned it in school, but even if we did, I did not know that we had a lighthouse there. It was interesting to see a tower with lights rotating and signaling the ships to stay away. It was on top of Bukit Melawati, just by the coast.

We also went for some cheap and tasty sea food of course. Over dinner, we were entertained with speeches by various local representatives of the Selangor government. They had organised a dinner at the same restaurant for senior citizens from a number of nearby villages. It was my first time at these dinners and I was quite surprised with the kinds of rhetoric being spouted.

Anyway, yesterday was a really beneficial evening for me. I learned a number of new and interesting things.

AEMB Running RTOS in China on Altera

Wow!

(I couldn’t sleep and it is almost 3am)

While randomly surfing the Internet and vainly googling my name, I came across some random Chinese sites. Since I don’t have a Chinese presence, I wondered what it was all about. Clicking on it turned out to be an interesting surprise. It seems that some diligent Chinese students decided to build a System-on-Chip (SoC) using my processor and ported a popular Real-Time-Operating-System (RTOS) to it! They even published an academic paper early this year to prove it. It was even reported in the local Chinese media.

So, now instead of just having the capability to boot Linux, my littlest processor that could is also capable of booting uC/OS-II (a popular commercial RTOS). I’m seriously proud of its accomplishments. Honestly, I don’t think that there is any reason that it won’t boot any other operating system as long as someone bothers to port it.

It’s just too bad that my Chinese is a little rusty. I can sort of make out what it says but I will try to get someone to do a proper translation of it for me instead. I can roughly understand that they chose my processor because it is Open Source and useful for research. There are other popular Open Source microprocessors out there and I wonder what made them choose mine. I wonder if it was because of the good real-time characteristics of my processor. I actually designed that as a feature – to provide good real-time support.

So, what have I learned from this paper – that the AEMB is now in China in addition to the US and EU; that the AEMB is capable of running an RTOS – uC/OS-II easily; that the AEMB has been implemented on Altera FPGA.

PS: I wonder if this counts as a citation. They did list me in the references section of their paper. I doubt that my present employer would care.

Good Testers

Good testers are hard to find, and impossible to maintain. The reason is very simple – people who are technically good enough to be testers, tend not to become testers but end up as developers instead. And in an amazingly idiotic twist, people who are not technically good enough to do development work, often end up as testers. Sigh.

Testers have to be good developers. In fact, I would say that they need to be the best. In order to find a hole/bugs in a software is not that easy unless you have a bunch of monkeys doing development. Otherwise, you really need to twist and turn things around to purposefully foul things up.

Therefore, I will not have any testing department in my future company. Instead, I will swap roles between teams. One team develops and another team tests. There will not be any dedicated testers and every team that develops code will also need to break code by other teams. I will pit the teams against each other. The objective of the team that tests is to find as many bugs as possible in the other teams’ project while keeping the bugs down in their own project. It’s all about scoring brownie points – which is something that all good developers care about.

Let us take gaming as an example. I used to tell friends that I can beat any computer game – not because I was particularly good at gaming, nor because I spent a lot of time at it. I am confident of beating the game because I am a developer and I know how games are written, what they can and cannot do.

So, when I beat a game, I don’t actually try to beat the game but I am trying to hack the code instead. There are lots of techniques that I have used in the past but I will not go into the technical details here.

Testers should not be conscripted from the bottom of the pile – they should be selected from the top.

PS: It usually takes me under a minute to find a problem with an apprentice’s code. The only reason that I can find it so quickly even without looking at her code is because I already know what to look for – because I was once a noob coder too! We all make mistakes and that is the best way to learn.

Chip Architect

I’d just realised that I cannot call myself a chip-architect or microprocessor guru until I actually built one myself – from scratch! It’s not that I have not built a microprocessor before – I have and it is used in real-world products. However, I have not actually designed one of the most fundamental components of a microprocessor before – the instruction set!

A microprocessor’s instruction set is a set of predefined ones and zeros that have certain fixed patterns. These patterns are the most fundamental language that a microprocessor understands. You can consider them the basic vocabulary of a microprocessor. So, I think that until I have designed one myself, I cannot call myself a microprocessor guru.

Although AMD started off by making chips that use the Intel X86 instruction set, they eventually came up with their own extensions and finally designed their own AMD64 instruction set, that Intel was forced to copy instead. That’s demonstrating technical superiority right there – forcing your competition to imitate you.

So, I think that I will sit down one of these days and design an instruction set for my new processor – that I am keeping a little secret for now.