The prestige of being a web developer


Published on

Closing keynote of the Fronteers conference in Amsterdam. Blog notes are available at

1 Comment
  • Excelent, Christian! I had the same feelings on writing on shared documentation instead of blog posts as I started receiving comments on old posts with not updated contents.

    Tecnical blogs have expiration date, and this relies on the talking content.
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

The prestige of being a web developer

  1. 1. The prestige of being aweb developer. Christian Heilmann, Fronteers, Amsterdam, October 2011Today I will talk about about perceptions and ways how we as web developers can make ourlives better.
  2. 2. There is a lot of talk about HTML5 and when you look at the demos showing what it can do we are faced with a lot of interactive videos and 3D animations. HTML5 however means much more than that - it turns web technologies into a real application environment and in this talk Chris Heilmann of Mozilla will show you how your backend code can benefit greatly from the new features modern browsers offer us. got inspired to do so by a great movie called the prestige.
  3. 3. A W E S O M E!The prestige is full of amazing actors and is a twist-and-turn drama story about two stagemagicians who learn the trade together and then become mortal enemies. They sabotageeach others shows, they spy on each other and steal from each other.
  4. 4. All to get a bigger audience and to make money. The movie also shows nicely that theaudience of the magic shows do not care much for the safety of the magicians - all they wantis to be entertained.
  5. 5. Some people would have made the movie too awesome, so they weren’t allowed.
  6. 6. how do magic tricks work?One of the things explained in the movie is how magic tricks work.
  7. 7. three parts to any magic trick.Every great magic trick consists of three parts or acts
  8. 8. 1 - The PledgeThe first part is called "The Pledge". You show something ordinary and build up anticipation
  9. 9. 2 - The TurnThe second act is called "The Turn". The magician takes the ordinary something and makes itdo something extraordinary.
  10. 10. 3 - The PrestigeThe third act, the hardest part, is "The Prestige". This is when you bring the extraordinaryback to the real world.
  11. 11. “I use Google mostly. Is that a mac?”What we do as developers of the web can seem magic to people. A lot really do not care whatwe do but I constantly see people on for example planes looking on my screen while I amfiddling with some JS or CSS and reload the browser and I see them go "oh!" and start askingme what I am doing there.
  12. 12. Native 3D sound in pure CSS with fallback for IE6!We do the same to each other. We start with the pledge of using web technologies to build aninterface or a solution or a demo.
  13. 13. +1 that like and a RT on that!Then we fiddle around with it until it is is perfect and we show it to people and they go"ouuuhhhhh" and clap and get excited and go to Twitter, Facebook and Google+ and tellpeople about it.
  14. 14. Most inspiring talk ever!Us, in the audience, do the same. What we miss doing is going the full way and bring "ThePrestige" to the others.
  15. 15. Making demos and playing with technology is incredibly important. More important though isslowly but steadily, or - even better - quickly bring the awesome that is in those demos toour delivery jobs.
  16. 16. How do good magicians work?But before I go to the prestige, lets take a look at how you can be a good magician (as told inthe movie) and how it can relate to our work.
  17. 17. Reuse and improveA lot of the tricks shown on stage and in the movie are not new, but based on an older trick,spiced up with new ideas and more danger.
  18. 18. <button> vs. <div class="clicky"> if ( test ) { apply(); }This we can easily do as well. Instead of reinventing the wheel we should base whatever we doon things that work. Sensible markup is not there to fill a screen, it is there to bring stabilityto our products.
  19. 19. In the old days...Behaviour HTMLPresentationStructure
  20. 20. DHTML days (1)Behaviour JSPresentation HTMLStructure JS
  21. 21. DHTML days (2)Behaviour CSSPresentation JS HTMLStructure
  22. 22. The gospel (according to Zeldman)Behaviour JS CSSPresentation HTMLStructure
  23. 23. The now... Behaviour SS JS C ntation Pre se Structure HTMLWe should not discard what we found to be a sure way of building a nice experience in thepast. We should build on those principles and allow them to change to address the needs of anew audience that wants other things.
  24. 24. approach.refresh();
  25. 25. Learn from othersYou can see the magicians visiting other magic shows (in disguises) and seeing how others doit, discussing how tricks could be done and trying them out for themselves.
  26. 26. As geeks we are prone to want to build everything ourselves. We take a glance at what otherpeople do but at the first "meh" we see in their code we just start from scratch. You hardly seeany demos and talks based on other peoples work and improving them. why not?
  27. 27. NIN = good N NIH = BAD!Not invented here to me is the biggest problem we have. We should swallow our pride moreoften and just use what already works and partner with those who created these things ratherthan doing the same again but not quite the same but you know, better and stuff...
  28. 28. Be inventiveWhen the competition gets harder they start to use special effects, fireworks and mechanicalparts on their bodies to create new illusions.
  29. 29. If we stop inventing and tinkering we might as well give up in our job as web developers. Thething to learn from the movie though is that these things are hidden and aid the cause andare not shown as the main attraction.
  30. 30. Right now a lot of tricks who are a necessary evil to make something work are sold as "bestpractices". They can not always be applied across the board though.
  31. 31. Leaving the comfortzoneWhen one magician does a trick the other just can not fathom he goes out of the world ofstage shows and tries to employ the work of Nikola Tesla who allegedly really can transportpeople and things to other parts of a room using electricity.
  32. 32. !desktopWith the web moving towards tablets and mobile and rich experiences with native APIs andcode we have to start to open up to learn from others.
  33. 33. A lot of what we need to fix right now for WebGL and gaming has been fixed in Flash in thepast already. If you are honest about it - the demos we show and applaud in opentechnologies would be laughed at when shown in Flash.
  34. 34. Can haz Flash info plz?So lets reach out and talk to the experts in these fields to see what can be re-used.
  35. 35. Be gorgeous!Once a trick has been created, the magicians dress it up with beautiful stage machinery andgorgeous assistants and nice clothing.
  36. 36. When we show off things they should be gorgeous. The whole concept of "this is only a demoof course it can break" is not helpful to the cause. When we are ready to show the worldabout our new cool things they should look incredible, be beautifully interactive and workacross the board.
  37. 37. code = poetry Ive said it before, your code is poetry and others should learn how to play with languagefrom it.
  38. 38. Be openThe most impressive tricks magicians show are the ones done in the middle of a big crowds,with everybody watching and they still manage to amaze people with seemingly impossiblethings.
  39. 39. is very simple to create an amazing product when you control everything. This is why theweb can never compete on a "completeness" level with native code on iPhones and otherdevices.
  40. 40. The thing is though that it doesnt have to and giving a web product only one interface andexperience is not using it to its strengths.
  41. 41. adaptation brings the prestigeSo what about the prestige? How do we bring the magic back to its origin to make it evenmore fascinating? One word: adaptation.
  42. 42. "It is not the strongest of the species that survive, nor the most intelligent, but the ones mostresponsive to change." -- Charles Darwin
  43. 43. The biggest power of open web technologies is their ability to adapt. Web applications can bere-used in closed environments by means of conversion and you can maintain your productin one space.
  44. 44. your work, multiplied!If you want to go native you multiply your work by every platform you need to support. Weshould be like the web.
  45. 45. "I was a young man with uninformed ideas. I threw out queries, suggestions, wondering all the time over everything; and to my astonishment the ideas took like wildfire" Charles Darwin"I was a young man with uninformed ideas. I threw out queries, suggestions, wondering allthe time over everything; and to my astonishment the ideas took like wildfire" --CharlesDarwin
  46. 46. web workers != stage magiciansNever stop questioning and give your input. We are web developers, not stage magicians.
  47. 47. Something I can never have?Your job is to take what the bleeding edge of our market does and bring it into the day to daydelivery.
  48. 48. Ask questions, demand cool stuffto adapt to your environments.You can only do that when you ask the right questions.
  49. 49. Don’t be out for blood!In the movie the competition between the magicians turns tragic as in fierce competition theytry to kick each other out of the market. In the past this happened with browser makers, too.
  50. 50. Browser makers want the web tosucceed and deliver awesomeexperiences.Nowadays the competition of browsers is different. We all want the new web to work. We allare aware of browsers having to adapt to new environments.
  51. 51. This is what we should bespending time and money on.This is what we should be concentrating on - not building more and more magic shows to tellthe world that one or the other browser is the better one.
  52. 52. Can haz moar harmony? Id love to see a shift in the community, something that Chris Williams talked aboutat JSConf, too: stop trolling, stop inciting fights and stop the greed for controversy.
  53. 53. We all like a good fight and we all like to see great artists and athletes compete with another.
  54. 54. Being reactive kills innovation.When our main focus though is to be better than others and react to attacks and things othershave done we lose the opportunity to work together on a predictable web for developers andgreat experiences for end users across the board.
  55. 55. People to trust
  56. 56. If you’re on stage, tell the truth.When you are on stage you are in the limelight. What you say has a lot more gravitas thenwhen you say it in the pub.
  57. 57. you need to have people you can trust to ensure you dont tell lies. If you talkabout a product and get people excited and the product becomes unavailable or the productteam is totally unresponsive it is you who gets the blame.
  58. 58. Vanishing actThree days ago, <a href="">Mark Pilgrim vanished off the internet</a>. No Twitter account, no Google+, no Facebook and all his sites, including the awesome <a href="">Dive into HTML5</a> became a 410 "Gone" empty page.
  59. 59. Mark == OK?People started getting worried and tried to contact him to no avail, they even called the policeto check on him and found that he is OK and was annoyed that people went so far as to callthe police.
  60. 60. Regardless of Marks reasons, this made me think about longevity. In the last year we haveseen a lot of web attrition. APIs got shut down, companies closed their "labs" sections andformerly free software gets bought and vanishes quickly. Just look at the HTML5 gameengines out there.
  61. 61. The vanishing of Dive into HTML5 was a massive blow. I linked to this great resource inalmost all my presentations, when people ask me where to learn about HTML5 I sent themthere. Of course there are <a href="">mirrors</a> of the site, butthat still means that all my old links are broken now.
  62. 62. Join the band!It made me think that it is time to stop relying on a few people and on ourselves as a sourceof truth and information. I write a lot of things on my blog and people link to that. I also dontfind time to re-visit old posts and update the information which might not be applicable anylonger.
  63. 63. So I started to think that it makes more sense to contribute to places where people alreadywork together to document things. Forums, developer documentations, wikis, and - of course- the Mozilla Developer Network docs.
  64. 64. Anyone can do that - there is an edit button on those and you can add a fix, a note or anexample.
  65. 65. CollaborationInstead of writing a blog post and hoping for comments amongst the spam I started to usecollaborative tools to begin with a discussion and then write an article or post once we foundan interesting solution. There are many cool tools to do so:
  66. 66. Using <a href="">JSFiddle</a> you can show some code and ask people tofix and improve it with you. You can also provide a working demo to prove a point or give ademo to people.
  67. 67. Using Google Docs and Etherpad you can write docs and explanations together and get somequick review from people.
  68. 68. Using Dropbox you can work together with people on some files.
  69. 69. Using GitHub you can spread your code and you can get and improve other peoples work.
  70. 70. Be your own teacherIve always found that I learn best by doing. Instead of getting things explained to me andfollowing an hour of live coding or watch a video I get the best results by downloading thecode, playing with it, breaking it and finding the solution doing some research.
  71. 71. code is open, slides are released!Anyone can do that. That is the fun about open source and the way we do things as webdevelopment speakers.
  72. 72. Fill the blanksThe other day I went to attend <a href="">Seb Lee-Delisles Creative JS course</a>. A great course and a good reminder to play withtechnology. The course assumed a lot of previous knowledge of how to animate withcomputers and basic Math of triangles and basic physics.
  73. 73. As Smashing Magazine were very eager to get another article from me to publish I remindedmyself of a few of the Math tricks used in Commodore 64 demos and <a href="">wrote an article about it</a>. The article got good comments and did therounds on Twitter.
  74. 74. As an extra, I put all the demo code on JSFiddle for people to play with. People now can readthat article as a refresher before the course.
  75. 75. Guerrilla docsYou can do that, too. If you find something cool on GitHub and you use it and you find anannoyance, why not fix it and send the original writer a pull request?
  76. 76. !code. Examples + Docs = :)Of course not everybody is happy about changes in the code but I dare you to find anyonewhod be unhappy to get some extra docs or examples using their systems.
  77. 77. OHAI -webkit,here’s -moz, -o, -ms, !-You could also create a folder with fixes for other browsers for demos that only work in one.There are a lot of possibilities.
  78. 78. Use what you heard!It is very important that you use what people on stage talk about. And not only give it a go inyour lunch break. Implement it in products and feed back the issues you find. There is nopoint in us showing a brave new world of technology on stage and then never seeing it used.
  79. 79. "Now that we spent 4 years making rounded corners working in every browser designers dont want to use them as they look dated" -- Molly HolzschlagUsing things means we can avoid the delivering people getting more and more disconnectedfrom those who show what "best practices" are.
  80. 80. Repeat the message!Most of you work somewhere, and others work with clients. Why dont you now go home afterthis conference and set up an internal meeting showing off some of the things you learned?
  81. 81. Your boss will love you!There are a few benefits to this: you can share the goodies, you give back to the companywho paid your ticket here, you get some experience speaking and you show that Fronteers isnot just a big party.
  82. 82. Collect good storiesIf you manage to use some of the stuff you heard about here and made a client happy orworked more effectively in your job, tell this story. Send it around, blog it or send it as anemail to us. We need to hear how our work has impacted your life.
  83. 83. Best practices are discovered, not defined!We live in a changed world. The "best practices" of old are not applicable everywhere andthere is a lot of criticism towards the web camp as being people who preach dogma andmissed the boat.
  84. 84. Bring us evidence!Lets collect real evidence how we used open standards, sharing practices and free tools tobuild an amazing web. Then clean up our approach and make it a best practice based on factsinstead of great principles.
  85. 85. Reserved for youSo please, join us in documenting, fixing and using what we are all very excited about. This isnot a magic show, we are here to tend to the web that was so far damn good to us.
  86. 86. Thanks!Chris Heilmann @codepo8