I can see! And so can you.

I can see Great Britain, France, The Netherlands, Luxembourg and Germany from a lot of parts of my country.

Although I’m not sure about Great Britain, the distance between Koksijde and Ramsgate is a full 51.49 miles whereas the distance between Dezhnevo and Bering Strait is only a small 52.07 miles. But apparently are the eyes of certain people in Alaska better than mine. Must have something to do with training your eyes while shooting moose? I never tried but can you see Dover from Calais? It’s only 25 miles!

I was told that the human eye can see on average 10 kilometers. Greatly depending on weather conditions (and of course the size of the object). That’s 6.2137 miles by the way.

I congratulate the people in the United States of America who have voted today. Remember that your new vice president wont have such great eyes! Let’s hope that the Russians wont attack now that they know the people in The White House don’t have great eyes!

Media art, work in process

Just like with thumbnails are there a lot of applications that want to share media art. Media art is the politically neutral name that we picked for what I used to call album art. Instead of just for albums we concluded that art for other things like podcasts and radio channels exists too. We made sure that the specification acknowledges that.

We still have a few open and unspecified ideas like:

  • Filtering patterns for fields like album, artist and title
  • Support for front, back and pages in a booklet
  • A way to mark artwork as temporary
  • Cached thumbnails of artwork
  • Storing artwork on removable media for reuse by another device
  • Temporary write location to rename to final to gain atomicity (.part files)

I guess this means Aaron, Gabriel and me should do some more meetings. I think it’s time however to involve people who are working on other media players. Especially since the Banshee- and the Maemo team are fully agreeing on the necessity of such a storage specification. Which means that one will be made and most likely shared by Banshee, the advisory documentation for third party players on Maemo and by standard players that will be shipped.

You can find a draft of a draft on Live.

Comparing mobile development to the music industry

I believe it’s important for mobile platforms to specialize on what is important for mobile and embedded. This includes dealing with high latency networks, low amounts of disk space, high I/O costs, slow memory bandwidth. The development tools are often either far more or far less integrated.

There is a lot of overlap with desktop software development. If companies who make mobile technology want to build a developer ecosystem, like the web and the desktop already have, then my advice would be to start integrating with these overlapping areas. This is indeed more expensive and more difficult than doing your own thing. In the long run, this is how you make an ecosystem for mobile software development.

After youtube’s madness, I wouldn’t ever underestimate the creativity of the kids anymore. After wikipedia, the Linux kernel, KDE, GNOME, Webkit and Firefox as browser components, I wouldn’t ever underestimate the energy of volunteer experts anymore.

The music industry usually only allows big corporations to hook-in their music selling. Why aren’t they investing in conferences where they invite both the industry players and the developers who are making tomorrow’s music players? What if they’d involve them in specifying a standardized protocol for buying music? Right now the music industry is making it harder for its customers to buy music than it is to copy and steal music. Right now people who want to buy music are required to own a desktop. How silly is that? With a standardized protocol you’d see mobile software developers writing mobile music players that’ll also be clients communicating over 3G, UMTS or GPRS.

At the Boston GNOME summit I’m meeting Gabriel and Aaron who both developed Banshee. We will discuss a standardized cache for album art and a DBus interface to implement an album art downloader. As a Nokia contractor I will implement this specification on the Maemo platform. This way, all music players that will be made for both desktops and mobile platforms can share the same album art, use the same DBus interface to request album art, and share album art downloaders.

Thumbnailer specification and prototype

Why do we need thumbnailing to be a service?

  • For user interface applications it makes relatively few sense to run the task of creating a thumbnail in the same context as the mainloop that draws the user interface. On the other hand if each desktop application starts creating either processes or worker threads that will be armed with thumbnailing code, then we will have a lot of threads and processes all running the same code;
  • Most applications link with a user interface toolkit that will happily deal with the vast majority of pixbuf shaped formats. That doesn’t mean that these toolkits will equally enjoy dealing with PDF, Office and video formats. There’s a lot of code involved here and we should try to avoid requiring everybody to load these complex pieces of code into their processes. I can give a few purely technical reasons like not heaving to map-in code that is not relevant for the application, reducing VmSize (although, admittedly, only things like VmRSS are really important). There are also a few political reasons, like patented formats. In the end I’ll just say it the way it is: it’s a bad architecture;
  • Application developers are really not very interested in developing LIFO queues and worker threads or processes that will handle the task of creating thumbnails;
  • Finally, application developers are asking for this (for example F-Spot). Creating thumbnails is not at all an exclusive task for the filemanager.
  • My proposal

    Based on those conclusions I decided to write a DBus specification. I also reimplemented Maemo’s Hildon Thumbnail to be conform this specification. This work has been merged with the TRUNK of the project and will be used on Maemo‘s Fremantle release.

    While rewriting Hildon Thumbnail I decided to make sure that the software compiles and runs on any normal desktop. This way the software can serve as a proof of concept and working prototype for the DBus specification. Special care was taken to make sure it feels as desktop neutral as possible.

    I opened a bug to officially request a freedesktop.org project for this specification. I hope this organization will offer a platform for further development of this DBus specification. Hildon Thumbnailer can serve as a prototype and will be adapted whenever the specification improves.

    They say the grass is greener on the other side,

    … but maybe it’s the sheep who have been telling me lies

    ps. Marked as ‘extremely condescending’, since it is condescending for the sheep on the other side.

    Moral indulgence

    In the last few days people seemingly implying a descent from superiority of moral highground to me, have called upon me (in private conversations) to decide for my readers if the content that I write is morally acceptable for planet.gnome.org. Their reasoning is that I should feel an implied responsibility for the content of that website.

    If I don’t take the responsibility that readers have themselves already, I’m to be considered a coward. That’s because, according to these people, I avoid the moral responsibility to uphold an imaginary highground reputation of the organization behind said website.

    It needs no illustration that this is just the opinion of a group within the GNOME community. Not the entire community. Nonetheless this seemingly moral superiority is not to be mistaken with a condescending circus show.

    The moral of respect for other opinions is a meme that for the last decades (and I hope in future too) has been a very successful one. I consider this meme to be the most important one humanity ever got convinced of.

    Moral superiors do not need to present empirical proof of correctness in their Sophia. The truth of their moral values are unquestionable.

    Let’s assume this to be the case: it’s immoral to only assume that your readers will make up their own minds about ideas that appear on websites like planet.gnome.org. Instead, it’s a necessity that each and every author of a blog, from which planet.gnome.org pulls content, is required to have a “responsibility of content”.

    I conclude that it isn’t necessary that the audience of that website gets an honest illustration of who we are: human beings who are sometimes geniuses and sometimes idiots.

    Instead it’s necessary that we are portrayed as good role models. Concepts such as good and bad are of course defined by the superiors. Those concepts are unquestionable.

    Let me be clear that I disagree with this.

    I questioned whether only intent can either be good or bad, but that question was refuted as irrelevant. For it’s the beholder who matters. Not the producer.

    The reason for this irrelevance being that an audience doesn’t take the responsibility of trying to understand intent. I disagree with this conclusion. I think the audience does understand intent.

    I have decided to tag my future posts as “condescending” in case I feel the content might be interpreted as showing superiority. Don’t be surprised if the majority of posts will be tagged as such.

    The freedom to choose is morally more important to me than the necessity to mark responsible content. Therefore I ask my audience, and planet maintainers, to decide for themselves.

    Pro-vagina voting!

    The shift of female voters going from Obama to McCain once Palin got appointed as running mate for McCain basically shows that the pro-vaginas voters in the United States want a vagina in power.

    Do these voters also care about having people in power who actually know something about foreign policy? I mean, a lipstick pitbull? Seriously … what the fuck? The more I find about this person, the more her no-knowledge about politics makes me cry. This is clearly a “election” running mate: a running mate to steal as much as possible pro-vagina voters away from Obama. Not a “real” running mate.

    The sex organs of an individual, and if you are a real feminist you’ll even agree with this, shouldn’t matter when voting for a president and his/her running mate. No matter how pissed you are about Obama having less female-looking sex organs than Hillary.

    This is just ridiculous.

    Unlike the vast majority of the Hollywood movies doesn’t the real world guarantee a happy ending. I hope McCain realizes this, now that he decided to turn this election into a Soap like Beverly Hills 90210.

    Here’s a meme: org.freedesktop.Thumbnailer

    People who know me probably saw this blog item coming. Here it is!

    In Tracker we want to ahead of time create thumbnails for interesting files. Among the use cases is when the user has moved or copied photos from his camera into one of the photo folders. We want to start preparing thumbnails for those files early so that filemanagers and photo applications are fast when needed.

    The current infrastructure for this in Tracker is to launch a script for each file that is to be thumbnailed. If you find a lot such files (some people end up with a camera with 1,000ths of photos after a busy weekend), that would mean that we’d do this 1,000 times:

    fork();
    execv(tracker-thumbnailer);
    fork();
    execv(bash);
    fork();
    execv(convert);

    Luckily this is not activated by default in current Tracker. :-)

    I don’t have to explain most people who read this blog that this is a bad idea on a modest ARM device with a bit more than one hundred MB of RAM. A better idea would be to have a service that queues these requests and that solves the requests with specialized image libraries. Perhaps launching a separate binary for the MIME types that the service has no libraries for?

    At first we were planning to make tracker-thumbnailer listen on stdin in a loop. Then I figured: why not do this over DBus instead? Pretty soon after that was Ivan Frade concluding that if we’d do that, other applications on the device could be interested in consuming that service too. We decided that perhaps we should talk with the right people in the two large desktop communities about the idea of specifying a DBus specification for remotely managing the thumbnail cache as specified by the Thumbnail managing standard by Jens Finke and Olivier Sessink.

    I don’t know of a official procedure other than filing a bug on freedesktop.org, so at first I tried to get in touch with people like David Faure (KDE), Christian Kellner (Nautilus), Rob Taylor (DBus, Telepathy, Wizbit) and later also a few mass discussions on #kde-devel, #nautilus and #gnome-hackers.

    I started a discussion on xdg-list which made me conclude that such a DBus API would indeed make sense for a lot of people. Discussions with individuals on IRC added to that feeling. I started a draft of a first specification for a DBus API.

    Meanwhile I had already started adapting the hildon-thumbnail code to become more service-like. Right now that code has a DBus daemon that implements the draft DBus API and on top of that provides the possibility to have dynamically loadable plugins. The specification also allows registering thumbnailers per MIME type. For that reason I made it possible to run those dynamically loadable plugins both standalone and in-process of the generic thumbnailer.

    It has been my prototype for testing the DBus API specification that I was writing. People told me that if you want to make a specification that’ll get accepted, the best way is to write a prototype too. Meanwhile Rob Taylor had joined me on fine tuning the specification itself. With his DBus experience he helped me a lot in multiple areas. Thanks for caring, Rob!

    The current prototype does not yet make it possible to simply drop-in a thumbnailer binary to add support for a new MIME type. By making a standalone thumbnailer that for being a thumbnailer simply launches external thumbnailers you could of course add that possibility that a lot of current thumbnail-infrastructure has. Although as mentioned above I don’t think this is a good architecture (the fork() + execv() troubles), I plan to make such a standalone plug-in thumbnailer.

    I certainly hope that this specification will be approved by the community. I can help with making patches for Konqueror and Nautilus. We’ll most likely use this on the Maemo platform for thumbnailing ourselves.

    New music by Karoliina

    Karoliina just E-mailed me to tell me that she just finished her new song.

    This one sounds more like Vangelis than I have ever done before. It combines some symphonic elements (some (sampled) instruments from symphonic orchestra were used) with synthetic sounds.

    — Karoliina Salminen

    The song

    A video with the song as background showing the cathedral in Mechelen (filmed by Karoliina and Kate during Akademy)

    I like it!

    Russia

    My naive opinion on the current strategy for dealing with Russia

    Maybe Cold War organizations like NATO don’t see it, as their people are indoctrinated by the need for a unified strategy against a common enemy (keep Russia out, Germany down and the United States in).

    But the world has changed since 1989.

    Whenever the Soviet Union was stubborn, it was also predictable. Today’s Russia is not predictable. It is and has been pushing its real goals in a rather subtle way (even if you think the Georgian crisis was not subtle, the real Russian goal is). You can no longer just contain Russia. Neither can you easily engage with them. You need to ‘negotiate’ your relationship with it.

    By kicking Russia out of treaties and organizations, all you will achieve is that Russia will start doing business with individual European countries rather than with the European Union. Which means different market rules will play. Less control over mutual interests in Europe: more competition among the individual European countries over Russia’s resources and market, sharper differences between Western -and Eastern Europe.

    In the long run the result of that will be a split of Europe into Western -and Eastern Europe. This would be followed by a decline of Western power over Eastern European countries. Strategically seen, this would be a perfect outcome for Russia. A dream come true, for them.

    Without the wealthy Western Europe, both the economy and industry of many of Eastern Europe’s countries are still underdeveloped and not yet ready to compete, on their own, against three major economic powers. As a result would Eastern Europe become yet another unstable region in the World.

    Russia conducting the Orchestra of opposition politics in those countries, and Russian media influence, will for many sound like an answer to their dissatisfactions.

    I think it’s for that reason that keeping Eastern Europe within the group called “Europe”, is something you want to strive for. A split with Western Europe would inevitably mean major influence from Russia in these Eastern European countries and regions.

    It’s in fact already taking place here and there. If you take off your by propaganda blinded glasses and go look for the facts, you’ll see.

    My own naive proposal

    Russia’s regime is doomed the moment the Russian elite looses its European legitimacy. Russia’s future wealth depends on Europe’s willingness to continue doing business with them. This business must be in both directions. Just selling gas yet remaining isolated from the World markets means that for example your currency can easily be devaluated outside of your borders. Meaning that you are selling your resources too cheap or that the actual price that you got for it depends on the politics of other nations (like petrodollars). Replace currency with any other valuable resource located within your own borders.

    The Russian elite who keep people like Vladimir Putin in power are the same people who are doing business selling Russian gas to Europe. If we want a peaceful world, we can seize the opportunity of doing business with these Russian elites to convince them of at least certain of European’s values. Values like free markets. Especially as we integrate our European businesses into Russia and especially if Russian elites start seeing the benefits of that (wealth), will European values further influence Russian politics.

    If we kick them out of our organizations, they’ll just continue doing business with individual European countries. Making it harder to keep Europe united. They very well know that Europe needs energy. They know individual European countries will continue buying gas from Russia.

    It would be insane because if we don’t, China will. And then China instead will get a strategic partnership with Russia. Pushing their values and culture. Rising new economies are the circumstances of today. Containment is not an answer to changed circumstances.

    Europeans want a multipolar World, right? This is the opportunity to have Russia, China, United States and Europe as different economic powers (I simplified it, I of course know there are more economic centers).

    My naive conclusion

    A new kind of World is coming towards us. Although the history book on the shelve is always repeating itself, all we can do is learn from the past.

    Learning however, is not the same as maintaining a strategy designed for completely different past circumstances. We are called humans because unlike many other species we can intelligently adapt ourselves. Let’s consume that capability.

    In order to succeed as a people, as a nation and as a culture you have to synchronize your strategy with today’s circumstances.

    It’s our time and our generation, to cope with them.

    Opensource at work!

    From one of my Summer Of Code students:

    Wow, I just got an email from a guy (maybe an Amorak dev?) who’s taken all the parts that I need from Marsyas and re-written them into a lightweight C library I’m really excited to try it out, he says it’s about 5 times faster

    — Charlotte Curtis (I’m not going to make the mistake of not mentioning who I’m quoting again)

    That’s awesome. Thanks for taking the code of our Summer Of Code students and doing something interesting with it!

    Indoctrinating defenseless people with .. music

    To make sure I indoctrinate the defenseless Qt and KDE people with my extraordinary ideas for Maemo and GMAE/GNOME related things (like Vala, GObject-Introspection, Tracker, Xesam, Desktop/tablet search, Tinymail, Modest, IMAP + Lemonade and E-mail in general a.k.a. things that interest me) I decided to show up in Mechelen (well, actually Sint-Katelijne Waver) where the guys organizing Akademy had picked a nice and peaceful spot in my warm and fuzzy country to do KDE’s yearly conference.

    Always nice to see Nokia doing the same thing at conferences! I decided to have a few chats with the Akonadi guys, watched a few presentations like the one about Decibel (they are using Telepathy! Awesome!). And then I met Kate and Karollina again. Nokians!

    Among the things I asked Karoliina was whether or not she was still making music. Guess what, she is! She told me she made this one for her cat and for Kate’s phone as a ring tone. It’s a quite relaxing song that ‘opens the mind in your brains’. I don’t know if that makes any sense in the English language, but nevertheless it’s what I came up with after the second time listening to it.

    Anyway. Refreshing and opening my mind (and my airways) is exactly why I also go to saunas. I’m confident that this piece of audio will therefore be a perfect match with a nice sauna experience.

    Playing poker while the game is Chess

    Notwithstanding that (it smells like) the United State’s propaganda machine is trying hard to control our European media once more, let’s try to get as much information from both sides of the story this time.

    I thought that since U.S. is supporting Georgia there would be some control over the situation in South Ossetia and that there would be a peaceful solution to the conflict. But what is happening there now it’s not just war, but war crimes. George Bush and [Georgian president] Mikhail Saakashvili should answer to the crimes that are being committed – the killing of innocent people, running over by tanks of children and women, throwing grenades into cellars where people are hiding,

    — Joe Mestas. A United States citizen in the conflict zone, according to Russia Today [video footage].

    As this conflict escalates both sides are as usual trying to politically involve the European Union. I think Europe should restrain from supporting Georgia as it clearly committed war crimes. I’m quite certain we will soon see hard proof of this coming from the Russians. Proof that will be ten times more accurate than an idiot like Colin Powell throwing away his career and credibility a few years ago.

    The European population wont support supporting a war criminal. Hanging our European flag in your office while doing a speech on World Television, is ridiculous and didn’t convince serious people in Europe at all.

    Militarily seen, it’s a not even a question: You can’t fight Russians a few kilometers from their own border. It would mean a military humiliation.

    Europe is not a war continent anymore. If you want lasting peace with Europe, the only way is by doing business with us. Supplying us with what we need (which in case of Russia is energy in the form of gas), buying from us what you need (which in case of Russia are European investments in their country and culture).

    What Europe can do about this conflict would be to decrease the amount of European investment in Russia. Just stopping the gas supplies from Russia would probably destroy Germany’s economy in a few months and would that way drastically weaken any kind of power Europe has. This is not the kind of stuff that we want (in Europe), and we are not naive enough (anymore) to be convinced that this is what should be done.

    My conclusion is that the rest of the world better stops hoping that Europe will help a Georgian war criminal.

    Although I know that I shouldn’t drag the U.S. in this conflict, I’m quite confident that behind the scenes it’s pretty obvious that this is Russia showing its newly gained might to the U.S.

    The New World Order line that the Bush administration seems to have tried by falsely promising to support Georgia if Georgia would send troops to Iraq turned out to be a foolish one.Then again, we are getting used to foolish U.S. strategy with Cheney and Bush trying to play poker with the rest of the World.

    As a result Russia has a moral ground to do what they are doing (in the end, they had a peacekeeping mandate over the region). The United States can only watch and suffer as Easter European countries will now have learned that all what Bush senior had build up as political trust, is now unveiled as pure U.S. rubbish.

    That is likely going to be the end conclusion of the foreign policy of the administration that has ruled the U.S. for the last decade. That all the achievements of Bush senior will have been flushed through the toilet.

    Russia is and will keep gaining power. China is and will keep growing its economy and energy consumption. Iran is and will keep gaining more power over the Middle East (the U.S.’s propaganda about their nuclear weapons programs is among the weakest I have ever received). Etcetera.

    In a curious way a New World Order is forming indeed. Regretfully for the Neoconservatives they will most likely not play the role of World Leaders. At least not as a coherent group.

    I blame their own incompetence for that.

    Their “New World Order”-meme was both strategically and diplomatically supported by weak people. They played poker while the game on the table was Chess. And they lost.

    The money they did win turned out to be printed by the Federal Reserve as it was needed. That inflated the Dollar and is increasing the gap between rich and poor in their own country. Meanwhile it enriched the super elite involved in the war machine while the sons of poorer patriotic families got sent to the battle ground.

    The man in the streets in the United States is paying for all this.

    I think this new conflict in Georgia wont be the last thing we’ll see as a result of the poker and Chess games of 200n.

    ps. Planet.gnome picks the categories it wants to syndicate from my blog. I don’t send blog items to planet.gnome myself. Instead, planet.gnome picks them. I have a category specifically dedicated to technology. This item is specifically not categorized in a technical category. Don’t blame me for political content on planet.gnome.

    By the way

    Vala is awesome

    GStrv vs. char**

    Dear people of the world who are interested in developing with GLib. The type GStrv is a typedef for “char **”. I know C purists will think that it’s stupid to do that. The problem with a “char **” however is that it can mean hundreds of things. That it’s therefore not possible to know for a language binding tool how to deal with it (how get thing things out of it, how to free it and how the content of it will look).

    With GStrv all that is known. A language binding generation tool will know that it must use g_strfreev to free it and it will know that your blob of C memory will be an array of strings.

    A “char**” can also be a a pointer to the pixbuf of a grayscale image. It can be a binary blob or any kind of array of pointers.

    To all our library writers, please do this:

    GStrv people_bag_get_names (PeopleBag *people);
    GdkPixbuf* people_bag_get_thumbnail_of (PeopleBag *bag, gchar *person);
    

    Don’t do this:

    gchar **people_bag_get_names (PeopleBag *people);
    gchar **people_bag_get_thumbnail_of (PeopleBag *bag, gchar *person);
    

    Replacing your “gchar**”s with “GStrv”s wont create API nor ABI problems, so please do it now and make a new release of your fixed libraries’s APIs. Then at least the array-of-string glue code of language bindings can be fully automated.

    If you are returning an array of object instances, please don’t use GList, GPtrArray nor GHashTable. By using those you loose boxing (your array type is a blob of unknown C memory that contains unknown things that happen to be pointers to GObject instances – but a tool can’t know that -) and (more importantly) you don’t offer a generic collection API for your blob of C memory to other languages.

    Consider using a collection API. Some people are trying to get this into GLib just like GIO got accepted as a higher abstraction for a IO and Stream API. Let’s see what happens.

    Thanks!

    ps. & edit: On IRC jdahlin mentioned that GValueArrays have type information, because the items get boxed onto GValues. If return performance is not an issue, you can also use that instead of GStrv.

    Sauna!

    Yesterday we went to a public sauna where it doesn’t matter too much if they’d throw me out (I don’t often go there).

    We decided to pick that one because we wanted to tryout our mint crystals!

    “Just put them on the stones” I hear all the Finnish sauna people think. Right, indeed! But at most of the Belgian public saunas you are not allowed to bring your own smells.

    In Belgium not everybody has his own sauna. And those who do own one usually have a infrared sauna (because those are often smaller in size). I mean, come on, infrared saunas are not real saunas. You can’t put mint crystals on stones, there are no stones involved! I think it’s much more common for Belgian sauna fans to go to a public one instead.

    Although not allowed, it’s not uncommon that somebody brings smells. Usually there’s a guy putting smells incognito on stones. After some time all the real sauna fans recognize him of course. Often it’s the same people, so you get to know who’s into that. Usually I’m just an innocent observer who joins the saunas where custom smells are being thrown on the stones. In fact I’m inexperienced with bringing my own smells.

    So we waited until there was nobody left in the sauna we picked, it was Sunday evening and stormy, so not a lot of people. Then we emptied a glass, filled it up with some water, put the mint crystals in it, entered the sauna, we threw the glass over the stones, enjoyed, hoped that they wouldn’t throw us out. We didn’t get caught!

    Now, don’t get me wrong. At most of the public saunas in Belgium the owner of the place periodically puts a bunch of smells on the stones for an entire half hour. It’s like some sort of a three-hourly event. When that happens a lot of people join that specific sauna of course. They usually give you some oranges and cubes of ice after ten minutes. They circle with a towel to distribute the air. Etc. It’s not that because you are not allowed to bring your own smells, that it sucks. I guess they don’t want you to ruin their saunas with experimental piece of shit smells that some people would bring.

    Anyway. The Turkish mint crystals were awesome. After the second time I was so thirsty that I drank a half liter cola and a half liter fresh orange. It was amazingly cold on my body yet I was sweating like mad.

    Refreshing!

    Don’t forget

    I am not asking your newspaper to support an administration.. But I am asking your help in the tremendous task of informing and alerting the American people..

    For I have complete confidence in the response and the dedication of our citizens when they are fully informed.

    I not only could not stifle controversy from your readers I welcome it. This administration intends to be candid about its errors. For as a wise man once said, “an error doesn’t become a mistake until you refuse to correct it”.

    We intend to accept full responsibility for our errors and we expect you to point them out when we miss them. Without debate without criticism, no administration and no country can succeed. And no republic can survive.

    That is why the Athenian law decreed it a crime for any citizen to shrink from controversy. And that is why our press was protected by the first amendment, the only business in America specifically protected by the constitution, not primarily to amuse or entertain, not to emphasize the trivial and sentimental, not to simply give the public what it wants, but to inform, to arouse, and to reflect to state our dangers and our opportunities, to indicate our crises and our choices, to lead, mould, and educate and sometimes even anger public opinion.

    ps. This is an extract from a speech by JFK

    Don’t forget

    We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard, because that goal will serve to organize and measure the best of our energies and skills, because that challenge is one that we are willing to accept, one we are unwilling to postpone, and one which we intend to win, and the others, too.

    Upskirt!

    This blog item was done for the sole reason of pissing off some people.

    Wireless Internet everywhere, not

    Another reason why the web fan babies are not getting it is the current price that the vast majority of people today pay for mobile Internet. This is the story of a Belgian who went on vacation for three days in Spain. He bought himself a mobile data formula and I guess he hoped that it wouldn’t be very expensive.

    A few weeks after he came home he received an invoice of 18888 euros. The price per megabyte was 10 euros.

    This poor guy was lucky because Proximus (the phone network company) settled the invoice for 1400 euros. For 1400 euros it would still have been cheaper to take a plane to Belgium, check your mail at home, and take a plane back to Spain. For 18888 euros … I don’t think it’s possible to schedule as much flights in three days as you could buy with 18888 euros.

    I remember I told a few people at GUADEC that it would be cheaper for me to fly home every day to check my mail, than it would be to do this over GPRS in Istanbul. This story seems to verify that.

    These are the prices for mobile Internet access in 2008, the year when all the web 2.0 babies started crying that all of the mobile applications should become AJAX websites.

    Again the point that I’m trying to make is that instead of completely changing the strategy of products like GNOME Mobile towards webberty web stuff, maybe intelligent people should consider that maybe, just maybe, we just don’t have the wireless connections for that yet. In reality, you see, we don’t have that at all at this moment.

    I’m not convinced that within the next decade we will have anything that comes close to reliable wireless Internet connections at the same coverage as GSM. Which still wouldn’t be sufficient. I mean, the connectivity of GSM is really bad if you take into account how often you don’t have a good signal.

    The reason is simple: the economic model of a free wireless Internet for everybody everywhere on the entire planet, is probably just not profitable. The research to achieve this without needing a few thousand nuclear power plants and without having to hire thousands of people for maintenance of the wireless routers worldwide, is just not happening.

    The political power that you’d get out of having control over this giant wireless network can much more easy be achieved by simply owning all news papers, television networks, schools, etc. What that means is that politicians wont do it either.