Recent Blog Posts
Blogs ยป Archive for August, 2007
OSCON 2007: High Performance Web Pages
Steve Souders is Chief Performance Yahoo at Yahoo.
Talk focused on optimizing performance of client-side code, which — surprisingly — makes up 80-90% or more of the user wait time.
Steve ran quickly through 13 basic rules for high-performance Web sites:
- Make Fewer HTTP Requests
- Use a Content Delivery Network
- Add an Expires Header
- Gzip Components
- Put CSS at the Top
- Move Scripts to the Bottom
- Avoid CSS Expressions
- Make JavaScript and CSS External
- Reduce DNS Lookups
- Minify JavaScript
- Avoid Redirects
- Remove Duplicate Scripts
- Configure ETags
Articles on techniques for all these rules are available online at Exceptional Performance on the Yahoo Developer Network.
Steve also introduced the YSlow add-on for Firefox, that integrates with Firebug to analyze your pages according to the 13 rules and help you optimize your pages’ performance.
Where Is Your Passion?
There are two types of people in this world: those who are passionate about the Web, and those who are not.
Those in the first group strongly believe that the Web is more than just a tool for sharing photos and paying bills—but exactly why they feel so passionately about this varies …
The Romantic
Some people have a romantic notion that the Web is the ultimate medium for communication. The romantic holds dearly the values instilled in the W3C—that information on the Web be [source]:
available to all people, whatever their hardware, software, network infrastructure, native language, culture, geographical location, or physical or mental ability.
It’s one thing to agree with this statement, but it’s another to believe in it religiously. I’m lucky enough to count among my friends several people who fit into this group. These people exude an energy that is incalculable: at user group meetings and conferences people hover around them to hear what they have to say. Romantics of this caliber are influential, driven, and inspiring.
The Entrepreneur
Entrepreneurs love the Web because it levels the playing field. A young, two-person company can create a web presence that is more impressive and looks more professional than an established, multi-national corporation.
OSCON 2007: Adventures in Localization
Wil Clouser is a Web Developer with the Mozilla Corporation, and blogs at Micropipes::Blog. Mike Morgan is Manager of Web Development at Mozilla Corporation, and has a blog at morgamic.com.
This talk described the process of internationalizing Web properties at Mozilla, specifically mozilla.com and addons.mozilla.org, site which together receive almost 200 million hits a day. The localization process for the Web sites is still behind the Firefox client, which ships with over 40 different locales.
They started by discussing a few of the pitfalls of localization, such as pluralization and noun-gender, and then went on to talk about the system they settled on for localizing the Mozilla Web properties, which are a combination of static text in templates and dynamic content pulled from a database.
For static text, they ended up using GNU’s GetText, as it’s a stable, well-proven solution already in wide use. It has good documentation, pluralization support, and a wide variety of tools that translators may already be familiar with.
For the dynamic content, they used a simple database-driven solution of lookups based on string ID and locale key. (They initially looked at PEAR::Translation2, but it turned out not to be flexible enough for their purposes.) The advantages of this system …
OSCON 2007: People Hacks
Adam Keys is a software developer and writer. His blog is at therealadam.com.
In this talk, Adam presented a number of methods for effective advocacy and for getting along with other developers. In other words, interacting with people is as important as interacting with hardware or software. Problems in this sphere have no technical solution — they require a social one. Thus, the idea of ‘people hacking.’
People hacking is not rooted in nefarious black-hat hacking, but simply in using tools of social jujutsu (sometimes on yourself, even) to gain traction for ideas you’re trying to advocate. Paying more attention to the people side of things can help you build the kind of integrated, smoothly functioning team capable of executing (to borrow a basketball metaphor) the “no-look pass.”
A few sample ideas included:
- Simply smiling — makes yourself and people around you feel more positive
- Avoid negativity — try the ABBA Method (see the slides for details)
- Avoid criticism
- Compliment before criticizing
Some ideas followed about how to deal with jerks in your organization, including the simple-but-effective “No Asshole Rule” (from the book of the same name) that encourages a zero-tolerance toward asshole behavior in your group — even from so-called superstar programmers.
Adam also encouraged a little self-evaluation …
OSCON 2007: Managing Technical Debt
Andy Lester is with the Perl Foundation, and maintains a blog at petdance.com.
Andy’s talk gave practical advice for catching up on all the tasks you put off until some later date (that inevitably never comes) — stuff like postponed docs, fixing broken tests (or just writing tests at all), backup regimes, TODOs in your code, etc.
He had a very simple and straightforward formula:
- Identify your debts
- Determine the costs
- Pay the most profitable
- Stop incurring new debt
- Repeat as necessary
The most important takeaway for me was the idea that you don’t try to fix all your problems at once. You figure out what fix will give you the most bang for your buck — not the easiest thing to fix, not the biggest problem. You fix whatever it’s the most profitable to fix.
There was also a lot of good discussion during this talk on how to convince a manager to allow you to begin reducing technical debt with things like refactoring, increasing test coverage, adding documentation, or actually testing your disaster-recovery plan. The best advice was the idea of putting it in terms that the manager can understand (often with a manager either in money or time).
For example, if managers know that investing two …
OSCON 2007: The Holistic Programmer
Adam Keys is a software developer and writer. His blog is at therealadam.com.
The days of one guy putting together all the hardware and software together by himself in his garage are long gone — working with computers increasingly means doing something very specialized in one of the layers between the hardware and the end-user.
Adam made a good case for the idea that despite this specialization people working with computers should develop at least a passing familiarity with the layers other than their own — e.g., a guy working in the database learning typography, and a Web designer learning about compilers.
Many developers may not have the interest (or the discipline) to spend time learning about subjects so far removed from their little piece of the pie, but a couple of the benefits to doing so that Adam described seemed pretty compelling:
- The ability to converse with the people you work with and understand better how your work interfaces with theirs.
- Gaining a new perspective that allows you to find unexpected or creative solutions to problems in your own domain.
Adam spent the end of his talk going over the two example layers just mentioned — CSS/layout/typography, and compilers. That might not have been …
OSCON 2007: Windmill: Automated Testing of Your Ajax Web Applications
Mikeal Rogers is a QA Development Engineer at the Open Source Applications Foundation, and has a blog at semanticmikeal.com
Adam Christian is also a QA Development Engineer at the Open Source Applications Foundation. His blog is at t0asted.com
(Disclaimer: I work at OSAF and am a committer on the Windmill project.) This talk started with Adam showing a brief demonstration of using Windmill to test the Ajax Web UI for OSAF’s Chandler Server, including drag/drop testing of the calendar view.
The talk continued with Mikeal describing the reason for building a brand-new framework rather than using an existing tool like Selenium — frustration with the inability debug broken tests. Windmill is designed to allow tests to be paused and debugged interactively.
They followed with a brief overview of Windmill’s Python/JavaScript architecture, and ended with a demonstration of the cross-browser recorder that can be used to create tests from the Windmill IDE without writing code.
Mikeal and Adam have their slides available online here.
They have some screenshots and screencasts available online here.
Why Join A Blog Network?
Probably one of the questions I get asked more then others is why one should join a blog network. I am sure everyone who has been involved with any blog network will have different reasons, but here are my reasons:
1) Community - In the past when I have talked to my bloggers and bloggers of other networks I have asked what they liked most about being part of a blog network and the top answer has always been the community aspects. Many networks offer a forum where bloggers can converse on blogging and many other topics. Most bloggers make lots of friends through the network and simply through the increased traffic to there blog. Thus my second reason….
2) Traffic - I have personally had several blogs over the last few years but have always let them fall apart because no one was reading my post. Unless you have a community of friends that are bloggers or own sites, it has become a chore to gets traffic to a blog. Another factor that comes into play is how do you stand out when 80,000 new blogs are being added to the web daily? When you are a blogger for a blog …
Have Microformats finally arrived?
I must admit, when the concept of Microformats first starting frothing on the conference circuit, I was a little bit underwhelmed. Sure, I can see the potential value in the idea — making it easy transfer useful data (event times, contact details, etc) from the web to other devices. Sounds peachy.
Incorporating them into a site was never a big issue. The markup does tend towards the mind-numbing, but all the most popular formats now have push button generators (hCard, hCalendar, hReview) that do most of the grunt work for you.
No, for me the question was ‘Great! But what have they done for me lately?’
Mostly this was met with an extended ‘Well…….once upon a time, in a galaxy, far, far away…’ and some concentrated carpet scuffing. While I spent some time coding microformats into my pages, for me it felt a bit like buying carbon offset credits — the ‘honorable’ thing to do, but part of me couldn’t shake the idea I was getting scammed.
Perhaps that’s beginning to change.
Google Maps this week joined Yahoo Maps in natively reading and writing the hCard microformat — the microformat dedicated to describing people and organizations. Now, while this adds some handy …
What is a community?
And what does it take to make one? Is it like-minded people, who share ideals, beliefs or some other common values? Does it take a certain number of people to make a community?
If the people around you encourage and support you, even when you’re full of it, are they being a good community? If you aspire to join a clique or elite, and that clique decides to accept you, are you then a part of a community?
I believe that community is nothing but mutual respect. People can form a community without having common beliefs, without having shared identity or defining themselves in terms of each other. Numbers are irrelevant; ideals and desires are irrelevant; even the extent of mutual support and patronage is largely irrelevant. Community is a state of mind. It’s a sense of belonging that springs from feeling other people accept you despite, not because, of who you are.
When I came to Australia I did so for personal reasons; I didn’t come for my career, or the crowd, or the sense of belonging. I came here because my heart told me to, even though the reasons were wrong. And I never tried to rationalise that away. …
Sponsored Links
SitePoint Marketplace
Buy and sell Websites, templates, domain names, hosting, graphics and more.
Logo Design, Web page Design and more!
- Custom logo designs created ‘just for you’.
- Pick the design you like best.
- Only pay if you’re satisfied with the result.
SitePoint Kits
Download sample chapters of any of our popular kits.
The Web Site Revenue Maximizer
The Search Engine Marketing Kit, 2.0
The Web Design Business Kit 2.0
The Email Marketing Kit
The Usability Kit
SitePoint Books
Download sample chapters of any of our popular books.
Simply Rails 2
The Principles Of Project Management
The Ultimate CSS Reference
The Art & Science of JavaScript
The PHP Anthology: 101 Essential Tips, Tricks & Hacks, 2nd Edition
The ASP.NET 2.0 Anthology: 101 Essential Tips, Tricks & Hacks
The CSS Anthology: 101 Essential Tips, Tricks & Hacks, 2nd Edition
Simply JavaScript
The Art & Science Of CSS
The Principles of Beautiful Web Design