HTML5, CSS3 and JS are all pretty hot topics of late, with many flash developers learning and showing off their new skills. Hakim El Hattab is a multi award-winning developer who has gained a reputation for his work with these new age technologies.
His work has been featured numerous times on The FWA (Favourite Website Awards) site of the day, including 20 Things I learned (About Browsers and The Web) and his personal experiments and profile site. Having been featured on TNW and written in .net Magazine, you can be sure Hakim really knows his stuff, currently working as Lead Interactive Developer at Qwiki. You can find Hakim on twitter as @hakimel
We asked Hakim a few questions about his work, HTML5 and his awesome experiments.
Please introduce yourself in 140 characters or less…
Swedish web developer with lots of love for graphics and animation. I’m motivated by a need to create distracting interactive contraptions.
Having worked with Flash and HTML5 for a while, do you now have a preferred tool for the majority of jobs? If so why?
There are still projects that are more suitably executed in Flash but my rule of thumb is if it can be done in HTML then it should be done in HTML. Flash is my fallback.
We’re all creatures of habit and sadly this can result in technology decisions being made on the wrong grounds. While picking a technology that you’re very at home with can certainly speed up development it’s a short-term approach and will end up stifling the longevity of the product.
Your experiments really do show your creativity. What do you do for inspiration? What / who inspires you the most? Where do you find yourself being inspired the most?
I’ve always been very inspired by the work of Mr.doob, seeing his early HTML5 demos is what made me start experimenting myself. Chrome Experiments is another big source of inspiration.
Beyond external influences I find the most important factor in the quest for inspiration is achieving a relaxed state of mind. If I have a clear window of time, free of distractions and stress, ideas come flowing naturally. This is why I typically feel most inspired during late night coding sessions when there’s nothing to disturb me.
Do you consider HTML5 / Canvas to be a fast moving spec? Where do you go for resources?
It’s great to see how quickly browser vendors are implementing the HTML5 spec HTML living standard and family of technologies. After all, a specification in itself is worthless unless widely implemented. Just like the implementation is often useless unless adopted by developers.
You’ve only been playing with HTML5 for a year and yet you won the 10k Apart contest! How did it feel to win?
Felt awesome! I was really happy with how Sinuous came out but did certainly not expect it to take home the grand prize. The quality of the other submissions was top notch and that makes me appreciate winning the competition even more.
Hopefully we’ll continue to see challenges like this organized so that the community can demonstrate just how far the open web can be pushed.
How often do you find yourself using the same techniques with HTML5 Canvas as you would have used with Flash?
Flash, and ActionScript, is how I got started with visual programming so a lot of what I picked up then is still at the core of what I do today. This applies more to Flash’s animation paradigm and my perspective on the visual/interactive problem space than it does specific coding techniques. Even when working with HTML5 Canvas, my mind tends to organize thoughts in timelines and layers.
Being a lead developer at a new company must require a lot of your time. the How do you keep a good work life balance?
Figuring out a good balance that doesn’t overshadow personal life is… difficult to say the least. I tend to break this into a slightly different equation of three parts; work, social life and personal projects. The balance between these varies constantly and sometimes one consumes almost all the available time. On a typical day – if there is such a thing – I’ll work during the day, tend to social life in the evening and hack personal projects at night.
Have you ever pulled an all-night or early hours on a project? (What was it and why?)
Having held full time jobs in our deadline-driven industry for the past six years there’s certainly been a plenty of late nights and a few all-nighters. Working a 24-hour stretch is a really dumb idea though. Time investment is, like many other things in life, subject to diminishing returns. Even if you crunch three workdays in one stretch you’ll not get the same amount of work done as you would with three “normal” days.
You worked at Fantasy Interactive (FI) for quite a while. What was your favourite project, most well known project, and the project you are most proud of?
My favorite project from my time at Fi was “20 Things I Learned About Browsers and the Web”. It was the first project we did for the Google Chrome Team and collaborating with them was an excellent experience.
One of the goals of the project that I think we really delivered on was to make the book itself into a prime example of what modern browsers, and the new HTML5 API’s, enable us to build. This meant there was room to try out and learn many new things like the History, Offline Web Applications, Local Storage and Canvas API’s.
While at FI, you worked with all aspects of a product from start to finish. Obviously having an understanding of the whole process puts you at an advantage as a developer. What are the key things you’ve taken away from your time at FI?
The most important take away from my time at Fi is a strong dose of the quality over quantity mindset. The amount of effort invested by everyone who works there to collaboratively meet the extremely high expectations on quality is stunning.
My time at FI made me see the importance in focusing on the user facing components of my work more than the cogwheels below. In the end, it’s all about user experience.
You’ve recently released one of your experiments, Textify.it, on iOS. Do you have plans to release any of the other game like experiments as mobile apps?
Absolutely! Building Textify.it for iOS gave me a small taste of how fun it can be to work on mobile apps. Next up I’m creating a mobile version of Sinuous. Will be using Adobe AIR this time around to get a feel for its mobile capabilities and performance in comparison to HTML5.
What’s the best bit of advice you have ever received?
“Don’t take work too seriously” – a friend experiencing a moment of alcohol induced equilibrium.
In other words – if you’re busy worrying about failure you’ll take fewer chances, limit creativity and stifle learning progress.
I see you’ve spoken at Stockholm Web Monkeys meet up. Will we be seeing more talks?
Hopefully. It’s a personal goal of mine to take on more speaking engagements but not one I intend to pursue in the immediate future.
Any chance we can take a sneaky peak at your next experiment?
Would gladly give you a preview of my next experiment if I had one in the pipeline! I typically work very intensely with my experiments and rush them out in the course of a few nights and that means there’s rarely anything half-finished lying around.
I did doodle over at jsdo.it the other day though; jsdo.it/hakim/sphere.
It’s been nearly 6 months since you’ve joined Qwiki. How have you found the team and what have you worked on so far?
The people I work with at Qwiki all have unique and interesting backgrounds. Heck, our co-founder is the creator of AltaVista!
What are you currently most excited about on the Internet in general?
If I have to pick one thing… It’s gonna have to be WebGL. There are plenty of demos and experiments in the wild but I am eager to see how the technology holds up for full blown games and other “real-life” projects. Essentially more projects like ro.me.
Anything else you would like to mention?
Thanks for your time and insight Hakim. Hopefully others can really benefit from what you’ve shared with us here.
Do check out the links Hakim included, they are pretty awesome!