Kendrick Hang Narrative, code, and photos.

Flickr View All » TickleBDU BlueCompound EyesFinding One's FootingWings of FancyWings of FancyWings of FancyWings of FancyAlicia's New White Coat

perspectives on rain

And now for a sharing moment from Ken…

I used to feel quite melancholy on rainy days. I’d have to begrudgingly wake up to dim gray skies, gripe in traffic about how people can’t drive when it’s raining, and considered my day a loss. But one day not long ago, the skies dumped down rain on me while I was dayhiking on North Seymour Island in the Galapagos. Being in a protected national park, there were no buildings to shelter me from the rain, and the boat was at least 30 minutes to an hour from coming to pick us up. But this time, uncharacteristic of me, I laughed and let the rain fall on me. While most everyone else was standing on water’s edge complaining to the tour guide about the boat not being here faster, I got into the water with Alicia to check out some of the marine iguanas and Sally Lawrence crabs that were climbing the rocks and tried taking some pictures with her new waterproof camera.

Moments before the storm:
Marine Iguana

Alicia on the beach:
Alicia in Rain Gear

Me on the dinghy after it picked us up (click on the photo for an interesting dialogue in the comments):
Ken in Rain Gear

Upon getting back to the schooner and having an Ecuadorian Pilsener beer, I felt glad that I didn’t let the rain bring down my first day in the Galapagos. But surely, I was only happy because I was on vacation, right?

So that was this past March. A month later in April, I went downtown to the National Mall for the Earth Day celebration, camera in hand, ready to check out the exhibits and photowalk around the concert. Again, clouds rolled in and the downpour began. No umbrella on hand, no poncho in my backpack, and this time, I’m carrying my camera and lenses, which are not waterproof. My Crumpler camera bag is waterproof, but I figured when they say waterproof, they generally mean misty rain, not sheets of rain.

I stowed my camera and looked up to see a scene of chaos that no camera could capture. Some people sprinting full speed toward the museums, some opening their arms to the sky, some starting a game of football, and some just doubled-over laughing with their friends. And then there was me, by myself, fully soaked and getting even more so by the second, walking slowly and listening to the combined crunching and squishing noise the gravel was making at my feet, looking around, and laughing to myself, in that relieved, freeing laughter sort of way, knowing that rainy days don’t have to be bum days for me anymore. I was so glad to be out, even glad to be in the rain to witness the spectacle. The rain tapered off a little bit and I got my camera back out (carefully, with a plastic bag around it) to see if I could at least try to capture the notion that rain can even make the day more fun and in a sense, even can bring down inhibitions.

For example, these people probably wouldn’t have jumped into this fountain at the National Gallery of Art if it were just a regular sunny day:

Note the unused umbrellas in the lower left:

I recall these guys commenting that it’s probably drier in the fountain than it is in the torrent of rain:

Not shown are the people who offered me a beer from their cooler at the top of the steps at the National Gallery of Art, West Building. And the security guard who was kind enough to look the other way while I was drinking it.

I haven’t had a gloomy rainy day since. Now, when I see rain coming, I think of the two particular experiences above (and it’s nice having some pictures of them) and wonder what will be my next rainy day story. My more recent memories of rainy days include laughing with coworkers about how the rental car company wasn’t going to appreciate us bringing our car back after driving it through a hailstorm, looking at the flood of neat rainbow pictures in the DC flickr pool after one recent rainstorm, and today, writing this entry, recognizing that the rain itself has helped me find an element of peace in my life that I didn’t have before.


licensing versus certification of software engineers

The following is a short, informal piece I wrote for a class last year while we were debating whether or not software engineers should be licensed. The debate continues in real life as the software industry as a whole is trying to find agreement on the issue of whether or not software engineers should be licensed.

In casual English, licensing and certification have similar meanings. However, in the context of the debate on whether software engineers should be licensed like traditional Professional Engineers (PEs), licensing and certification have very distinct meanings.

The following are definitions from Knight and Leveson (2001), ACM Task Force on Licensing of Software Engineers Working on Safety-Critical Software. The notion of licensing is to have some authority grant permission to an individual to engage in an activity that is otherwise unlawful.

Similarly, certification assures that an individual meets a minimum set of requirements.

Licensing and certification differ primarily in the permission to act. Licensing is mandatory and is a state or federal activity (usually state) while certification is voluntary.

The local governments in Texas and provinces in Canada are licensing software engineers today as PEs with legal rights. Meanwhile, other professional organizations in industry are in the business of certification. For example, the IEEE has the Certified Software Development Professional (CSDP) program, the Project Management Institute has the Project Management Professional (PMP) program, and of course many are familiar with the gamut of technical certification programs like the Microsoft Certifications.

My point is, if we software engineers are going to discuss/debate this topic and be understood, we should aim to be precise in our wording. It’s the only way we can all understand what someone really is saying instead of making assumptions and implications. I know, this sounds like an advertisement for good requirements analysis and specification techniques.

Now for the alarming part. If one takes note of the Texas PE exam requirements one will find that their exam has little to do with software engineering as it is typically treated in academia and in industry. Searching around on their website, I found Texas Board of Professional Engineers meeting minutes (pdf) (2005) where they decided to use the IEEE CSDP certification exam for licensing software engineers as PEs in Texas until a better exam comes around. From the minutes, “IT WAS MOVED AND SECONDED (Frailey/Rodriguez) that the Board accept the CSDP examination as an interim substitute for a PE exam in software engineering, until such time as a national exam is provided by NCEES and reconsider the licensure of software engineers.”

To me, this is not a real confidence builder in their system of licensure — I just think Texas jumped the gun a little. Before we as a software community have understood what the implications of licensing are and before we decided on what the best means of licensing are, Texas already started issuing licenses to legally allow people to do things, while considering to use a minimum certification exam to allow them to do it. One would like to think that if licenses are being issued to people who are trusted to do something safety-critical like design software for an aircraft system or a medical device, they should know more than the minimum requirements. The Texas exam, and any exam really, determines a minimum level of knowledge, but it does not determine competence or mastery.

References
IEEE Certified Software Development Professional Program. Retrieved May 30, 2007, from http://www.computer.org/certification

Knight, J., Leveson, N. et al. (2001, August). ACM Task Force on Licensing of Software Engineers Working on Safety-Critical Software. Retrieved May 30, 2007, from http://www.acm.org/serving/se_policy/safety_critical.pdf

Microsoft. Microsoft Certifications Overview. Retrieved May 30, 2007, from http://www.microsoft.com/learning/mcp/default.mspx

Project Management Institute. Certification Project Management Professional Overview. Retrieved May 30, 2007, from http://www.pmi.org/info/PDC_PMP.asp

Texas Board of Professional Engineers. Examination Information. Retrieved May 30, 2007, from http://www.tbpe.state.tx.us/lic_exams.htm

Texas Board of Professional Engineers. (2005, August). Minutes, Industry Advisory Committee, August 16, 2005. Retrieved May 30, 2007, from http://www.tbpe.state.tx.us/minutes/ind_81605.pdf


washingtonpost.com redesign, round 3

Last April, I wrote a full-length post here on this blog on what I thought was wrong with the washingtonpost.com redesign. Two days later, I wrote a follow up on this blog containing my posted comment to washingtonpost.com editor Jim Brady. Shortly after that post, I wrote a short follow-up on Edward Tufte’s Ask E.T. forum topic on the redesign. The text of my post in the Ask E.T. forum appears below.

You might appreciate seeing this marketing piece on Apple’s website that profiles both Mr. Jim Brady, executive editor of washingtonpost.com and Ms. Jenn Crandall, the producer of OnBeing. It sheds a lot of insight as to why washingtonpost.com is the way it is today.

http://www.apple.com/pro/profiles/washingtonpost/

A couple of things to put into perspective… washingtonpost.com is an entity separate from The Washington Post newspaper, both part of Washington Post Newsweek Interactive (WPNI). Obviously, the web site draws from the work of the print newspaper as well as from its reporters, but from what I’ve read in the corporate information, washingtonpost.com is there to cull highlights from the paper for the web and provide web-only features. What I’m saying here is that the organizational hierarchy probably plays into the organization of the website. Hence, the washingtonpost.com logo is not the same as the masthead of the print paper and we see that the “print edition” or “today’s paper” as it’s labeled now has always seemed kind of detached from the remainder of the page.

Second, I’m sure we’re all aware of the pressures that traditional newspaper organizations face. Subscriptions are decreasing, ad revenue is decreasing, and as a result, newsrooms are shrinking. I get the feeling that washingtonpost.com has become the experimental proving grounds to find a new revenue source to make up for lost traditional revenue. In the words of one of my friends in the news industry, “we’re trying anything and everything to see what sticks.

Hence, they are trying to work all sorts of media into washingtonpost.com. Not all of it is bad, but of course, the problem is as Mr. Tufte stated, the Washington Post is a news organization — that is its reason for existence. The fanciest multimedia and the neatest interface can’t make up for a lack of depth in the content, which is going to be the trend if they continue to shrink the newsroom.

– Kendrick Hang (email), April 12, 2007

The marketing video has changed since then, but the spirit of it is still the same. And if you go to washingtonpost.com right now, you will still see two logos: one for washingtonpost.com and one for the Washington Post. I have a correction to my above post though: the parent company is not Washingtonpost.Newsweek Interactive (WPNI), but rather The Washington Post Company. WPNI is in charge of washingtonpost.com and newsweek.com, while The Washington Post Company is parent to The Washington Post, WPNI, Express, Newsweek, Slate, Arthur Frommer’s Budget Travel, and Kaplan (the educational services company), among other ventures.

Now, in this week’s Washington City Paper, a story on what I mentioned above: One Mission Two Newsrooms. In addition to the story, the City Paper made a video to show how geographically separated washingtonpost.com is from The Washington Post.

My point still remains the same: why should readers care and have to differentiate what the corporate organization of The Washington Post Company is? Why are there two navigation structures on their website: one for washingtonpost.com and an alternate structure for the print edition of Washington Post (under the link Today’s Paper)? To us, it’s all one single newspaper. If I spot an article in the Food section on Wednesday, I have to figure out if it appears in the Arts and Living section on the washingtonpost.com main page or if I have to go under the Today’s Paper link to find it the Food section under the print edition Washington Post.

Maybe this is just a classic problem in DC. Is the Washington Post just a reflection of the turf wars and bureaucratic infighting that is so common in so many workplaces around the region? This is definitely not the first time I’ve encountered multiple people or divisions in an organization vying for influence without regard for the greater organization. I will admit however that integration, within organizations and within the context of design is quite challenging. However, I still believe in the bottom line: people external to an organization, particularly customers and users, should not have to be exposed to the bureaucracy within the organization, especially in the form of design.


my photo policies

After several years of having an informal policy in my head regarding the rights to my photos, I decided to finally put it in writing. These policies apply to any photos I publish on the Web, particularly those appearing in my Flickr photostream. Each photo in my photostream will have a (c) or (cc) designation noted beneath it.

Photos designated as “(c) All Rights Reserved” are fully copyrighted. No reproduction or distribution without prior permission is allowed. However, if you appear in a photo, you are welcome to a copy of that photo for your personal use — my way of saying thanks for being in the photo — ask me if you would like an original full-resolution file or a print (my complements).

Photos designated as “(cc) Some Rights Reserved” are licensed as “Attribution Non-commercial No Derivatives” (English, legalese) through Creative Commons. Everyone is welcome to reproduce and distribute, without modification, for non-commercial purposes as long as attribution (name credit) is provided. This is my way of contributing to the spirit of the web and sharing some of my work for the world to use, for free.

After taking Pfaffenberger’s class in college I know this policy is not very enforceable on the Web, where copying is easy and rampant. Plus, I know that copyright laws were written in an era prior to the Internet and information age, so interpretations can sometimes get hazy. Theoretically, it should still hold up in court if someone out there steals one of my photos for their benefit. It’s amazing how one’s view of copyright changes when one shifts from being a consumer of intellectual property to becoming a producer of intellectual property (IP).

The thing is, I’m not really one of those people who defensively hoards their IP. I feel like if I’m posting something on the Web, I’m doing it because I want to share. This is why I never have and probably never will put watermarks on my photos. Watermarks put ugly clutter into the photo and it doesn’t really protect the photo because someone can just crop it off or work some photo editing magic on it. There is no way to prevent copying. If I really wanted to prevent people from copying something I created, I wouldn’t put it on the Web. What I don’t want to happen is someone taking my stuff and claiming it as their own and/or making a profit off of it.

Flickr Community Manager Heather Champ phrases this all a little more succinctly at the bottom of her About page.


minimizing losses on a late project

The following post is the text of a short paper I wrote for a course in Software Systems Development. The writing style is a little formal for a blog, but I wanted to share because I believe the advice is sound, not just in terms of the citations, but based on my real-world experiences as well. Sometimes it’s hard for me to believe that I’ve been working in software for over a decade…

Although software engineering practice focuses on establishing good project plans from the onset, sometimes it becomes necessary to consider what happens when a project becomes late and over budget. In the case where a project is nearing completion (and one has come too far to cancel the project), there are some project management strategies, specifically relating to project monitoring and control, to minimize the lost revenue for the project.

Monitoring and controlling the staffing level in the project is essential for stabilizing the development cost. Personnel shortfalls are common in projects, so common that Boehm (1991) considers it one of the top 10 risks on any software project. However, according to Brooks (1974), one must resist the temptation to add staff to the project or risk it becoming later, and as a result, more expensive. Adding staff generally increases the communication overhead between project team members and it takes time for new staff to familiarize themselves with the project (Brooks, 1974). The only case where adding staff might help accelerate the project towards completion is where new team members are already familiar with the tasks to be performed, thus reducing the learning curve to understand how the project operates (Glass, 1998).

With a stable development staff working on the project, it is also important to monitor and control the project’s requirements. Wallace and Keil (2004) consider “scope and requirements” to be one of four major risk categories on a project. Scope and feature creep needs to be controlled through the customer and controlled within the development team as well. Using a Requirements Traceability Matrix, the project manager should monitor the development team’s effort to ensure everything being done in the design, implementation, and testing activities is traceable to a stated requirement. Tracing work being performed by the development team back to requirements helps to limit any extra work beyond the stated requirements being done (Wallace and Keil, 2004), which would further delay the project and increase the cost. Glass (1998) also suggests reducing the initial project scope if it is possible with the customer – deferring or eliminating some requirements or features to make the task more feasible.

Despite the pressures of a project being late and over budget, the project manager should continue to monitor and control the project processes, particularly quality control. Glass (1998) suggests that projects often fall behind schedule because there was not enough time originally allocated in the schedule and that 85 percent of project managers extend the schedule as a result. Although extending the schedule may result in revenue loss, conducting the remainder of the project according to the planned processes may minimize the revenue loss. Effective quality management reduces the risk of introducing defects, which would adversely affect cost and schedule in terms of effort required to manage and rework the defects.

In a project that is late and over budget, project managers should reexamine what is known through project monitoring and readjust through project control. The project manager must address the fundamental questions in a project: Who is working on the project? What are they working on? How are they working on it? Finding stable answers to these questions will result in the project being completed with a minimal loss in revenue.

References
Boehm, B. (1991). Software Risk Management: Principles and Practices. IEEE Software, 8(1), pp. 32-41.

Brooks, F. P. (1974). The Mythical Man-Month. Datamation, December, 1974. pp. 44-52.

Glass, R. L. (1998). Short-Term and Long-Term Remedies for Runaway Projects. Communications of the ACM, 41(7), pp. 13-15.

Wallace, L. & Keil, M. (2004). Software Project Risks and their Effect On Outcomes. Communications of the ACM, 47(4), pp. 68-73.


washingtonpost.com redesign, round 2

Jim Brady, executive editor of washingtonpost.com posted an updated announcement today on the redesign of the site. Below are some of his follow-up comments in response to other users.

As for a daily chats, they are now near the top of the home page, right below the opinions box. We promote one major chat at a time, with links to a few other chats/transcripts. The flyout schedule will be on the page by week’s end, and will be curious to see whether it makes it easier to find things.

Question for all of you: Did you use the Discussions button in the global navigation at all? It didn’t appear it was used very much based on traffic, but if it was being used, that would be good to know.

Jane, curious on the dumbed-down theme that ran through a lot of these comments. What we cover and what we promote in the news hole hasnt [sic] changed, so wondering what is giving people the impression that the page is dumbed down. I’d argue making something easier to read by adding white space and an easier-to-read font is an entirely different issue. We have side-by-side printouts of the new and old home page, and I don’t see much of a difference in terms of amount of news on the page. I’ll see if we can publish this so you can make your own judgements [sic].

After calming down a little bit from my initial frustration and venting it in my previous post, I wrote the executive editor a comment and posted it as a response to his comments.

Mr. Brady,

I understand the motivation behind tickers. They supposedly are able to show multiple lines of information in one line’s worth of space. However, echoing some of the comments above and in the previous comments page, a lot of people are scanning the front page very quickly, multiple times a day at work to see the new news. We don’t have the time to drill down into each of the individual sections when we are at work. (At home, whether it be the web site or the Sunday print paper it’s a different story.) The ticker interface forces one to wait, tick, tick, tick, five or six seconds for the stories to flip by. I think people would rather see a list of five most recent stories they can look at in one second. Besides, the Washington Post is the hometown paper for a population of 8 million. You figure we can afford more than one line for Metro news.

Measuring the number of clicks to determine how useful a feature might be a fallacy. If the information is all on the front page to begin with, the reader wouldn’t even have to register a click. I think that’s definitely the case with the Live Discussions. It was nice seeing a list of the daily discussions so I could tell if I wanted to join it or read the transcript. If it wasn’t interesting to me, I didn’t click it. If it was, I did click to read it. Fact of the matter is, we’re not going to read every Live Discussion. So the number of clicks on Live Discussions from the front page shouldn’t be an indication of how popular Live Discussions are, but rather how popular the particular discussion topics are. When the goal of usable web design is to minimize the number of clicks to find content, measuring the number of clicks to determine which content is popular doesn’t seem to make sense. If anything, increased number of clicks may be an indicator that the content is difficult to navigate to.

The density reduction (or perhaps the appearance of it) is what bothers me and many of your other readers the most. Two links under a heading goes counter to even the most basic style guide rules: one doesn’t make a bullet list unless there are at least three items, one doesn’t make a section unless there are three subsections underneath the section. Three is the magic number — two looks sparse and incomplete. I think 3-5 items is the sweet spot, more than 5-7 items in any list and then it starts looking too long.

If you assume there are about ten sections of a newspaper, i.e. ten unit blocks on the website and one reduces the number of front page links from 3 to 2 each, that’s 10 links taken away, a 33% reduction in content. A user now has to use the drill down navigation 33% more often than being able to just jump straight to the story. Even if this is a perception thing, as you claim, it really looks like we are getting shortchanged by reducing the list lengths from 3-5 down to 2 per section.

Regarding the page width, which a number of people commented about on the previous set of comments, people are good at reading down a page, but not across a page. Ideally, page content should be no wider than four or five inches. This is why reading a book (sentences are about 4-5 inches long) is easier than reading a printout from your word processor (sentences are about 6-7 inches long). This is the same reason why the usability gurus are ok with vertical scrolling but shun horizontal scrolling on a web page. The new design has the eye constantly scanning left and right across almost the entire width of the monitor and it gets (subconsciously) annoying. Yes, the content is broken into columns, but there are large, prominent blocks in the right column as well as the three-column wide feature bars in the middle of the page that forces the eye all the way across the page and then back. The previous design had two columns of news content, saving the third for smaller, less prominent advertisements and lesser read sections like the classified, real estate, etc. Now the third column, has advertisements mixed with popular content like most read articles. Even though the physical page width might be the same as before, our eyes are scanning horizontally all the way across the three columns, where as before, we were just scanning horizontally across two columns and saving the third for a vertical pass down.

Lastly, the line spacing (aka leading). The general typographic rule is to increase the line spacing with the length of the line. That is, if your line runs the length of a page (6-7 inches) then increasing the line spacing will help readers find their place when their eyes jump to the next line. (Grab a few books off the bookshelf, observe the relationship between line length and line spacing.) In print newspapers the columns are narrow, and as a result, the line spacing is very tight. I admit, print typography is different than web typography, but the columns here on the website are still relatively narrow, so it just looks really strange to have a larger line spacing, especially since many of us are used to the traditional line spacing in the print edition of the newspaper.

Just my observations… and I know you and your staff have been piled on in the past few weeks, to put it lightly. Keep in mind, we comment strongly because we care. You have very loyal readers who demand the best from one of the best newspapers on this Earth. Looking at the last round of comments, you have readers who are in touch and intelligent. We love the Washington Post — it’s both a newspaper for the world and a newspaper for our hometown — and we want washingtonpost.com to be a great website. So understand when we get defensive when we fear the Post heading in the direction that television news has been heading towards in the past decades: four minutes of news at the top of the hour and the rest as fluff and commercials. We don’t want a morning news show, we don’t want CNN — we want The Washington Post.

Kendrick

I should have added two more examples to the magic number 3 comment I had. When one writes an essay, the form calls for three supporting paragraphs. When one makes a presentation, there usually are three points (arguments) in the body of the talk to support the claim one is making.

We’ll see what changes come about in the following weeks. I already see changes in progress and Jim Brady has promised more to come. From me, more design analysis to come. If I can find an image manipulation program that won’t cost me an arm and a leg, I’ll see if I can find and post some annotated before and after screenshots to highlight visually where my complaints are.


washingtonpost.com redesign

A little over a week ago, Jim Brady, the executive editor of washingtonpost.com announced a new layout for their home page. If you notice in the comments responding to Mr. Brady’s announcement, the criticism is fierce. People are slamming the new design, swearing off the Washington Post website, and even calling on the ghost of Katherine Graham to haunt the designers.

Frankly, I agree with most of those comments. The “designers” took what I felt was one of the best news web sites in the world and absolutely ruined it by turning it into cnn.com or any of those other television news web sites. The design change is an insult to the reading audience’s intelligence. In this post, I will examine where they went wrong. But first, a brief introduction to what kind of design I am talking about.

When people talk about web design, we tend to think of graphic design. That is, choosing layouts, logos, fonts, color schemes, and the like. However, graphic design is only one element of a larger design effort: information design. Information design takes into account not only how a page looks, but considers how efficiently and effectively the page conveys the content to the reader. Information design is the intersection of graphic design arts, content design (written and media communication), and usability (human factors) design. People want their information to first be easy to find, thought-provoking to read, and look organized.

The new washingtonpost.com home page fails to meet the basic tenets of information design, and I hope to enumerate the reasons below.

Reduction of page content. Mr. Brady lists the following as the primary motivation for the page redesign (boldface emphasis added by me).

One of the most frequent complaints about our previous home page was clutter, specifically the number of links and lack of open space on the page. In this new page, we’ve added more white space and cut down the number of long lists of text links. The hope is that these changes give the page more of an open, inviting feel and make it easier to scan. We’ve also moved to a more modular layout to make it easier to find your favorite home page features.

The previous version of the home page had three to five links under each block on the page. About five new links to stories under the National block, two or three links to stories under the Politics block, and five or six links to stories under the Metro block. Now, there are no more than two links to story under each section on the home page. To find the rest of the stories for the day, readers have to go through the menu and drill down into a subheading to go to a new page to find the latest news.

Usability best practices and common sense design states that number of clicks need to be minimized — the more a user needs to click to find things, the more likely they will click Back and out of your page. Besides, it’s just an insult to the reader. Reducing the amount of content is saying, this page has too much for you to handle so we will dumb it down and call it reducing clutter. One of the commenters phrased it best by saying, “if I want to look at white space, I can look at my wall.” Also, we’re not looking for “home page features”, we’re looking for the real news — more on that to come.

Critical content disappearing. The Washington Post is the paper for the nation’s seat of government. Where in the world is the politics section on the new page? The word politics doesn’t even appear on the new page design. The rationale is to lump politics into the National section. Wrong! The National section is for news stories from across the country. The Politics section is the bread and butter of the Washington Post. The readers in this city and elsewhere in the world read the Washington Post because they are political and policy wonks, so why in the world does the new design hide the politics section?!

The Washington Post is also the hometown paper for the city of Washington and two neighboring states — 8 million people. Now there’s barely any local news on the home page — only one story, one, above the fold, even on the “local edition” of the home page. Long time Washington Post readers refer to the local news section as the Metro section, and that’s what we look for. Again, does the word Metro appear anywhere in the top half home page? Lastly, the big draw of washingtonpost.com, the web site specifically, was the content that was presented in online format only: columnists (local, political, opinion from both sides, and gossip), live online discussions featuring newsmakers, and political blogs. Those features now are hidden away behind some layer of navigation. The previous design featured all of these online-only features prominently on the home page. The new current design now has all of that hidden away. Lots of angry people as a result. Lots.

Page width is too wide. If usability has commandments, one of them would be to never have horizontal scrolling on a page. This is something that every designer has known since 1997. The new page design is so wide, it barely fits on my widescreen monitor when it is fully expanded to eliminate horizontal scrolling. People are good at reading down a page, but not across a page. Ideally, page content should be no wider than four or five inches. This is why reading a book (sentences are about 4 inches long) is easier than reading a printout from your word processor (sentences are about 6 inches long). This is also why newspapers are printed in columns instead of printed all the way across the page.

The new design has the eye constantly scanning left and right and it is annoying. Yes, the content is broken into columns, but there are large, prominent blocks in the right column that forces the eye all the way across the page. The previous design had two columns of real content, saving the third for smaller, less prominent advertisements. Now the third column, larger than in the previous design, has large advertisements mixed with content. Annoying.

Junk content. A new Smart Living section? A multimedia toolbar? Give me my Politics and Metro sections back. Readers go to the Washington Post to be their source of news and analysis, not their lifestyle magazine. I don’t want the website equivalent of the “morning news” shows where they give me 4 minutes of news on the hour and fill the rest of the hour with junk. The only lifestyle features people want in the Washington Post are event listings and reviews of what to do locally around town.

Vertical line spacing. One of my biggest typographic annoyances is double spacing. Double spacing makes paragraphs more difficult to read on screen or on paper. It’s harder to naturally establish flow between the lines when there is too much of a vertical gap between lines. In fact, one of the reasons why manuscripts are double spaced is to break the flow between lines so that individual words and phrases can be examined during the editing process. To re-establish natural reading flow, the manuscript is then typeset in single spacing for the finished product. In the new washingtonpost.com page design, they added more line spacing to provide more whitespace, but so much that it almost looks double spaced. No professionally printed book or professionally produced website double spaces their text, so I don’t know why washingtonpost.com is trying to. It doesn’t look cleaner, rather it looks awkward.

Not enough differentiation between advertisements and content. Generally when one sees google ads on the right side of a page, it’s separated out into a block, the typeface is different, you know it’s an ad. Now, the ad links and the content links look the same, so it’s harder to tell if you are clicking on a travel article or a travel ad. This is low. Since when did the Washington Post stoop to tricking readers into clicking advertisements? Respect your readers. Obviously they don’t anymore according to this Q&A with Paul Compton, the creative director of washingtonpost.com. Compton’s own words below.

Takoma Park: You’re not asking advertisers their opinion here, you’re asking users.

Be ad-driven if you like, but don’t tell us it is for our own good. It isn’t.

Paul Compton: I find it interesting that you see users and advertisers as two distinct groups. I’m sure that many of our advertisers are also our viewers. I look at advertisers as “us” not “them”.

Washington, D.C.:“Paul Compton: I find it interesting that you see users and advertisers as two distinct groups. I’m sure that many of our advertisers are also our viewers. I look at advertisers as “us” not “them”.”

I would venture to guess that of the universe of all your users, the percentage who are also advertisers is small.

Be upfront and honest about your motivations … WP.com is a business that has to make money. I get that.

Don’t blow smoke by telling me that there’s no difference in the wants and needs of readers and advertisers, that we are all one big happy group.

As a reader, my ideal would be no ads to get between me and the content. (I, personally, would be happy to pay to subscribe to a low-ad or no-ad Web site.)

For an advertiser, the ideal would be maximum ad and the absolute minimum content required to draw the eyeballs.

We aren’t stupid out here — we know the difference. Don’t condescend.

Paul Compton: The reality, as I see it, is that we want and need a large audience, and without that, we wouldn’t have the reach which is so appealing to our advertisers. Yes we are a business and the site is free to our audience. One of the greatest challenges I have designing the site is striking a harmonious balance between important forces. Sometimes viewers goals, editorial goals, and advertiser goals naturally conflict with one another. That’s the world we are in. My goal is to be the best we can be at respecting all forces and making them work together.

Like I said, people are mad. Compton’s pompous response does not help either. Sure, you should defend your work, but if your readers/users/customers are angry, you’d better be listening to their words and re-examining things one more time. Compton almost serves as some kind of twisted metaphor for what Washington has become in many peoples’ eyes: incompetent, arrogant, and unwilling to listen to what people want.

It makes me sad to see what they’ve done to washingtonpost.com. While on travel, I realized that two of the best papers in the country, and I would argue the world, are the New York Times and the Washington Post. You go elsewhere in the world and I guarantee you that many of the pieces are fluff, propaganda, and distractions. People around the world go to the Post and the Times to get their real news from top-notch reporters and not for the re-iteration of soundbites and talking points that politicians and their staff broadcast.

The Washington Post is best known for breaking the story on Watergate, and in more recent times they broke the stories on Abu Ghraib and Walter Reed, just to name two. The Washington Post is the definitive source when major political figures break headlines and when they break down. Why take all that great coverage off the front page and replace it with whitespace and a whole extra layer of navigation hierarchy?

Finally, if you want a more professional opinion than mine, Edward Tufte, the authority on information design, has something to say about the new design in his letter to executive editor Jim Brady.

Subject: Redesign of the Washington Post home page: PowerPointing the Post

Dear Jim Brady,

I’ve written a lot about analytical design and have, in particular, studied news websites (see tufte.com). I read the WP web page daily and, for many years, subscribed to the Post by mail.

One of the great principles of excellent information design is: “Clutter and confusion are not attributes of information, they are failures of design.”

Thus, if something is cluttered, the solution is not to blame the information and to reduce the resolution, but rather to fix the design. Thus good design can accommodate very high densities of material, as is the case for many websites.

When the information is thinned out (which nearly every commercial artist will seek to do), then the reader has to scroll and link more. Readers are best at scanning over a fixed high-resolution field and finding what they want. Scrolling is second best, and linking third. Good design can increase the content resolution of the page on the screen and at the same time reduce clutter.

The technical term for reduced resolution is “dumbing down.” The next step in dumbing down is to provide readers with an interface to a newspaper: “anchor a placement,” “short lists,” “multimedia to better highlight,” “iTunes-like buttons,” “to better showcase [oh my] all the content that we have in that area.” If your designers write and think like that, how can they design a decent site for news readers?

What has been added in the WP redesign is an interface to an interface. What has been reduced is direct and immediate access to the richness of your news reporting.

Imagine that the news area of the top of the frontpage of the newspaper were reduced by 30%. The home page is by far your most valuable news real-estate, probably even more valuable that the top half of the front page. And yet now the newly compromised home page has less of what you’re good at (the news) and more of what you’re not (interface design).

The redesign replaces news with design. The argument for doing so is bogus, because clutter and confusion can be reduced while at the same time the amount of available news increased.

The proper command to your web designers is:

“Make our webpage straightforward, and if possible elegant–and, no matter what, increase the amount of news available within the immediate eyespan of the viewer on the homepage. We want more of what we do well immediately visible. People come to our website for the news, not for the interface.”

With best regards,

Edward Tufte

Well said, Mr. Tufte.


a photo finds its way home

In an earlier post, I mentioned my experience taking pictures at Bay to Breakers. In total, I snapped around 220 pictures with my camera for the day, mainly of random people on the street. After getting back to DC, I decided to conduct a small uncontrolled and unscientific experiment. What are the odds of me finding someone in one of my photos? After all, everyone was kind enough to let me take a picture of them without saying much of anything (other than a thank you and a peace sign), so maybe I could return the favor and give them a full resolution photo of their costumed self on the route.

Where else does one start on such a venture other than craigslist? I posted a short message on the San Francisco board a week ago.

I was on the Bay to Breakers route with a SLR camera in hand and a bottle of champagne under my left arm. Thank you everyone for all the great pictures! If you remember my lens in your face, I’d be happy to share a copy of the original file with you. If you have a short description of your costume, I’ll be able to look for the photo pretty quickly, or at least get some candidate photos.

Keep in mind, craigslist does not allow posting links in the messages—so I wasn’t able to pass a link to my Bay to Breakers flickr set out and have people sift. Within the weekend though, I received two replies, all the replies I would receive from this message. One reply asked if I saw a group of people in costumes reenacting human conception. Another reply asked if I took a picture of a green snail with a wig and a handmade shell. No dice. I flipped through all my pictures and I found neither costume. So I sent some disappointing replies, but passed on the link to my flickr photo set anyway, just in case they wanted to double check on their own.

The next day, eureka! Patricia, the one in the green snail outfit that I didn’t spot, recognized her friends in one of the pictures—the runaway brides.

Brides

She passed my info along to Erin, one of the brides, who then requested the original resolution photo. I, of course, obliged and reunited the original photo with one of its subjects :)

If I remembered a little more from undergraduate probability class, maybe I could calculate the odds, but my mathematical intuition, which I rarely trust, tells me the odds are slim. I’m not sure how many people read the ad, but only two people responded. And within one degree (Patricia knowing Erin), we found someone in one of the 44 photos (I didn’t post all 220) I had in my flickr set.

Ken → (craigslist) → Patricia → Erin

If anything, craigslist is kind of a shortcut (science nerds might call it a wormhole) through the social network where supposedly everyone is connected to everyone else by six degrees or less. Either that or craigslist just enables people to form a quick “A knows B” relationship in the social network. Ok, enough geeking out.

I’m just glad even one of the photographs found its way home.


what is software engineering?

My informal response to a question from class: What is software engineering?

It seems like there are definitions by the dozen for software engineering. IEEE has one, along with every software engineering textbook author. I think we shouldn’t miss the principle or essence of what software engineering is though.

Software engineering as a field emerged (and continues to grow and develop) as a result of increasing software costs, software development disasters, unreliable or insecure software, and more so nowadays, critical system failures that carry huge financial costs and sometimes human costs. Software engineering is a reaction to these problems and the goal is to find ways to solve or at least reduce the negative impacts of these problems and produce positive results: on-time, on-budget, safe, reliable, etc.

Unlike classical engineering fields, like civil and mechanical engineering, which have been around for centuries, software engineering is really in its infancy. The term software engineering itself was coined in the late 1960s. Although the word engineering connotes that we might know a lot, I contend that we actually know a little. If we knew a lot, we probably wouldn’t be having software disasters (small and large scale) like we do now. If we knew a lot, we would have tried and true formulas, perhaps mathematically provable ones, to test concepts and dictate how we do our work. But we don’t have that—we do know we are grounded on a science, but we are still developing the actual engineering part. We are still learning and practicing how to build reliable software, we are still learning how to measure if we did something right or wrong, not just at the end of the project, but as the project is going along. We do not have predictive models like our classical colleagues that tell us whether we are right or wrong—software is abstract and getting it right is really challenging. Not to mention, “right” in the eyes of our stakeholders (management, customers, etc…) changes over time and somehow we have to react to that makes it even harder.

Some would argue that because we don’t have elegant (some might say funky) equations, laws, and models, software engineering is easy. The fact that anyone can sit down and write a fairly functional program in Excel further lends to that impression. However, I claim that because we don’t have predictive models, because we don’t have plug-and-chug equations, that makes our job all the harder! We have to be aware of everything that’s happening (hundreds, maybe thousands of loosely-connected variables) and understand it well enough to make the right decisions to make sure we get to the end result we want, given all the constraints that are put on us by customers, management, technical limitations, and staff.

Not only do we not know a lot compared to our classical counterparts, what we do know changes by the day. Yes, there are some principles that stand firm, but if you think about how much software engineering has changed in the last 30 years, we’re constantly updating our practice as we learn more. For example, structured analysis and design was the de facto standard for a long time, then object-oriented analysis and design came around and unseated it. It’s only a matter of time before another paradigm shift arises where the next way of thinking resolves the shortcomings of object-oriented thinking and presents a new set of issues to solve. Compare this with our classical counterparts—I don’t see the laws of physics or chemistry changing on them anytime soon :)

In addition to building software systems, software engineering is concerned with modifying software systems. Once civil engineers finish building a structure, cut the ribbon, they are finished. Once we build software, it’s only the beginning of a long lifecyle of modification and maintenance. In my experience, it’s easy to build something from scratch—you have a blank canvas to work with. The hard part comes when you have to modify something in place, change it to do something new, without breaking what already existed. And you already know how ugly the pre-existing code and documentation really is…

As uncertain as it sounds, it is pretty exciting though—and I’m glad that we’re able to be a part of (and hopefully contribute to) a field that is growing and changing so much within our careers.

Postscript: I very much respect my classical engineering counterparts. What they do is not easy either—thermodynamics still confuses the daylights out of me. What we do share though is engineering itself, whose fundamental purpose is to apply our knowledge of science and the humanities to improve the human condition. Idealistic, I know, but I’d like to think it’s true.


visual c++ 2005 and openGL

I was trying to set up Visual C++ 2005 for OpenGL programming and I found absolutely nothing on the Web for 2005, so I’m publishing this quick and dirty guide to explain how to set up Visual C++ 2005 for basic OpenGL and Open GL Utility Toolkit (GLUT) programming. GLUT allows for a platform independent means of creating windows and registering callback functions to handle events. This allows one to run OpenGL-based programs without having to integrate Win32, MFC, or Windows Forms API calls (useful if one wants to test a concept without having to write all the Windows calls).

Download and Install GLUT for Win32
Windows comes with an Microsoft implementation of OpenGL, but does not come with a GLUT implementation. Nate Robins ported Mark Kilgard’s original GLUT implementation to the Windows platform. Download the latest version of the binary, 3.7.6 at the time of this writing, from Nate Robins’s GLUT for Win32 page.

The GLUT package comes with glut.h, glut.lib, and glut32.dll. Unzip these files and copy them into their proper respective locations, listed below.

glut.h → C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\gl

glut32.lib → C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib

glut32.dll → C:\WINDOWS\system32

Setting Up a Project in Visual Studio for OpenGL and GLUT
1. Launch Microsoft Visual Studio, start a new project (File → New → Project).

2. For the project type, select Visual C++ → Win32 → Win32 Console Application. Select the directory to save the project, preferably somewhere on C: drive and give the project an appropriate name.

3. Include the necessary headers in the primary source file (for compilation):

#include "windows.h"
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>

4. Add the necessary libraries in the project settings Project → Project Name Properties, Configuration Properties → Linker → Input → Additional Dependencies (for linking):

opengl32.lib
glu32.lib
glut32.lib

5. If the main function signature is defined as the former, replace it with the latter:

int _tmain(int argc, _TCHAR* argv[])
int main(int argc, char* argv[])