Free Internet ?!

As I hope all of you know Microsoft has managed to take cryptome.org offline because it was hosting a file that they didn't like. Here for those who don't know what Cryptome is:
Cryptome welcomes documents for publication that are prohibited by governments worldwide, in particular material on freedom of expression, privacy, cryptology, dual-use technologies, national security, intelligence, and secret governance—open, secret and classified documents—but not limited to those.
This site has been up since 1996. It is not some dubious hacker site. It just provided information that didn't really harm anyone. So I thought "this is shit" and knowing that everything is cached I had a little look into Bing. And viola Microsoft has a full copy of the page in its own cache just search for the file they are trying to block and you can view it by clicking on the little gray text "Cached page". So they should maybe shutdown themselves. Just another step in the censorship of free speech. China here we come.


And of course wikileaks helps again File

Something interesting about the county I live in:

Cloud Computing

My view of the word cloud computing:


CTO = Chief Technical Officer
original image from http://www.go.dlr.de/wt/dv/ig/icons/funet/viz2.gif

The great German Firewall

We all complain that China is filtering the net. A friend who is currently in China and me have a fun little game where we try to find pages that are not filtered but regime critical and thus try to find holes in this firewall. I think that it needs no discussion on how bad this is. But I don't get why everyone is only complaining about China. I live in the UK and as many as you might know we don't have a free press here. There is something called a Super injunction or Gag order which stops papers or anyone reporting on certain matters. And even stops them reporting on that they are not allowed to report on it. This also applies to stuff discussed in parliament as the Trafigura case showed. This is censorship in the purest form, politicians discuss something in parliament and no one is allowed to report on it . So we have established that papers are censored (in the UK). Now lets look at the net censorship. In Germany they passed a law that is named
"Gesetz zur Bekämpfung der Kinderpornographie in Kommunikationsnetzen"
which roughly translated means "Law to fight against child pornography in communication networks" And the basic idea is that there is a secret list made by some government officials which contains web sights that are not allowed to be viewed in Germany. While I am totally against child pornography lets think about this law a little more. Germany is know for its porn. Porn companies are traded on the stock market. And these companies have been loosing a lot of money based on that people can upload porn on streaming pages (which I am sure you all know) and not pay for the DVDs or what ever. Pretty much what is happening to the music and film industry. But the German porn industry was far more intelligent. If you want to publish a porn movie in Germany you need a certificate that all people acting in it are over 18, fair enough but as the streaming sites are mostly user upload based they don't have these certificates for all the movies they publish. So now all the big company has to do is blame this streaming page of distributing child porn, as they don't have the certificate they can't prove the opposite and are now officially filtered by the great German firewall. So after some time the people who want to watch porn will have to go back to the big company and pay for the "clean" content that has a certificate. So instead of suing 100000 of users they just block the content what the film and music industry have been trying for years. Amazing idea, I would really like to meet the person who came up with this. Porn companies funding a campaign against child porn on the net so they can make more money.

Besides all of this it is an excuse by the government to install internet surveillance which of course will never be used to filter something else (sarcasm). It is only a matter of time till other countries will follow and the last "free" media channel is closed. So I really don't get why people always complain that China is such a "bad" country Europe is just covering it up more elegantly. We have already passed 1984. All hail the Ministry of Truth.

P.S. I wonder in what countries this entry will be filtered.

What is wrong with Goog$e reader


Like a lot of people I read s**t loads of RSS feeds. And for some reason, I can not remember, I use Goog$e Reader to do this. Now here is the problem: A Rss feed will normally only consist out of titles, so if the title sounds interesting I will open a new tab with this page and continue reading the feed. So I can't really say if I like or want to recomend this page.


So the whole conzept of recomending pages doesn't really work IMHO. I need to search for a reader that has a more email layout. Here is a little mockup how I would like the read to look like:

As you can see there is a little page preview. I don't know if this would actually make my reading more productive. When I am reading the feeds now I set my brain into a "filter mode" in which I just read the titles and decide if this interests me more but sometimes I also get information through the title alone and don't necessarily need to read the rest of the page. Anyhow reading through the stuff I recommended it was always something I could read in the reader directly and never just a title. So my advice to Goog$e if they want the "like" and "recommend" system to work they need to add a preview page.

3 Stages of Linux

What lies beyond

Centos Booth



As started by Leo

Another buzz post

People who know me know that I don't really use twitter or any mini-blogging sites. A few days ago I started using a little plugin for my mac to post to twitter but I don't really use it. Maybe because I don't have the time to read any of my friends posts I don't enjoy adding contents. So as I heard about Goog$e Buzz I had to try it. Looking at it, I think it is a bad idea to integrate it into Gmail as it will make it even slower and bigger. I already stopped using the web-interface as it was unbearably slow. But of course the intention is that through this they will have a big user base which they need to attack twitter and co. Something else I realized is that through having it in the Gmail window it seams that only your friends can read your buzzs. Posting something there I would not assume it to be public. Just because my mental model is that everything that is posted in this area (like my mail) is not public. But no, this data is very public. It is just on your profile page which google is trying to push for many years. This just doesn't fit the way I think. Maybe the next feature will be post this mail on Buzz or something :). If you go into the settings page you can disable this for the pages you have linked up to your buzz but not for the actual data you post. I further tried to integrate my twitter account into Buzz which doesn't seam to work. Lets see if this post will show up. There really needs to be one website where you can post to all these social networks. Identi.ca is already going that way but not quite there yet. Would be cool if you post something to twitter/facebook and this will be propagated to all other sites.

The importance of profiling

I am just working on a project where I have to parse XML files that are about 50 (+/-) megabyte big. Because I still think that PC run time is less expensive then my programing time I am writing this in python. I started coding using the xml.sax library and just filled in the gaps. But the more I added the slower the code became, in one case it took the parser about 10 min to create all the structures I need out of the XML file. After getting the functionality right with a subset of data I started profiling why it was taking sooooooooooo long. I used the excellent python package

profile.py -o statsout readRepro.py

So the first thing I found was in this method:

def characters(self, data): self.tempData +=data

This is called every time I encounter the data section of a XML element. Because it kept appending strings to stings this took ages. I replaced it with

def characters(self, data): self.tmpbuff.append(data)

and the run time went down form over 10 min to 7.2 seconds. How amazing is that. I would have never guest that would take up so much time. That is one little change. If I would have had to guess what was taking so long I would have optimized the parsing. After more work I found another method that I had just built in to do some debugging. It was basically checking I was coping with all the elements I would encounter. Useful while coding but after commenting one line I improved the performance from 55.7 to 6.6 seconds.This just proves that we as programmers have no idea where our programs spend most of their time. If you are coding and you are thinking of optimizing something, chances are you are wrong. I know a lot of people say this and a lot of people are against it, but my finding is that actually finding out where your programs spends the time is far more worth then guessing.
Lesson learned for life: "Use a tool to see where you are spending your time"
It might be in some debug method you don't really need.

Media on Mac

I had huge problems playing different media files on my Mac. For example DivX files played without sound. After installing http://perian.org/ everything seams to work a little better. A little astonishing that a machine that is designed for media needs media plugins. But never mind it works fine now.

DevMob holiday for intel employees (and friends)

I am just back from DevMob 2010 that was held at the Science Museum in London. Here are some of my impressions. The first thing that you noticed when you looked the conference up on the net was this quote
London 'unconference' giving developers interested in portable devices the opportunity to discuss their issues and find solutions
Reading this now makes me chuckle as it really was an 'unconference'. But more about this later. On my free day I decided to attend this as I am currently looking into developing on mobile platforms and I have already heard many talks on the topic. There was also a competition I wanted to attend with an EeePC as a price. Arriving at the venue the first thing you noticed was the money they must have spent on the location, it was really nice. An old library room with a lot of books and all very posh. Another thing that was astonishing for a free conference was that there was coffee and little pastries up for grabs being served by a friendly well dressed young woman. After sitting around and waiting for a little wile (conference should have started at 10) we finally all gathered and started writing the schedule. You don't have to imagine this like being a Barcamp sort of style get together. No there were fixed talks that where allocated at certain times but it was made out to be a group effort. This is when I noticed that there where actually more "official" people with Intel badges then "real" guests, which seamed a little odd. Then we disbursed for the talks. I listened to the first talk about Moblin (the Intel Linux platform) which was sort of nice but the lecturer didn't seam to know what he was talking about and repeatedly asked a lady in the audience that didn't seam very interested in what was happening. At the beginning I started talking to a guy and now it was his turn. Instead of talking about something useful he used the time to describe a graph he had come up with and asked us what we would improve. He is a professional blogger so I wonder if he will cite all the ideas we gave him. He tried to save the talk by bringing loads of gadgets that you could play around with at the end, but at that time I was already considering going home (which some of my friends did). But no, I stayed. Why you might ask, bear with me there was an EeePC. Lunch was calling and again they had a really nice buffet with sandwiches and a lot of nice food. (Cost ?) After that I participated in a discussion on optimization and then on how Intel is planing to sell applications through their store. More people started arriving and I talked to some students that had also come from UCL. Now comes the main point that makes this day an absolute waste of my time and that gives me the impression that this was all a charade. On the invitation it said that
There are still plenty of opportunities to walk away with prizes and goodies, including the chance to win a netbook, courtesy of our sponsor Asus. Remember to bring along your ideas for the perfect netbook app – pitch to the panel and if they think your idea is the best, a netbook is yours to take home
I had an idea and I wanted to pitch it to the panel. So did 4 of my student friends. We spent quite some time talking about our ideas and discussing them. I repeatedly asked people from the organization about this but never got a clear response. As I had prepared something I wanted to talk about it and at least get a fair chance. This was actually the main reason we stayed. But little did I know that the Intel bribery machine was in full swing. At some point we were asked to "register" our topics for this panel. I was the first to put down my name and the area I wanted to discuss. After some time we were all asked to assemble in the main room so we could hear about who had won the competition. I didn't quite understand what was going on but went along. Asking the guy in charge I was informed that the panel had met and that they will not listen to our ideas and that they had made a decision. It became apparent that this was just a big show and that the winner was a guy that was talking to one of the speaker (who was chair of the panel) all day. Remember we where initially told to register our topic on a flip chart, this was then apparently used to evaluate our idea. This can only be described as bribery. Students where tricked into attending and putting forward ideas so that Intel could cover up inviting bloggers to London on their expenses and so get good publicity for Moblin. I am sorry Intel spent so much money for a expensive, disorganized event that this is the only conclusion I can come up with. Talking to some friends on the way home we all agreed that we should have stayed at home and spent our time doing the assignment that is due soon.

P.S. There is another contest :
Win an ASUS EeePC by blogging about DevMob!
Ahh wait. I talked to three professional mobile bloggers that where enjoying the nice expensive food from Intel. Guess who will get another EeePC. You got it, one of the bloggers that will write a friendly nice article about this event and might even mention Moblin.

Additions:
A friend that joined me said he was a little ashamed that UCL was promoting something like this. I will mention it at the next management meeting. I have further left out names on purpose but feel free to talk to me for more information.


I got an email from the organizers, so maybe my rant did change something:
Hi Didi,

Thanks for the blog and your feedback.

I'm sorry that you and your colleagues didn't enjoy the event so much but it's really good to have precise feedback so we can improve future events.

Due to time constraints, unfortunately we weren't able to run the app competition as we wanted to. I know people were disappointed about this, so we will be running a follow-up competition for anyone who wants to submit their application idea. I'll be emailing attendees about this shortly.

A couple of things to mention: the only Intel people there were Stephen Blair-Chappell (talked about optimisation and tuning), Costas and Sulamita (the two who talked about Moblin) and two in an organisational capacity. The rest of the blue badges were other event sponsors, those who had offered in advance to host a session and the event co-ordinators (non-Intel).

Also, a note on the blogging competition - pro-bloggers and journalists are ineligible, so no worries about them winning the prize.

I'll be sending around a feedback form soon and it would be great to hear any further thoughts you have on the event.
I removed the senders name and footer