Christian Heilmann

You are currently browsing the Christian Heilmann blog archives for January, 2011.

Archive for January, 2011

Threewords.me and displaying your words in an HTML document using YQL

Tuesday, January 4th, 2011

Whilst I am still not quite sure why, I signed up for Threewords.me, a service where people can describe you in three words. My results range from expected over disturbing up to WTF, so that’s all good.

Now, threewords.me has no API as far as I can see and in the admin section there is a nice list of 10 most used words. To work around that I thought I use YQL - the statement is pretty easy:

select * from html where
url=”http://threewords.me/chrisheilmann” and
xpath=”//strong”
| unique(field=”strong”)
| sort(field=”yahoo:repeatcount”)
| reverse()

You can Try in console to see that it does what you ask it to – get the words, make them unique and sort them by frequency.

Add a dash of JavaScript and you have a list you can display in your pages:

display of the list of words

You can see the script in action here or you can also get the source on GitHub.

Seven things I want to see on the web in 2011

Sunday, January 2nd, 2011

As I’ve been particularly nice all year, I think I deserve to be allowed to have a wish list of things that should change on the web in 2011. So here is what I want to see:

  1. HTML5 everywhere
  2. Death of the password (antipattern)
  3. Backup APIs
  4. Focus on Security
  5. Governments embracing the web instead of fighting it
  6. Cloud based apps with sharing facilities
  7. More hardware-independent interface innovation

1. HTML5 everywhere

Those who know about my new job heard that I am putting my full energy this year into making HTML5 work to be the replacement for the hacky efforts we do right now to write web applications. I want to see 2011 as the year HTML5 turned mainstream:

  • I want amazingly beautiful and useful software to be built and put in front of the luddites of the web who force their users to have IE6 and not support any other browser.
  • I want to use native form controls like date pickers in travel web sites and finance sites.
  • I want every video on the web to be open and I want to be able to save it with a link and manipulate it without having to re-encode it.
  • I want collaborative software to use web sockets (once the protocol has been fixed) and I want to see web workers to be used to avoid interfaces grinding down to a halt when some calculation needs to be done.
  • I want online converters that use the cloud to make video conversion into open formats dead easy – I also want to have a subtitling format for that.
  • I want interfaces to natively be progressively enhanced by using the same widgets server and client side.
  • I want systems to use Geolocation and Local Storage to be responsive and clever in getting and storing my information rather than having to enter the same data over and over again.

And I want a donkey and a happy puppy to play with – but that’s a different story.

2. Death of the password (antipattern)

I hate memorising passwords. Everybody does. The recent hack of gawker media for example showed that people use amazingly clever passwords like “1234567” or “lifehacker” (on lifehacker.com no less) instead of choosing one that is safer but harder to remember.As I don’t use the same password everywhere and I don’t like staying logged in at sites I don’t frequently use a huge chunk of my online life right now is resetting my password. Not fun, but neither is typing in very complex passwords on my mobile.There are alternatives. Using Facebook, Twitter, Google and Yahoo and oAuth you can allow people to sign in to your site – without having to remember another password or do the dance of going from your site to email and back. Using OpenID you can allow people to use their homepage as their login. These systems also have the benefit that you can tap into the social identity of the users on these systems rather than asking for the same data over and over again. I would love more people to use them in 2011 rather than slavishly sticking to an old idea of having to collect user data on your own system. This is the web – use it.

3. Backup APIs

The recent involuntary announcement of Yahoo that del.icio.us is under the hammer (or halfway in the blender) makes it obvious that nothing is safe to use in the long term (I will write a longer article about this as the Yahoo bashers also live in a dream world, IMHO).Therefore I would love to see startups and API providers always offer a backup API in addition to the normal read/write/update APIs. If I don’t like a system any longer it should be easy for me to take all the data I spent a lot of time and effort on over the years with me. Dopplr was a great example of doing this right. In the current run for more and more realtime web apps we forget that backups are important and simple the decent thing to offer our users.

4. Focus on Security

Yeah, I get it – we need to innovate. We need to innovate hard, cause only the ones with the cool new features every week are the ones who win. Rah Rah Rah.

I disagree though that innovation means sacrificing security and this is what happens all over the place now. Hell, I’ve even heard speakers at startup conferences say that security can come later and privacy is not an issue really. That is bullshit, and anyone with half a technical mind should know it.

The web is a mess right now and it doesn’t have to. Storing data unencrypted, transport of identity in clear text over HTTP, XSS vulnerabilities, backdoors and SQL injection are not misdemeanours – they are just sloppy development and will bite you in the arse sooner or later. Sure, Facebook can pay a lawsuit of people getting their identity stolen. Can your startup?

I dread the day when stealing online identities becomes as profitable as credit card fraud and when the organised crime institutions of this world start targeting it. If we want the web to be awesome, we have to make it secure. Otherwise other people will try to solve the security issues for us – and boy are they clueless, which brings me to the next wish.

5. Governments embracing the web instead of fighting it

Wikileaks was a very necessary incident this year. There is information out there that is kept from us. True, a lot of times knowledge can be dangerous and some information should be kept away from people who don’t know how to read or handle it properly. The same piece of information can be displayed in one way or another to cause one emotion or another – this is what TV is for.

However, if there is one thing that Wikileaks showed is that the people who should have all the knowledge are not necessarily the governments. They’ve proven before that a lot of classified information gets lost by leaving laptops and printouts on trains.

One thing that is less mentioned is that Wikileaks showed that the web is an incredibly efficient media to distribute information and get people to defend your cause. LOIC and the attacks on Visa and Mastercard shows that you can leverage the power of every user out there and make their computer part of a cause – even without them knowing much about computers. Right now only the baddies do that – zombie botnets and viruses.

How about a government programme that allows every citizen to download some data and crunch through it for the state? How about making the job of creating a more efficient state the job of every citizen? If you censor people, you have them against you. If you are open in your communication and share the challenges and ask for help you make people your allies.

Instead of seeing this obvious opportunity governments right now are afraid of the web and try to control it – in essence turn the read+write media that is the web into a lame consumption channel much like TV.

Recently the UK proposed to remove pornography from the internet and you need to contact your ISP that you want to consume it beforehand. I am hard pushed to find a lamer excuse for monitoring people’s online behaviour. I am also hard pushed to even fathom how that would work.Are Rubens pictures of huge naked ladies pornography? What is that file called qweaasdwewweq.part2.rar on Rapidshare or Hotfile? Sure, pornography sites that rated themselves with a meta tag are simple to block, but surely if you want to remove porn from the web you also have to block Blogger and any other simple publication platform people use to store naughty pictures or links to rar-ed full movies. Or maybe that is actually the end goal?

6. Cloud based apps with sharing facilities

I have not gotten my Google laptop yet (I asked for one though, let’s see if that works out) but I love the idea of not having to install anything on my computer any longer. When I joined Mozilla I was amazed that the company laptop came completely empty (I was also amazed just how much information Apple wants to know about you when you install OSX). The reason is that everything the company does is online.

We use Zimbra as our mail, BaseCamp, Google Docs, Etherpad and some others. This rocks, and it would rock even more if cloud based systems would talk more to each other:

  • Instead of sending a URL to someone to open a Google Doc, why not have it as a virtual attachment that allows me to save it as a PDF for on-the-go reading directly from a mail client?
  • Why can’t I just upload a movie to S3 and it automatically creates embeddable WebM versions for me?
  • There are some very cool image editing tools on the web now, but where are the video editors? (yes, there was Jumpcut, but it got the old yeller treatment by Yahoo).
  • We need some cool SVG editors online, which could convert other path-based formats on the go.
  • We need better editors for HTML5 content and put them in the cloud rather than install them locally.
  • We need a good web-standards-based slide system which allows us to sync video and audio easily.
  • We need a web based version control system that handles textual and binary data and not require you to know your way around a CLI. The HTML5 File API could be used for that.
  • Why are all expense and travel systems in the style of the 90s? Why can’t I just link my online bank transaction PDF to an invoice system and tick the ones I spent for the company to get the money back?
  • Why don’t systems use the new technologies we have right now to allow for storing data locally and offline?

In other words, we use web based systems but we forget that they could talk to each other and have much more to play with in browsers than we had in the 90s. Many a time I had to create a PDF and attach it to an email so someone in the expenses department could copy and paste from it into another system. That is just wasted time and duplicated effort. Once things are digital they can be re-used.

A lot of cool online systems are in place already, now it would be great to build some collaboration frameworks that allow me to sync them and connect them. There are some very cool things in the making right now – let’s hope this year will be the one where they become industrial strength and get a lot of use.

7. More hardware-independent interface innovation

2010 was the year of hardware innovation. Apple’s iPad, iPhone and Android systems leapfrogged the old grey huge boxes and netbooks and sub-notebooks made us much more mobile than ever before. Small screens and touch interfaces bring up new and exciting challenges and mean that we should question some of the “standards” we use right now (best example are lightboxes which are simply awful to use on a mobile).

However, instead of taking these learnings and simplifying all interfaces we build hardware specific solutions. A lot of the CSS innovation done by Apple is very much targeted to iPad solutions and it will take other browsers some time to take these on – especially when nobody requests browser vendors to do so.When the iPad came out people asked me if I will now change all my sites to work for it. No, I won’t. I will tweak them to work with it alongside all the other systems out there, but I fail to see why I would want to leave out hundreds of millions of users of the web who do not have an iPad.
So instead of tweaking our designs and interfaces to cater one single solution I would love to see original patterns being enhanced and changed according to new use cases. Hardware is fleeting and changing. Patterns stay.

Conclusion

That’s it! I have a few more requests (like free wireless connectivity at public spaces instead of charging 10 Euro for half an hour like this friggin airport does) but for the web, this would make an awesome 2011. Let’s get to it!