Apple Tablets


There are plenty of rumours circulating around the Internet on how Apple is getting ready to launch a new product – a tablet PC. There are plenty of other companies that have tried and failed to push other tablet products over the years. However, I have this strange feeling that Apple will succeed where others have failed for one simple reason – the user interface. You see, the trouble with tablets in the past have always been its user interface, or rather the lack thereof.

If one has used a tablet in the past, one would be familiar with the difficulty in using it. most computers are designed to be used with a combination of keyboard and mouse. Hence, trying to translate the interface over to a device with neither a keyboard nor mouse was rather difficult. Some tablets made do with a virtual keyboard on screen, with the finger taps approximating mouse clicks. However, this was still deficient. Some tablets made do with some form of hand-writing recognition but this was always slow and regularly inaccurate.

Apple has always been at the fore-front of user interfaces. I have always had a soft-spot for the Apple UI (though there are many peopel who actually hate it). If you have used an iPhone or an iPod Touch, you will know what I mean about slick and smooth touch interfaces. It is for this reason that I think, an Apple tablet makes sense. An Apple tablet with a slick touch interface would be able to do wonders. Think of it as being an iPhone with a larger screen real-estate.

The only issue may be with typing text but I am sure that Apple would be able to figure that one out, given time.

Breaking Patents

nullAs I have mentioned in an earlier entry, I have been attending this workshop on patents. The main objective of the workshop is to learn strategies and techniques on writing strong patents. Of course, the things that we learned were very interesting, since I have a vested interest in patents – not to write strong ones, but to learn how to break them. The entire course ran for 3.5 days and we were taught many things about patents.

First and foremost, we were taught how to analyse patents. Unsurprisingly, patents are extremely wordy and twisty so that anyone other than lawyers would immediately give up when reading them. Personally, I gave up trying to parse the sentences at first – they seemed to go on forever. However, we were broken into small groups and there were several others around. So, we worked together in trying to decipher what some of these patents actually meant. Once we managed to analyse the patent, it was far easier to understand what something actually did, or claims that it can do.

Then, we learned how to break them, defeat them and design around them. There is a very methodical process in doing this. Once we figured out how to identify the sections that needed breaking and working around, we would be able to come up with thoroughly new ideas and improve upon the existing patent. As a result, we would technically be able to patent this new solution if one did not exist already.

Finally, we learned how to predict the future. There is a very important reason for learning to do this – we wanted to make our patents more difficult to break. In order to do that, one would need to be able to predict trends and then to move our innovation up that line so that we would be able to take on any other future technologies coming our way. As a result, we should theoretically be able to write up a final patent that is strong enough to withstand attacks.

It was during this training that I realised that the only way to break a patent is through the use of FLOSS. Being free, libre and open source alone is insufficient to break a patent. One would also need to out-innovate the competition in order to stay ahead. As long as FLOSS software is one step ahead of the game, it would break the patent’s grip successfully. At one point, one of the participants actually asked the trainer what he thought about an ‘open’ society versus an ‘ip oriented’ one and his reply was pretty interesting.

He basically showed us his last slide, which said that for the next 5-10 years, patents would still play an important role. However, he is seeing a slow but steady decline in the effectiveness of the present patent system. Basically, the present patent system has been thoroughly raped and plundered. Hence, he does not think that the present patent system would survive for much longer. I found this surprising because our trainer was a guy with 400+ patents to his name and making a living off patents. One would think that he would be in support of patents.

He basically said that it was a game that needed to be played for now. But the game is almost up anyway.

PS: He is a fan of William Gibson as well. So, I like him too.

Geriatric OS

This thought just occurred to me the other day – both my parents are Linux users! My father is mainly an office user. He uses the computer for checking emails, typing documents and preparing spreadsheets. My mother mainly uses the computer for playing games. Regardless, both of them have no complaints with using Linux as the OS simply because it does the job that it is supposed to do, which is more than I can say for some others.

That got me thinking that if grandpa/grandma are capable of doing this, what is stopping anyone else? My parents had no real legacy tied to Windows. While both started using computers with Windows, the things that they were trying to do had absolutely nothing to do with Windows. Of course, having me as their son is useful too.

However, I have to say that I did not have to teach them much. All I taught them to do was where to find the applications that they needed, and how to shut down the machine. That was literally it. I did not have to teach my mother how to play the multitude of games that came with KDE built in. Neither did I have to teach my father how to use OpenOffice. He was already used to using Microsoft Office before this and found the switch pretty simple. I did not even need to set up the printer for them.

All hail the grandma/grandpa OS, the geriatric OS, Linux!

Duff's Device

I thought that this was a rather elegant piece of code. So, I thought that I should share this here, lest I forget it later. It exploits a weakness in the language definition in order to produce a piece of code that is somewhat more efficient.


send(to, from, count)
register short *to, *from;
register count;
{
register n=(count+7)/8;
switch(count%8){
case 0: do{ *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
}while(--n>0);
}
}

Once you read it, and understand how it gets translated into assembly, you will soon realise the ingenuity of it all.

Compiler Ownage

I am starting to think that I will definitely need to port a C/C++ compiler over to my own processor. The reason is one of freedom. Constantly relying on other people to write the compilers mean that I am constantly constrained by the existing architectures. I think that I am done learning through copying. I have just started to improve existing architectures. My next step should be to create my own architecture from scratch.

I have been attending a training this week, learning how to attack patents and to develop new IP. It has been an eye-opening experience for me and I really have learned a lot. Some of you may be confused as to why an anti-patent person would be attending such a training. Sun Tzu said, “know your enemy and know yourself, find naught in fear for 100 battles. Know yourself but not your enemy, find level of loss and victory. Know thy enemy but not yourself, wallow in defeat every time.”

So, after knowing how to design and build the various sub-systems of a processor, and also learning on the various theoretical architectures out there, it is now time for me to build a processor based on my own architecture to fix my own problems. I have some ideas on what features these processors might have. However, I do not know where it will ultimately lead me.

Being in control of the entire stack from hardware, compiler through to operating system and application software would be very useful indeed. It would allow me to explore further than before.

Cambridge Start-ups

Woo! I just read about this new incubator in Cambridge! I wonder if some of my Cantabrigian friends would exploit this great opportunity to run your own start-up! I just think that it would be an excellent source to network and build upon each other. Most successful incubators are more about the networking rather than the financial advantages.

Red Gate Software has launched a startup incubator in Cambridge. Free office space, internet access, room, board, advice, and pocket money. (I’m one of the people giving advice). For a first, it’s really free; Red Gate isn’t taking stock in the companies it helps.

Wonderful people – these Red Gate.

Self Enforcing Protocols

I just read this article on something called, “self-enforcing protocols”. I found this article interesting because it addresses a serious concern with defeating cheats. Basically, a self-enforcing protocol is one where no third party arbitrator is required to ensure fairness. The protocol itself is self-enforcing. An example given in the article is barter trade, where everything is at face value.

The homeowner decides the value of the property and calculates the resultant tax, and the government can either accept the tax or buy the home for that price. Sounds unrealistic, but the Greek government implemented exactly that system for the taxation of antiquities. It was the easiest way to motivate people to accurately report the value of antiquities.

That is one ingenious way of ensuring that the home-owners stay as honest as possible. If they arbitrarily under-value their property, they would ultimately end up losing the property entirely as the government would be able to buy it and sell it off at a higher price almost immediately (and probably back to the original owner).

What appeals to me with regards to this is the use of these protocols in so many areas in government and administration. Brain food!