- 25 Jul 2012
"Always think about what you're doing, and learn as much as you can."
The book is short and informative, but perhaps a bit too brief to warrant the $30 ($20 while in beta) price tag. If, however, you are new to the concepts of optimizing sites for retina displays, this is definitely the book for you. Fuchs makes it clear that it is not as intimidating as it seems, yet it is important- these screens are here to stay, and we might as well take advantage of this opportunity to create beautiful experiences for our users.
Planet Argon: Why a book? Isn’t it sufficient to just google for “retina images”?
Thomas Fuchs: Well, you can find (most) of the info online. if you have a week or two to spare. :) It’s really about getting up to speed with everything you need to know in an hour or so. From there, you have easy-to-follow instructions so you don’t need to research all this stuff yourself. Also I’m a trusted source, and not some weird comment in some weird forum somewhere. In any case, there’s more than meets the eye (ha!) with retina screens. Basically, I started to compile this info for myself, and then I released the flowchart, which was downloaded almost 100k times in a few days- looks like lots of people are looking for good info about this topic.
The flowchart is really helpful. You released that after you started working on the book, though- right?
No, that came first. I basically wrote the book in 3-4 days, and did more research. I usually work in bursts like that.
Did the release of the macbook motivate you to start writing?
What eventually motivated me was doing the retinafying on our new product, Charm — I had to learn about how retina desktop screens work for that. I previously did lots of research on mobile, so it seemed natural to combine this knowledge and release a “how to retina” book. I also like to work on something completely new from time to time to shake things up.
Do you have a retina macbook? Is the experience using Charm much different than it’d be had you not retinafied the app?
I actually don’t have a Retina MBP (I borrow one for testing from time to time). And yes, you can clearly see the difference. Another app I’ve retinafied before was Every Time Zone, but that’s targeted for mobile use (works great on desktop retina, though).
According to the book, a lot of ‘optimizing for retina’ involves taking advantage of current web standards, such as utilizing CSS3 and SVG in place of images. What is the relationship between retina technology and web development best practices?
I hate the term “best practice” — it’s often used as an excuse not to think about how you do stuff.
What term do you prefer?
I prefer “stuff that works well.” I think using CSS3 & SVG is a pragmatic solution for many of the problems you face when creating high-resolution capable sites. For example, using a SVG image on an icon gives you automatic retina-compatibility and you end up with a faster-loading site because of less data transfer.
It’s interesting, because I think the idea of best practice is just the opposite- isn’t it supposed to compel people to be thoughtful about their work?
The sad reality is that people don’t like to think, but follow recipes. Often that’s ok, but a lot of the material that’s out there for web development is not based on real projects where people solve real problems. It’s often very abstract, academic and has little to do with the gritty reality, where devices and browsers have lots of bugs and issues. That’s why, in the book, I’m trying to stress to keep things as simple as possible: design/work with retina assets by default, only make exceptions for normal screens if absolutely necessary.
I think people are fearful- they’re afraid of making mistakes, and they hope a recipe will help them avoid mistakes.
That is true, but there’s no reason— the stuff you’re putting on the web will eventually break somewhere. It’s easy to fix. You don’t even need to compile anything. :) I’d be much more afraid of my sites not loading fast enough or looking bad. Note that I’m not saying best practices are intrinsically bad— it’s what you make of them. Always think about what you’re doing, and learn as much as you can. I hope that the book is getting at least some people on this path, by teaching them about things they normally don’t think about. For example, I’ve sneaked in quite a lot of designery stuff, even though it’s mostly technical how-tos, like mentioning that icons just can’t be scaled arbitrarily.
Yeah, absolutely. Also, the image optimization techniques, which are both tech-y and design-y.
Yeah. For example, the JPEG quality— it’s something where you can’t just say “use quality X”, because it depends on the type of picture and the type of audience you have.
The jpg technique, for which you use a lower quality yet high resolution jpg as your one cross-platform image, as well as the .999 opacity fix, which reduces jaggies, are both quite clever. Did working out those ideas require some experimentation?
On the two techniques you mention: I suspected it would work, but I had to experiment a little bit to find the optimal settings for the example images. It’s easy enough using ImageMagick on the command line to generate lots of variants and then compare with Quick Look. As an aside, I hope for reader feedback about issues they have so I can add more fixes and workarounds. I have a freakish love for debugging browsers issues like that.
Mobile web development: do you think of it as an extension of traditional web development, or something different?
For web apps, I see them as quite different. For sites like blogs, I’m voting to just serve your normal site up. Mobile devices do a good job of showing that to you, e.g. see apple.com— no mobile version. And they certainly know what they’re doing. :) I hate when blogs have a “mobile theme” and nothing works correctly, images are missing, etc. For apps, however, it’s different. They need to be designed for the particularities, e.g. touch vs. mouse, small screen, etc. And use cases— you often want different things when you’re on the go, than when you can sit down and look at a large laptop screen. Sometimes, “responsive design” does the trick, but that’s another one of those things where people are enticed to stop thinking about what they are doing. Use with caution. :)
Are there some examples (websites, web apps) that you’ve found that intelligently utilize retina optimization techniques?
Do you think this is it? Or will we see a resolution that’s even more pixel-dense than retina?
Well, right now you got 0.75/1.0/1.5/2.0 as ratios, in the wild. I wouldn’t wonder if in the future you’ll see 4x screens, but that will likely take a little while. Given that movies and stuff are recorded at 4k, I can imagine that 4k resolution will become a desktop/TV standard at some point, e.g. QFHD is 3840×2160 (double that of 1920p). The macbook pro retina is not far behind, though, at 2880 × 1800. But they had 3840×2400 monitors more than ten years ago (204dpi), so it’s not really that new.
The book is currently in beta- what more can we expect? And when will you, as the author, know that it is done?
My plan is to let it gestate for a little while, wait for some reader feedback, and then finalize it by filling in any gaps and polishing it up (there’s also a suite of code examples accompanying the book). I might release updates in the future when new stuff is coming up— it’s easy enough to do that. There’s some more content coming about icon fonts, and some other stuff, but I need to do another day or so of research.
Awesome- well, I definitely look forward to watching the book progress.
Me too. :D
About Jack Bouba
Jack is one of our Front-end Developers who studied sculpture in college and fell in love with woodworking, ceramics, and printmaking. Later, after his inevitable move to Portland, Jack rediscovered his passion for digital media and began studying web design and front-end development at PCC and PNCA. Jack worked with individuals with developmental disabilities for 5 years and taught Flash and HTML/CSS classes at a local technical college, uniting his passions for sharing knowledge and skills with the fascinating world of code and design. Jack is an avid bike-rider, boomerang-shaper and -thrower, music-maker, and walk-taker.