Pie, it Used to Be

A friend of mine works at No More Pie Games. (Hence the somewhat nonsensical subject)

They have released a teaser video for their first game. Take a look!

Looks very good, I really watched the video several times :)

The game looks like to have elements of a bank-robbery platform jumper. I wonder if the main character has no name (and is legion), as he is wearing a Guy Fawkes mask

And the soundtrack, what mumbo jumbo is it? It is Finnish hiphop, strong lyrics and good delivery – full track is here.

(I don’t know if someone has translated the lyrics but it has good stuff like “shield us from eastern mafia, western mafia, hamburger chains and other organized crime.”)

Zenburn for PhpStorm/Webstorm

Thanks to Alper Buluc, there’s now a Zenburn port to the PHP IDE PhpStorm. It’s called (I guess you guessed it already!) Zenburn for PhpStorm.

Grab it from Github.

Thank you Alper!

There Was an Election in Finland, You Wooden Spoon!

The first round of the Finnish presidential election is over. I happened to surf the Finnish news sites through Google translate (don’t ask). The results resemble some sort of machine-generated mildly dadaistic art.

First, let’s look at the results. Spongebobs did quite well, although didn’t make it to the second round. Spongebob Väyrynen to, is a veteran politician and had attempted to reach presidency before. He did great work but in the end lost, albeit with quite a narrow margin, to Mr. Haavisto,.

Click the images to enlarge them.

Spongebobs in the Finnish presidential elections

Spongebobs in the Finnish presidential elections

There were two female candidates, both of whom did not gather a lot of votes. The female candidates were thus equally balanced, you wooden spoon!

"Female candidates were equally balanced, you wooden spoon"

So how did the happy victor of the first round celebrate? He went to meet his campaign people, who got all excited and chanted the wrong names:

Sauli, Boris, Boris

Sauli, Boris, Boris

None of that stuff is in the original text. The Finnish name for Spongebob Squarepants is Paavo Pesusieni, so Google Translate helpfully makes all Paavos become Spongebobs. The “wooden spoon” – I’ve no idea where that comes from. Likewise for the Boris, Boris part. It’s not in the original text. In the original text it says how the crowd chanted “Sauli, Sauli, Sauli” – perhaps Boris is the equivalent name to Sauli? One can only guess.

Stay tuned for round 2 of the election.

Update: fixed thumbnail SSL image links to non-SSL.

Musings on the Future of Home Computing

Researchers at the University of Cambridge, UK, recently demonstrated printing (transparent AND flexible) graphene-based thin-film transistors with a modified ink jet printer. (“Ink-Jet Printed Graphene Electronics” at arXiv)

So what does this mean? In the future, you can download a chip design from the Internet, modify it as required, and fabricate it in your garage with a kind of an inkjet. You can essentially build an entire system by printing the sheets and then combining them with suitable cables and connectors. Maybe the result won’t beat an Intel Core i7 in speed, but it will be a treasure trove for hobbyists and professionals worldwide – think today’s Arduino-hacking innovators supercharged.

Longer term effects: production and innovation in computing technology manufacturing moving one step below from corporate labs and fabrication plants to homes and hackerspaces. This translates to faster turnaround times: no need to build elaborate marketing campaigns and align release times with Christmas sales, building even 2 prototype chips is feasible, the whole world’s experts are available, and so on. (Having free and open (as in speech and beer) hardware will be a major factor in this development – one could close the hardware off but the development convenience would suffer and speed would slow down as a result.) The application areas will also move beyond just “cool, I just printed a tiny logic circuit” to “cool, I just printed an ARM core” and beyond. Once this speed of innovation is applied to neighbouring areas such as wireless communications technologies, then we will truly see some interesting developments.

Will this destroy massive corporate R&D projects? No, I don’t think so, there won’t be interference until a lot of time passes. It takes expensive and complex equipment to research and develop a memristor, for example. But the speed of remixing existing technology and improving it will increase. Also, the distribution of technology will move beyond the shackles of “the market is just 10k people, forget about it”. As a summary: self-fabbing printed circuits will take care of evolutionary paths, corporate R&D of big revolutions, and meanwhile the long tail will become flatter and longer.

Zenburn Gimp Palette

Thanks to an anonymous contributor, here are the Zenburn colors as a Gimp palette file. To install, copy it to e.g. ~/.gimp/palettes.

Toshiba L650D-15G Tip of the Day

Problem

You’ve upgraded to Ubuntu 11.04, it comes with a kernel newer than 2.6.32; and now booting doesn’t work. Grub runs OK, initrd starts up, kernel boots all right, but early at boot you get a blank screen – or if you enable text boot, the last thing you see is somewhere around the “pci_root PNP0A08:00: host bridge window” lines.

If you examine the kern.log, there’s nothing too obvious, except perhaps this:

pci0000:00: Requesting ACPI _OSC control (0x1d)
Unable to assume _OSC PCIe control. Disabling ASPM

Perhaps you’ll also see a “hda_intel: spurious response 0×0:0×0, last cmd=0x0f0000″ repeated hundreds of times. This causes also a quite audible pop from the DAC when the system gets here – you’ll hear a big “snap!” from the speakers.

Solution

Use the “pcie_aspm=off” kernel parameter when booting.

This turns off PCIe ASPM support.

Become root, edit /etc/default/grub. Append the parameter to GRUB_CMDLINE_LINUX_DEFAULT. Then run update-grub2.

After this, ASPM will be always off, but boot is OK, suspend works, audio works, overall the system works just fine like in 2.6.32 kernels. The downsides? Haven’t seen any so far, then again, the laptop is “always” AC powered. Powertop reports about 260 wakeups-from-idle per second as I’m writing this, I’ve not tweaked it. The estimate with battery power hovers around 3h which is well in spec for this laptop.

CPU speed settings are OnDemand for all cores.

PS. The ATI Catalyst driver (fglrx) was used, but I don’t think it makes a difference. I had some problem with Compiz with Radeon (too old Mesa libs probably) so I went for fglrx instead.

PS2. Another route might be to upgrade the BIOS. However, Toshiba (or Insyde or both) currently provides a Windows-only upgrade .exe which can’t run in DOS mode, so no FreeDOS USB/.iso boot tricks work. The .exe won’t really run under Wine, and even if it did, upgrading the BIOS under Wine is somewhat too extreme sports (for me anyway).

A message to Toshiba: please always, always, always provide a BIOS update which can run under DOS, or better yet, Linux. I don’t give a shit if “Toshiba does not support Linux”, you don’t need to support Linux, you just need to stop actively preventing people from supporting Linux themselves. Oh, and thanks for the great laptop, I love it.

Principles of Ubiquitous Computing

Here’s a presentation I made at the 15th Summer School of Telecommunications in 2006. The subject is “Principles of Ubiquitous Computing”.

SSOTC06 Principles of Ubiquitous Computing

In retrospect, there are some notes to be made. Back then when I was reading the available literature and research, there was a kind of concensus that the peer-to-peer model of communication – device-to-device communication without intermediaries – would play a big role, as this would let the device deployments scale without requiring new or existing static network infrastructure. However, the bulk of the ubiquitous computing devices of today (sensors, smart phones, electrical consumption readers, etc.) rely on static communications infrastructure to function.

Also, the “Spam/Big Brother Society” is as relevant a danger as then. As I see it, the danger has merely evolved and is even more extensive today.

Today, more and more information about private individuals are collected with the justification of “with the information, we can show you more relevant advertisements”. The infrastructure of knowing who you are, what you think and who you know is in place to learn what stuff or services we might be currently missing.

At the moment the Spam Society is very benign. However, once this infrastructure and data is in place, it can be hard to remove it or to escape its reach, or to prevent it from transforming into a Big Brother Society. Even if one were to vanish as the target of the data collection today, the previously obtained information would still contain a lot of data that could be misused.

For example, what can happen if a political party with a violent agenda takes power, one way or another? If your profile indicates you have been thinking wrong thoughts, instead of getting advertisements, you would get night-time visitors taking you for a long car ride that culminates in a neck-shot in the woods. Interestingly enough, there is prior art in this kind of horror scenario: the Nazi government used census data which they data mined with IBM’s help to weed out people with Jewish ancestry.

As for the current state of ubiquitous computing devices, the smart phone stands as a lone king. It helps people organize their lives, entertains them, helps them keep connected with others, helps them document their lives with photographs and videos, and so on.

Although not quite as invisible as Weiser envisioned it, for those who have one, the smart phone is always present, ready to serve – and with modern UIs, it tries to not get in the way too much. I’d say at the moment the smart phone is closest to Weiser’s vision of calm technology. Also, over time, the smart phone has gotten only better and I expect this trend to continue.

Generally, a big downside I see with all current smart phones is the level of trust that needs to be placed on the maintainers and owners of the smartphone ecosystem to not abuse the data they collect (the location data, contact data, calendar data, etc.).

For example, Google backs up your WLAN passwords if you enable the Backup My Data option. It’s convenient in case you lose your phone, but do you know who in the end has access to the data and what they do with it? If you disable the option, the data is said to be removed. Fine; now, how will you know this to be true? You can’t know this, there is no way to check, so you just have to have trust. There are technical ways to remove the reliance on trust (e.g. encrypt the backup locally with a user-given key and then upload it), but at the moment such techniques are not used.

That said, I am a happy user of an Android smart phone. Android is open enough and the phone hardware it runs on is documented enough to let a community of enthusiasts make their own aftermarket firmware. Therefore, if I ever become unhappy with the stock Android, I can always install Cyanogenmod.

Which Fonts Do You Use in Your Editor?

In GVim I’ve got Bitstream Vera Sans Mono, 9 point, with antialiasing. I’ve found it to be quite good and readable.

You can get the .ttf files from here: http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/

Zenburn @ Github

Zenburn is now at Github.

I used v2.21 (the latest) as base. Enjoy!

Thanks to Ilya for nudging me over the tipping point.

My Favorite Android Apps

Here are some handy, useful, essential, life-saving apps which I use nearly every day.

Common to them all is their high quality and utility. I tend to be untolerating towards apps which suck and uninstall them very quickly… (Case in point: the latest Google Music update. Slow, ugly, inconsistent UI, permissions to do just about anything (it’s just a damn music player, or at least should be!) – it didn’t stay many minutes in my phone.)

So check these out, they are free and have no ads. For some apps it’s possible to donate money.

Reading the news

Pulse News is my newsfeed reader. I tried Feedly too, but I liked this one better. The UI is good, you can star interesting articles and access them at pulse.me later.

The only thing missing is easy exporting of the feeds – all “cloud enabled” apps should have the possibility to export data locally. We don’t want lock-in, now do we?

(You can get an account from Read It Later and kind of export through that, though.)

Keeping track of my books

These are actually two different apps which work well together. Load up the Book Catalogue and beep the EAN codes of the books from your bookshelf with the Barcode Scanner – it’s surprisingly fast – the app looks up information about your book and stores it.

If you loan books, just mark them as loaned. No more wondering 8 months afterwards “where the hell is that book”.

The best parts? It just works very well, and, it’s not tied to some cloud service! You can connect it to LibraryThing if you want, but you don’t need to. Your library can be exported to mass storage, so you can access your library on your computer or other devices too. Awesome!

Downsides?

For the Book Catalogue, none really… A wishlist item could be more diverse list/bookshelf viewing possibilities.

For the Barcode Scanner, the only thing I’ve found out so far is that the Barcode Scanner does not understand GS1 DataBar Stacked Omnidirectional barcodes. And so what? Scanning an apple from Chile didn’t work, not exactly a major issue :)

Note taking

The best app I’ve found is ColorNote.

Works perfectly well, supports checklists (for e.g. shopping lists), you can set reminders, a note can be chosen with a widget. No ads, no cloud service required. Local backup possibility (password protected, too)!

Calculator

Sometimes on the go you need a calculator, not just a regular four-function one, but a real scientific calculator.

My choice is RealCalc. It’s free, but if you want, you can donate by buying the version which has a price. Even so, the free version has no ads or nags.

It’s like having my trusted Casio with me, in my phone. (And it might not sound like much, but it is actually very high praise)

TED Air

This app is perfect in making commuting just whizz by. It’s basically a front-end to TED, where you can find a lot of short videoed speeches about many different subjects. The talks are to-the-point and given by experts in their field. No matter what you’re interested in, you’ll find something to watch.

Sometimes it can be even more interesting to watch something you have absolutely no interest in beforehand.

You can browse talks also by tags, speakers and themes. The best feature to me is the ability to download the videos to your device. Then you can watch it even without network coverage – no need to stream it. Pro tip: connect your device at home with WLAN, download the videos you’re going to watch the next day.

Weather

For the current weather, just look out the window. For a prediction of the weather, try Aix Weather. No ads, free app, but like RealCalc you can donate by buying a priced version.

Aix Weather is a widget that draws the (predicted) temperature curve along with rainfall and a symbol of cloudy, sunny, etc. You can set multiple locations and have more instances of the widget at the same time. Handy if you move a lot between two different places.

The weather data comes from the Norwegian Meteorological Institute so the accuracy is probably better inside Europe than outside of Europe. But try it.

RFID tags snooping

The Nexus S phone which I have can read RFID tags with the NFC APIs and hardware. The bundled Tags app from the Big Brother is quite simplistic, and a bit more geekier choice is NFC TagInfo by the good folks from NFC Research Lab at Hagenberg, Austria.