In the summer of 2001, after 15 years of developing graphical user interfaces and
graphics-intensive applications, I read a best-selling book about implementing
web applications by someone I did not know—Jason Hunter—but whom, unbeknownst
to me, would soon become a good friend on the No Fluff Just Stuff
When I finished Jason’s Servlets book,1 I put it in my lap and stared out the window.
After years of Smalltalk, C++, and Java, and after writing a passionate
1622 pages for Graphic Java 2: Swing,2 I thought to myself, am I really going to
implement user interfaces with print statements that generate HTML? Unfortunately,
From then on, I soldiered on through what I consider the Dark Ages of software
development. I was the second Apache Struts committer and I invented the Struts
Template Library, which ultimately became the popular Tiles project. I spent
more than six years on the JavaServer Faces (JSF) Expert Group, spoke about
server-side Java at more than 120 NFJS symposiums and many other conferences,
and coauthored a book on JSF.3 I got excited about Google Web Toolkit and Ruby
on Rails for a while, but in the end the Dark Ages was mostly concerned with the
dull business of presenting forms to users on the client and processing them on
the server, and I was never again able to capture that passion that I had for
graphics and graphical user interfaces.
In the summer of 2010, with HTML5 beginning its inexorable rise in popularity,
I came across an article about Canvas, and I knew salvation was nigh. I immediately
dropped everything in my professional life and devoted myself fulltime to
write the best Canvas book that I could. From then on, until the book was finalized
in March 2012, I was entirely immersed in Canvas and in this book. It’s by far the
most fun I’ve ever had writing a book.