Christian Heilmann

Author Archive

The art and pain of teaching JavaScript – my talk at <head>

Sunday, October 26th, 2008

I just delivered my talk on teaching, learning and writing JavaScript for use. The slides are available on slideshare below and if you don’t want to sign up, I’ve also put them up on S3.

[slideshare id=695060&doc=javascripttutorialshead-1225047967659425-9&w=425]

I’ve covered the different types of JavaScript consumers: Users, Tinkerers (explaining that there is nothing derogative about this term), Implementers and Developers. I then started to explain where these people come from, what they expect and how we can reach them.

Other topics where how to battle successful but outdated information, ideas how to keep systems upgradeable and generally to consider moving away from an “OMG Ponies! Technology! Let me show you what I can do” to a “Here’s why I love using this and this is how I did it” approach.

Hopefully I inspired some people. I thoroughly enjoyed the session, although it is weird to talk to a monitor :)

YouTube now offers deep links to timestamps (via URI hash)

Sunday, October 26th, 2008

I was very happy this morning to see that YouTube now features the option to jump to a certain time in the video directly by adding a timestamp hash to the URL. For example:

They also automatically create links from comments that mention timestamps. This all is something that I’ve been hacking into YouTube with the YouTube captioner and other people building Splicd.

I guess the next natural step would be to show the timestamped comments as annotations just like Viddler does it.

A spot of rain on the parade is that the geo IP redirect in YouTube breaks timestamped links as you get sent from www. to uk. (for example here in the UK as found by Simon Willison). This should be easy to fix though, please?

Seven reasons why web development is running in circles

Friday, October 24th, 2008

I just finished giving my presentation at the conference called Seven reasons why web development is running in circles

[slideshare id=689228&doc=sevenhead-1224870102571557-8&w=425]

In this presentation I was listing some of the issues that – to me – keep web development from being professional and innovative. I get the discouraging feeling following the web and several mailing list that we do the same mistakes over and over again instead of learning from them and moving on.

The reasons are:

  • Turf Wars
  • Ego
  • Quick Win Tutorials
  • Antique Recommendations
  • Tickbox Standards
  • Status Quo Fetishism
  • Form Over Function

I think the talk went down quite nicely and if I came across as “patronising” I am sorry, this was not the intention. I’ve been working a long time as a web developer and I love getting new people into our world. It would be a shame if new people couldn’t bring new ideas and angles because they get caught in the same fights we fought repeatedly.

GreaseMonkey script to show if a twitter user follows you or not

Wednesday, October 22nd, 2008

As requested by Josh here’s a greasemonkey script that shows if a certain user follows you on twitter by adding a (follows you) to their name on their profile page.

It works – kinda. As there is no way to get a list of all the people a certain twitter user follows on one page (unless I missed something in the API - help please?) the script first checks if you are in the 30 first followers on the page (the thumbs) and if you are not it loads the “friends” page of a certain user and checks if you are in that page. This covers 60 cases, but not all. Oh well…

Source:


// UserScript
// @name           Follower
// @namespace      twittertools
// @description    Shows in an obvious way if a certain twitter user is following you
// @include        http://twitter.com/
// /UserScript

(function(){
if(document.getElementById(‘profile_link’)){
var you = document.getElementById(‘profile_link’).href.replace(/.*//,’‘);
var friends = document.getElementById(‘friends’);
var header = document.getElementsByTagName(‘h2’)[0];
var friends = document.getElementById(‘friends’);
if(friends.innerHTML.indexOf(‘/’+you)!==-1){
var side = document.getElementById(‘friends’);
var header = document.getElementsByTagName(‘h2’)[0];
header.innerHTML += ’ (follows you)’;
} else {
var url = window.location.href + ‘/friends’;
var isme = ‘http://twitter.com/’ + you;
GM_xmlhttpRequest({
method: ‘GET’,
url:url,
onload: function(responseDetails) {
if(responseDetails.responseText.indexOf(isme)!==-1){
header.innerHTML += ’ (follows you)’;
}
}
});
}
}
})();

Rushing back to London to get some <head>

Wednesday, October 22nd, 2008

This is my last day in Bangalore, India and I am flying back tomorrow morning at 4am just to get back in time to London to attend the hosted part of the conference.

There are a lot of tickets left, so don’t be left out and come along to see several of the speakers give live talks (including Steph Troeth, Jeremy Keith, Ann McMeekin, Simon “Harry” Willison, Steve Webster and a very jetlagged and ruffled me).

There’ll also be a talk with Tim O’Reilly and general good networking opportunities.