Christian Heilmann

You are currently browsing the Christian Heilmann blog archives for March, 2014.

Archive for March, 2014

On hating

Monday, March 31st, 2014

Some months ago I wrote about a word I can’t stand and explained why. I have another one that annoys me, especially when it is used in a flippant fashion in online discussions: hater or “hating on something”.


Hate is a powerful thing, and it is always destructive. It is the opposite of love and whilst being just a word, for me it is the end of all creativity and creation.

I don’t have to love everything, but there are various degrees of loving things. There are no degrees of hate. Hate is a final state, giving up on something and despising it. Hate is destruction, hate is the opposite of evolving.

You can dislike, you can disregard, you can disagree, you can be annoyed by something. That is good. That means you want to change it. When you hate something, you dismiss it as not useful and not for you, no matter how it’d change.

That’s why I feel utterly crushed and ready to give up when someone calls someone else a “hater” for criticizing something. I feel almost physically woozy at the grammatical abomination that is “don’t hate on $topic”.

I get it, it is a slang thing and used at times in a flippant fashion and can be countered with a “haters gonna hate”. To me, this ends a useless conversation, a pointless exchange of nothings and sooner or later a decrease of the value of hate.

Hate to me is a powerful and final state. Death of information, death of conversation, death of ideas. By using it flippantly describing someone’s dislike or criticism of a topic, we make it a common thing. We seemingly strip it of its power, but what we really do is invite even stronger opinions, and in many cases the worst ones we can imagine.

By calling any point of view that is not ours “hating” we achieve two things:

  • We silence the people who actually had good input on the matter
  • We invite the trolls to take over

Hate is something that needs to die. It is not helping. Hating is something people do who want to destroy without interest in learning about the thing they are against. Don’t call people that unless you are 100% sure that this is what they are.

Words build up or tear down people. Use yours wisely and make a better world.

100 super useful web sites allowing one simple task each

Tuesday, March 25th, 2014

I just came across this post on imgur showing lots of cool little helper sites. Sadly there were no links in the description, so using some Sublime Text Magic, I converted them.

Just to find out later that not only do imgur posters either post screenshots of links or unlinked links, no, all of this was once again stolen content.

The original list is maintained by Amit Agarwal so please go on to:

The 101 Most Useful Websites

Excellent work, Amit, shame people don’t respect it.

To make this not a total waste of blogpost, at least here is how I used Sublime Text to turn a list of non-links into a list of links using a bit of regular expression knowledge (go fullscreen).

Do HTML5 apps have to be online all the time?

Sunday, March 23rd, 2014

One would think that almost five years after the definition of HTML5 offline capabilities this question would be answered. As someone spending a lot of time on HTML5 panels and Q&A sessions at conferences I can tell you though that it gets asked every single time.

being offline

As part of the App Basics for Firefox OS video series we recorded a very short video that shows that HTML5 apps totally can work offline:

You can see the demo explained in the video in action here: non-offline version and offline enabled version.

So here it is: No, HTML5 apps don’t have to be online all the time, they do work offline if you write them the right way.

“But, but, but, but, but…”, I already here people go, “it is not that simple, as there are lots of issues with offline functionality”.

Yes, there are. Appcache is a less than perfect solution, as researched in-depth by Jake Archibald and published in non-minced words almost 2 years ago. There are also issues with localStorage being string based and synchronous and thus being less than optimal for large datasets. For larger datasets the issue is that indexedDB is not supported by all browsers, which is why you need to duplicate your efforts using WebSQL or use an abstraction library instead.

But: these are not insurmountable issues. I am very happy to see offline first becoming a UX starting point, I am super excited about discussions about replacing AppCache and the ServiceWorker proposal showing a much more granular approach to the issue.

For an in-depth showcase how offline can really work, check out Andrew Bett’s 2012 Full Frontal talk.

The problem is that these are details that don’t interest the business person considering using HTML5. All they hear is experts complaining and bickering and saying that offline HTML5 doesn’t work. Which isn’t true. It doesn’t work perfectly, but nothing on the web ever does. Many, many things in Android and iOS are broken, and many apps don’t work offline either. These shortcomings are not advertised though which makes native apps appear as a much more reliable alternative. We should stop showing our behind the scenes footage as a highlight reel.

I really, really want this question to not show up any longer. The documentation and proof is out there. Let’s tell people about that. Please?

Edgeconf 3 – just be there next time, trust me

Saturday, March 22nd, 2014

I just got back from Edgeconf 3 in London, England, and I am blown away by how good the event was. If you are looking for a web conference that is incredible value for money, look no further.


The main difference of Edgeconf is its format. Whilst you had a stellar line-up of experts, the conference is not a series of talks or even several tracks in parallel. Instead, it is a series of panels with curated Q&A in the style of Question Time on BBC. Questions are submitted by the audience before the conference using Google Moderator and expert moderator triage and collate the questions. Members from the audience read out the questions to the panel and the moderator then picks experts to answer them. Audience members also can show their intent to ask a question or offer extra information.

In essence: the whole conference is about getting questions answered, not about presenting. This means that there is a massive amount of information available in a very short amount of time and there is no chance to grand-stand or advocate solutions without proof.

The main workload of the conference is covered by the moderators. It is up to them to not only triage the questions but also keep the discussion lively and keep it entertaining.

All the moderators met the day before the event and spent half a day going through all the submitted questions and whittle them down to seven per panel. Each person answering a question has 30 seconds to a minute to answer and there is strict time-keeping.

The whole event was streamed live on YouTube and the recordings are available on Youtube/Google+.

During the panels, the audience can interact live using the Onslyde system. You can agree or disagree with a topic and request to speak or ask a question. All this information is logged and can be played in sync with the video recording later on. Onslyde also creates analytics reports showing sentiment analysis and more. Other conferences like HTML5DevConf, Velocity and OsCon also started using this system.

Another big thing about Edgeconf is that any of the extra income from tickets and sponsorship (in this case around £10,000) get donated to a good cause. At the end of the conference the organisers showed a full disclosure of expenditure. The cause this time was Codeclub, a charity teaching kids coding.

I am very proud to have been one of the moderators this time and run the accessibility panel (a detailed post on this comes later).

I have to thank the organisers and everyone involved for a great event. I learned a lot during the day and I am happy to be involved again in September.

Three Pre-TEDx questions

Tuesday, March 18th, 2014


I am excited as a puppy with three tails about the opportunity to speak at TEDx Thessaloniki later this year. It is very different from talks at IT conferences and has been a dream of mine for a while. Today the organisers asked me to answer three questions to get some more insight into what I think (there be dragons, believe me). Here’s what I answered:

1. What is the biggest change you’ve experienced in your life, in personal level, until today?

I was very lucky to have had the courage to make a clean cut when I had the chance. Leaving my home town and the country I was born in for a job is something most people dream of and a lot of others are too scared to do. By un-rooting myself and going to work in a country where I don’t speak the language natively I got a jump-start for my career.

This clear cut also gave me the courage to approach my work differently. For example, I am 100% sure that my career is based on the fact that I gave out everything I do for free and for other people to build upon. People called me crazy and my parents to date still wonder how I make money without charging people for everything I do. I love it, because it means my work gets used which gives me more satisfaction than a one-off payment would do. It also means that my thoughts and ideas live on even when I move to other goals or get hit by a truck or eaten by a tiger. I freed my ideas and thoughts and this inspires other people.

Liberating yourself from traditions and pressures of your background gives you an amazing sense of freedom and liberty to become more than you are.

2. What’s the biggest goal you have set until today? Is it accomplished? Do you still fight for it or you quit it, and why?

I think I once saw an interview with Stephen King where the interviewer asked him how much money he has and he answered he has no idea. He just wants to carry as much around as he needs to buy some new clothes or a sandwich. Whilst I am not a big fan of his work, this excited me. My goal is to feel happy with what I do and to share that excitement. I am doing really well in that, but there are still so many rigid ideas to fight. I want people to do what they love to do and make a living with it. We don’t celebrate these enough. Instead our media portraits the richest people as the most successful, despite the fact that not many of them are happy being in the rat-race.
I started as a radio journalist and quit my job when I discovered the internet. I loved the idea of a free medium open to anyone to publish and be heard and I spent years and years to show people that it can be done. Nowadays I worry a lot about this dream. The internet is on the decline – people are OK with governments censoring it and are fine with being told what hardware to use and that some materials are not available to them because they are in the wrong country. This is not the medium of the future. I will not give in to marketing telling me that this is evolution – I think we’re going backwards.

3. From what we have experienced the recent years, as a global society, what event would you describe as the biggest end or beginning for humanity?

Wikileaks. Hands down. It was a wonderful information bomb that exploded and unearthed not only lots of information that needed to be heard but also a wake up call for people. Are whistleblowers heroes when the information they leak is important to us? What if the same people leaked information about our security to outside enemies? Who are the enemies? Do they really exists or are we being told what to fear so we don’t ask too many questions?

Much good can come out of this, many important discussions to be had. Events like this can bring out the best in humanity which means to me the beginning of something great. It also shows me how many people are not even interested in questioning their governments as long as there is a new TV show to follow, which is a sign of the end of humanity. It polarises and that means we can now pick a camp. If anything, there is movement and a mass can only be a force when it is moved.