Interview with Christian Heilmann

Post on March 15th, 2009

Christian Heilmann is an author of books such as Beginning JavaScript with DOM Scripting and Ajax: From Novice to Professional and Web Development Solutions: Ajax, APIs, Libraries, and Hosted Services Made Easy, speaks all around world as an International Developer Evangelist for Yahoo!, and is an all around Web guru.

Christian was nice enough to give me some of his time to answer questions about the future of the web, accessibility, conferences and of course JavaScript.

JW: You recently wrote an article on ThinkVitamin on how you have seen the changes in web development. Do you think that the web community will soon become stagnant because the hype of Web 2.0 has died down?

Christian Heilmann: Actually no, I think there is now more of a need for good developers than ever. The hype in Web 2.0 resulted in a lot of products that needed to go out to the market yesterday and not in the four month they really need to be good products. Now that the rush and the silly money is ebbing down developers will have less illusions of grandeur and have to do a better job in producing products that work, are sustainable and maintainable and bring a longer-term revenue stream.

This means working more professionally and thinking about what we do rather than creating the next rounded corner, gradient and vowel dropping one month wonder.

Of course less will be produced, but that is totally fine by me. I’d rather see 4 new good products than 30 that die soon after being a TechCrunch article.

JW: Do you have any tips for developers on how to communicate better to management the importance of quality code as opposed to just getting it to work?

Christian Heilmann: Keep detailed reports on how much time had to be spent fixing issues caused by code shortcuts and “fix it now and we make it work later” decisions. Show examples of how other companies managed to release products faster and better by sticking to best practices and a defined code standard.

Ask why it is totally needed to follow defined processes in HR and PR but on the other hand everything in development should be played by ear.

I have set up a Wiki on the subject matter quite a while ago that has some good examples: http://icant.co.uk/webstandardsforbusiness.

In any case you catch more flies with honey than with vinegar. Good code and clever development practices are first and foremost a safeguard for yourself and should be something you do to protect your own sanity. Best practices being ordered from top-down are never likely to work out but instead are more likely to cause unhappiness in the development team.

JW: Late last year you organized a much needed workshop/conference called Scripting Enabled, which helped join web developers and users with disabilities better understand the importance of web accessibility. Could you give us a quick review of how well it did?

Christian Heilmann: I am still amazed as to how smoothly the conference went given the ridiculous amount of real time and money I invested in it. I guess it is another sign that having a good network of people who are as excited as you are about a certain topic is the most important thing in making anything a success.

We had great speakers giving real hands-on information of how different disabilities affect the way you access the web and what barriers they face and we had a lot of developers on the second day working with this information to build interfaces that work around these issues.

Several new products started on the event and first and foremost I managed to bridge the gap between accessibility fans and developers a lot more than most of the other conferences did. All the slides are available, all the things that were built are described on a wiki and I am now releasing the videos bit by bit with transcriptions.

Right now I am working on an upcoming accessibility section for the Yahoo Developer Network and we’ll publish a lot of the information gathered and videos there soon.

What I am a bit disappointed is that not many people take on the idea – anybody can do an own scripting enabled and I’ll be happy to promote them for it but so far there was only a second one in the US. I think it is quite a step for people to say “I can do this”.

JW: What do you think are the main reasons that web developers do not put more emphasis on development for accessibility?

Christian Heilmann: I guess the biggest part is that accessibility is just not an integral part of the product roadmap. Most of the time developers get a design and have to implement it. Whilst we develop in agile ways the design process in most companies is still very much “make it pretty then send it to the developers”. Real accessibility comes from an open, iterative approach across the board that starts with user centered design rather than fixed interfaces.

Another reason is that there is a terribly large amount of myths and bad examples of accessibility out on the web. Instead of embracing the idea of accessibility – which includes a lot of flexibility – a lot of developers just want a quick solution to be able to say they’ve done something.

This is to a large degree the fault of the accessibility community itself – feedback is hard to get and if you get it a lot of truisms and old school thinking is coming back to you. Personally I am very worried about the gap between where web development is right now and where a lot of accessibility advocates consider it to still be.

There is an amazing amount of open source solutions for assistive technology and Firefox has a lot of great extensions. Yet most of the time you ask for testing with screen readers you will hear tales of woe of how expensive these are and how hard it is to install them and that is why we should all support really outdated versions running on Windows 2000 and IE6.

The biggest issue however is bad time planning – most of the time we are already behind on the delivery of our products which would make accessibility a luxury item. This is also caused by developers being overly optimistic about their own delivery skills – we are very much likely to under-estimate delivery times as we are such awesome developers who can do everything in 5 lines and 2 regular expressions.

You won’t find yourself able to rush a plumber into delivering a four hour job in one hour, but it is easy to do that with a developer. We also are happy to get more developers to release a product faster. This is not going to happen as with more developers you also add more collaboration overhead. Nine people can’t make a baby in a month.

JW: Has the recent version of the YUI library (ver 2.6) focused enough on web accessibly in your opinion?

Christian Heilmann: The groundwork is there and all YUI components can be built using progressive enhancement. There are ARIA plugins available for the newer components, and this is where YUI3 is headed. It was a bit of a job to get all the things working and make sure we get the components up to current accessibility standards but I have to say I am very happy with where this is going.

Todd Kloots and Victor Tsaran are doing a sterling job with the 3.0 components and the need to re-write YUI for new Yahoo dependencies (the new homepage) kept the team very busy. I don’t know any other library other than Dojo (which is a framework not a library) that does as good a job.

JW: What are some web developers that really inspire you?

Christian Heilmann: Ouh, a lot. I think one of the best all-round amazing guys I know is Simon Wilison, then there is “Mr Pragmatic CSS” Dan Cederholm. John Resig puts quite a stake in the ground when it comes to moving ahead in JavaScript technology and release numbers, Scott Schiller pushes the envelope when it comes to interesting interfaces and multimedia functionality in JavaScript, Aral Balkan is a good channel into the Flash/Flex world, Gez Lemon and Steve Faulkner do great accessibility work… to name just a few.

Right now I get most inspired by people I work with who are not known names but release a lot of cool stuff to the outside world, and do my best to egg them on to get out more into the speaking and publishing world. Examples for those guys are Dirk Ginader, Marco van Hylckama-Vlieg, Rajat Pandit, Neil Crosby, Ian Pouncey and of course ex colleagues Ed Eliot, Stuart Colville, Lawrence Carvalho and and and…

Frankly there are not many developers out there who have their eyes open that don’t inspire me.

JW: Can you describe some of your duties as an International Developer Evangelist at Yahoo?

Christian Heilmann: My job is mainly being a translator. I talk to the outside world about our products and other people’s products ours work well with or are in competition with. I talk internally about what I heard in the outside world what people want and what they struggle with. I train new developers and give tech talks in the different offices around the globe about things coming down the pipeline that will be of relevance soon and in general keep up with the market.

I’ve asked for this role as I found myself getting a lot of offers to speak at conferences, write articles and blog posts (and give interviews) and I didn’t have the time to do so. Now it is my job and I can bring good stuff to people I tried to reach for years.

I’ve been developing for a long time and proved my worth. I’d rather give more junior developers the chance to not have to make the same mistakes I had to go through but deliver better products instead.

That is why I am there to listen to their issues and find ways to explain new products internally and externally. A lot of bad code is being developed in companies because people don’t know how to talk to each other and people that should collaborate are oblivious that the others exist. I am here to fill this gap.

Right now I am doing a lot of work talking to other companies about what worked well for Yahoo in terms of building APIs, allowing developers access to our data and how to foster innovation in the company. It is thrilling to see how many companies are out there that could give us amazing data to play with but are not doing it because of easy to solve technical problems.

JW: Many of your presentations focus on script maintainability. Over the years do you believe that developers have made more of concerted effort in improving this?

Christian Heilmann: I think we are on a good way of doing that. Far from concentrating on it as it is a lot more interesting to write yet another speed comparison of different libraries and to try to persuade each other what the best way of writing a loop is but I see good work being done. Especially when it comes to build scripts and processes we could do with a lot more collaboration and release information but the problem is in a lot of cases that this is information that is company specific.

JW: I heard that you do not own a television? Is this still true and how do you watch Top Gear (my favorite show)?

Christian Heilmann: That is still true, as I just explained in another letter to the TV Licensing people who are very much confused about this. To answer the Top Gear question, I don’t as I don’t have a car either (would be pointless living in zone 2 in London). I’ve seen a few episodes on planes and in the gym on the bicycle but that is about it.

I liked what I saw but it doesn’t beat Big Bang Theory by a long shot :)

JW: Thank you so much for your time.

Christian Heilmann: Thank you for being interested in what I do and say and challenging me with some interesting questions. I am better in answering them live, but I hope I managed to get something good out there. Keep playing, the web is yours!

From Interviews

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.