Peripatetic thinking
Last week I encountered one of the more bizarre bugs of my career. Following the release, gaps started appearing on charts. The strange thing was that the data was all in the database; it just wasn’t coming through the user interface. Unfortunately, for this release, rolling back wasn’t really an option, so we needed to [...]
Last week, I spoke at the Agile Vancouver monthly meeting on the subject of *surprise* Deploying to Production Every Week. Eugene was kind enough to video the talk; so if you’re interested in catching a replay, it’s available on Vimeo in five 20 minute segments. Here’s the first video as a teaser: Deploying to Production [...]
Yesterday we deployed 19 times to our test environment (about once for every 4 commits). We were busy making some final refinements to a new feature that we launched last night. We had most of the team working on this feature (Single Feature Release) and the rapid feedback of the regular deploys helped ensure that [...]
I’m a big fan of CSS – it keeps things looking consistent, it separates structure and design, and it keeps markup clean, simple and maintainable. The greatest strength and weakness of stylesheets is their scope. A large number of pages are typically styled by a single stylesheet. This is great for consistency and reuse, but [...]
Last week, our site sustained a prolonged outage during core business hours. While testing their backup power systems, our data centre provider tripped a breaker leading to a cascade of failures that, among other things, produced a power surge that fried our hardware firewall’s power supply. The hardware firewall is one of those standard pieces [...]
At my company, we use a form of Continuous Monitoring: every time our system logs a warning or an error we immediately receive an email identifying the source and nature of the problem. This allows us to respond rapidly to problems as they arise and gives us good visibility into the health of our system. [...]
Last week, one of our Glassfish instances stopped responding. The process was running, but no longer handling requests. The good news is that the load balancer automatically failed over so there was no downtime to the site. The bad news is that we didn’t receive any direct notification of the failure. We have monitoring on [...]
Last week, we were fortunate to have Eric Ries come out and spend some time talking with our team while he was here for the Agile Vancouver event. We had the chance to talk about 5 whys, split testing and other topics. I would have liked to spend a bit more time discussing continuous deployment, [...]
If you’re looking for some quick ways to improve the performance of your site, Steve Souder’s High Performance Web Sites is packed with great advice. You don’t even need to buy the book as most of the information is available through links from the Firefox YSlow plugin. We have been picking one rule every couple [...]
Last week, we spent some time adding better timezone handling to the application – specifically, the ability to view data in the data source’s timezone rather than the user’s local timezone. Our application leverages Adobe Flex for charting and data visualization, and it’s sufficient to say that Flex’s timezone support is frankly lacking. Flex supports [...]
80% technical, 20% social change. This blog is dedicated to finding ways to sustainably release software more frequently.