tHog

DIARY 2010

(2009)

DECEMBER

NOVEMBER

OCTOBER

SEPTEMBER

AUGUST

JULY

JUNE

MAY

APRIL

MARCH

FEBRUARY

JANUARY

2010

Sun, Jan 31

<21:52 EEST> Today's lament concerns the iPad which, according to a couple of writers, marks the end of the tinkerer's era. The company that started with two guys hacking around in a garage continues to build a world where tinkering is only allowed to paying developers.

Apple and the iPad are far from exceptional, as I have felt the same general concern about the IT world since about Windows 95. While a Windows machine in general is not a closed appliance, it is not straightforward to start writing a program for one. You need to install some special development software and enter a special developer mode. Contrast this with a C64, where the BASIC prompt awaits for budding hackers, or a unix shell, which likewise blurs the line between a user interface and a programming tool.

There is nothing wrong about closed appliances as such — though I wish I could install a better OS in my Canon G1 :) A nice thing about my Canon, though, is that there has been a lot to learn after months and years of use. It was not limited to a few specific applications, so I did not get bored with it. Of course, there is a need for a lot of simple and boring tools in life and work, but then they better be simple, reliable and inexpensive.

My main problem with closed appliances is the waste of money and energy involved. The company builds a general purpose computer, which costs some amount of money. But then they build a closed system on top of it, which costs a little more. Then they sell you the closed system, fewer features for more money. Then you might spend extra time and money to hack on it, to expose the general-purpose features again. I think it is something like the broken window fallacy. If you want to sell me something simple, then please make it actually simple to begin with, and it is likely cheaper and more robust as a result.

So this is how I saw the general direction of IT in 1995, and it is probably the same trend that you can see in other fields, such as cars. Fortunately, there is also the counterculture of open source software and its offshoots. For example, today you can buy a netbook that is open-source down to its firmware level. This is not something I expected back in my teens, and it is a very positive surprise. So let's try to keep it this way and leave the iPads where they belong ;)

<23:26 EEST> In another related article, it is implied that users of a closed system are hostages, and their perception is therefore altered. This brings to mind the parable of the boiling frog, in that users of already somewhat closed systems are more easily lured into deeper captivity. Unfortunately, it is happening in the Linux world as well. Witness the hype around mobile operating systems such as Android and Maemo; their open-source foundations may be mentioned in passing, but it does not really matter as they are not completely open anyway.

Of course, these systems are far from 100% closed, and my first-hand experiences with Maemo are not bad at all. But as the openness is packaged into a commercial product, there is a good change of closing things up again. For example the N900, which represents a kind of small victory for Linux in the mainstream, has an app store. Just so that you can part with your money, instead of learning about the free and open-source software repositories. Many users will probably choose the familiar route of buying packaged products, so there is less incentive in continuing with the open model, compared to Maemo's past within the tinkerer world.

Fri, Jan 15

<21:43 EEST> Yesterday there was an interesting story on Slashdot, Cliff Click's crash course on modern hardware, but as such it was completely unwatchable. Ever since Youtube, I have been wondering why anyone would like to watch a video, an hour long in this case, in a tiny box within an otherwise nice and big screen. Fortunately, a positive kind of Slashdot effect got into action. Some people managed to dig up the video file as well as the slides, which I think are pretty essential as they are not really visible in the video. I have just experienced the whole, reading the slides on my N800, which is just perfect for this kind of application. Previously I have done the same with my laptop, but this was much more comfortable.

The essentials of the talk really boiled down to the enormous latency between CPU and main memory, which is typically something like 200 clock cycles. So there are various heroic efforts to work around it, but there is no obvious solution. Multiprocessor systems were also discussed, and now I think I am starting to understand what "race condition" actually means. Sure, the basic problem is with two CPUs accessing the same piece of data, but due to the numerous levels of caches and main memory, they may see a different version of the data at the same time.

It is also noteworthy that many modern CPU techniques, while they do make the CPU itself faster, are mainly useful because they mitigate the memory bottleneck. For example, out-of-order execution, superscalar architectures and simultaneous multithreading (hyperthreading) allow the CPU to do something useful while another instruction is waiting for data. Vector instruction sets like SSE and Altivec allow the loading of a whole data set at once, while the actual processing may not be any faster than usual.

As I was expecting something specific to x86 with all of its pros and cons, it turned out these issues are common to all modern computer architectures. I guess you could generalize this even further. For instance, the bureaucratic problems of a big organization are inherent to its size, and the actual work can only be done in small teams. Time to start a consulting business, then ;)

Sat, Jan 9

<01:53 EEST> Last night I started to download the latest episode of Naruto Shippuuden (ep 142, HorribleSubs 720p version) with rTorrent 0.8.6/0.12.6, when the little server started trashing its disk in bursts. The filesystem in question was ext4, running on Linux 2.6.32. A process called flush-8:0 was running intensely in sync with the disk noise, and soon after the machine went into kernel panic.

It was a nice opportunity to reboot into the fresh new 2.6.32.3 I had compiled the previous night, but the incident soon repeated itself as I attempted to resume the download. I recalled my problems with ext4, along with those of many other Linux users, so it was not the most surprising thing ever. In fact, the same download worked fine on another filesystem on the same machine.

It seems like a soft lockup, since towards the panic, the machine gets less and less responsive. Debugging has turned out tricky, since the debug messages are continuously logged onto the same hard drive, which only serves to hasten the inevitable. The only way to follow the messages in real time would probably be a serial console, which I could probably hook up quite easily, but currently I have better things to do. This really seems like a one-off glitch, since I have used rTorrent on the same filesystem before, with great success until now.

<02:11 EEST> In other news, I have recently read two novels in succession, sharing an eerie number of key points: international terrorism, nuclear fallout, shipping containers, near future. Spook Country by William Gibson, and Litium 6 by Risto Isomäki. Both of them being some of my favourite writers for quite a while, it is interesting to consider how differently their styles and themes have evolved — not that they have anything particular in common otherwise.

Both of the books can be just about called science fiction, which is probably the intended direction from their roots in cyberpunk and hard SF. While Gibson has clearly been heading into the mainstream, at least since Pattern Recognition, Isomäki has managed to maintain a boyish sense of wonder that I recall from his first fictional publication, Kristalliruusu. This is not necessarily a good thing, and the book could do without the few cliches and campy expressions. But personally I happen to like his distinct style, even to the point that some of it has probably spilled into my own writing.

As for themes, it is interesting to note that Isomäki is a professional environmentalist. While it has always been apparent in his work, there is a clear development from the pure, speculative, starry-eyed SF of Kristalliruusu to the environmental thriller Litium 6. Nevertheless, the novel seems to have an exceptionally good scientific backing. Someone ought to compile a list of the actual references sprinkled in the story, too bad I had to return mine already.

However, one main thing I got out of the book was not so much the environmental message, though the evidence for the dangers of new nuclear power, such as fusion, was substantial. The human factor is always the weakest link, and here the essential stage was the war on terror, the post-WTC culture of fear. Restricting freedom and basic human rights in the name of "protecting the children" or something like that is, in my book, much worse a threat than actual physical damages. The latter you can generally prepare for, and deal with. As long as you're allowed to.

Tue, Jan 5

<18:25 EEST> During the holidays' extra free time, I have found new interest and appreciation towards my N800, using its default Maemo OS. I have toyed with the camera, read a full book using Evince, and done further setups with VoIP. Too bad Skype on the N800 does not use the camera, which is mainly intended for video calls. My family members are mostly using Skype, and the youngest is sometimes confused when a phone call lacks video :) To me that is a good sign of technical development: videoconferencing was only seen in kitschy SF for a long time, and while it has been technically available for big companies for decades, now suddenly, without a big fuss, everyone has it, not just the geeks. Likewise, in the past I have been interested in wearable computing, and with the N800 I find myself carrying something practically equivalent, even better in many ways.

In the past year or two, I have realized an essential social reason behind the portable computing craze. You can use a tablet while in a group discussion, and it does not get visually in the way of face-to-face communication. Laptops and netbooks are somewhat more intrusive, but much less so than a desktop sitting in a dedicated position, in a corner away from other people. Of course, more and more people are using computers mainly for communication, which is a different factor as such, but it obviously helps with the social acceptance of having them around, and with you all the time.


Risto A. Paju