Archive for February, 2009
CSS3 Awesome Test
Just for fun, I decided to whip up one big awesome demonstration of some new CSS3 features in Firefox 3.1. @font-face { font-family: Delicious; src: url('http://blog.mozilla.com/webdev/files/2009/02/delicious-roman.otf'); } #css3test { width: 350px; margin: 0 auto; background: #000; padding: 20px; color: #fff; text-align:left; -moz-border-radius: 10px; ... Read More »
Cross-Browser Inline-Block
Ah, inline-block, that elusive and oh so tempting display declaration that promises so much, yet delivers so little. Too many times have I received PSD files like this: and begin to cry. Normally, this type of layout would be a cakewalk. Fixed width, fixed height, float:left and you're done. Buuuuut, the design needs to work with variable amounts of content, which means if one of these blocks has more content than the others, it will break the layout: Because the first gallery item ... Read More »
Native JSON in Firefox 3.1
In case you haven't heard, one of Firefox 3.1's awesome new features will be native JSON support. This is totally sweet for two reasons: eval'ing JSON in the browser is unsafe. Using native JSON parsing protects you against possible code execution. Safely eval'ing JSON with a 3rd party library can be orders of magnitude slower. Native JSON parsing is much faster. How does native JSON work compared to plain old eval? Simple: var jsonString = '{"name":"Ryan", "address":"Mountain View, CA"}'; var person = JSON.parse(jsonString); // 'person' is now a JavaScript object with 2 properties; name and address Pretty easy huh? And here's how to get ... Read More »
Graph Server Re-Write
Over the past few months the Graph Server team and I have been hard at work re-writing the back end for the Graph Server and it's finally come to fruition. For those that don't know, the Graph Server is used to display performance test data of Firefox builds reported by Talos. Our work initially started as performance improvements and some new features, but the more we worked with the old architecture, it became quite apparent it would not scale (performance and feature-wise). The old database schema duplicated test data in multiple ... Read More »
The Curious Case of the Giant Scrollbar
Recently I fixed bug 439269 ("AMO theme has unnecessary scrollbar at the bottom") and thought it was an interesting bug for a few reasons. To summarize the issue, for no apparent reason in right-to-left languages a really long scrollbar would appear at the bottom of the window. Even though there was a scrollbar, when you scrolled all the way to the left, nothing was there. Another reason this was odd was the scrollbar only appeared in right-to-left (RTL) languages. Inspecting the page via Firebug didn't give any clues as to what was causing the ... Read More »
Socorro Partitioning Rolled Back
This Thursday and Friday we attempted to push updates to re-partition our crash report database and optimize the reporting tool to take advantage of it. This was the deployment of bug 432450 and a fix for bug 444749, among others. Our first attempt suffered from a network timeout, which required an eleven hour restore and re-run. The re-run, done Friday, was done using a socket connection but would have required an additional 1-3 days of downtime, which was well outside our originally announced window. Consequently, the database was rolled back to its contents as of 6:55PM PDT, January ... Read More »
