After relaunching my personal site and realizing all my other sites are in pretty good shape for the first time in forever, I’ve suddenly found myself with plenty of free “tech time” to mess around with whatever I want to mess around with. Which is cool, because, while I appreciate being able to tinker in a very practical manner on production sites and learning from what what works now, I really miss being able to mess around with the newness out there. Sometimes, like with the HTML5 work I’ve been doing, the two can meet, but more often than not the brand new stuff needs to sit on the burner a little bit before it’s ready for prime time.
You’ll see where all of this is going when you see the first topic in this month’s recent reading roundup. Read the rest of this entry »
There’s always a slide about performance in my presentations. This time? Every slide will be about performance. I’m chomping at the bit to get started on this one.
The Bocoup guys were crazy enough to invite me down to talk about my favorite topic- front end performance. Here’s the write up:
Front End Performance for the Common Man: Practical Strategies to Speed Up Your Site
Rob Larsen will examine the core concepts and techniques behind the performance of the web’s fastest sites and will translate them into practical examples. This talk will cut across several technologies (JavaScript, CSS, Ant, Apache and more) to present a suite of tools any developer can use to speed up their site- no matter the size or budget. RSVP to The Event Page.
It’s going to be a really good talk- full of practical examples and advice for every flavor and level of web developer. You should totally go.
Actually, you should just go to all the Bocoup talks. Smart people talking about killer technology = fun times. I’ll be a regular there.
Browser Size does just what the name implies. Enter a URL, hit “go” and you’ll see just what percentage of the internet will see what without scrolling. Scrolling isn’t quite the bugbear it once was, but for certain types of pages immediate impact is still very important (campaign landing pages are a good example,) so having this as an easily accessible tool is really nice. Sure, designers have these guides in Photoshop and developers can resize the window with the Web Developer Toolbar, but this handy web-based tool is just the kind of thing to use in a meeting.
Since I run so many content-centric sites, I’ve never really had much use for Google Analytics’ goals. It’s one thing when you’re doing lead generation or ecommerce. Those goals are clear and easy to define.
Someone filled out a form? Goal reached.
Someone hit a thank you page for purchasing a book? Goal reached.
I eat this stuff up. The more data like this we get the easier it is to sell performance to team members and clients.
Do faster web pages mean better business? Definitely. We’ve seen hard evidence from major web operators like Shopzilla, Google, and Microsoft. But what about other websites? How big an impact does performance optimization have on the business metrics of a typical media or e-commerce site?
I got a new machine at work yesterday and in the process of building the thing out and getting it ready to actually work with, I came up with a list of the tools and utilities I use on a regular basis. Not the big stuff (Dreamweaver, Fireworks, Photoshop, etc.) The stuff that fills in the cracks that the big tools don’t cover. Thinking such a list might be useful for other folks, I added a couple of online services that I can’t live without and am now sharing the highlights of the list with the world.
As you could probably guess since Performance is one of the six site categories around here, I’m a fan of WebPageTest. You can imagine my reaction to the news that page load videos are now available from the service.
One of the things we like to look at is what a page looks like when it is loading, particularly if you are comparing a before and after or multiple sites to each other. This is particularly helpful when talking to the business about performance and sometimes the raw load times don’t adequately represent the user experience.
Up until now this has been a pretty manual process where we screen record a video while loading a site then load it up into Premiere and stitch it together.
Starting today, you can have WebPagetest record a video of a page load directly. It’s still in a pretty rough form and it’s going to be a while before it’ll be ready for the masses but what is there is already pretty powerful and extremely flexible.
Very cool. I can think of two or three presentations where video of page load would have been super useful and will definitely find a use for the feature in the near future.
I finally finished reading Even Faster Web Sites. It’s good, but in terms of things for my day to day, it’s kind of a mixed bag. In some ways (specifically in the areas of JavaScript efficiency, image compression and CSS selectors) it’s more practical than High Performance Web Sites and in others I had a hard time coming up with a concrete example that I’d actually run across that would be served by the topic at hand.
With that in mind, looking at the table of contents I found the bolded chapters most interesting for my day-to-day coding (your mileage may vary, of course)
Chapter 1. Understanding Ajax Performance
Chapter 2. Creating Responsive Web Applications
Chapter 3. Splitting the Initial Payload Chapter 4. Loading Scripts Without Blocking
Chapter 5. Coupling Asynchronous Scripts Chapter 6. Positioning Inline Scripts Chapter 7. Writing Efficient JavaScript
Chapter 8. Scaling with Comet Chapter 9. Going Beyond Gzipping Chapter 10. Optimizing Images
Chapter 11. Sharding Dominant Domains Chapter 12. Flushing the Document Early
Chapter 13. Using Iframes Sparingly Chapter 14. Simplifying CSS Selectors Appendix A. Performance Tools
Which isn’t to say that the other chapters weren’t interesting. They were, I just don’t need to deal with some of the issues solved by those techniques very often in my day job. That was especially true of the the Comet chapter and many of the issues related to managing multiple script files and/or large blocks of JS code.