The programmers don’t design skins; they just make skins possible
Not all skill sets are interchangeable. That’s why we have concepts like division of labor and specialization. But it appears that not everybody understands this.
I was reminded of this topic when I read the reactions to the Microsoft Exchange Team announcing that they had added Xbox and Zune themes to OWA. Many people were shocked, such as Loren, who was furious that “development time” was wasted on something frivolous like new themes when there are so many bugs that need to be fixed. Loren appears to believe that the people who do graphic design and the people who are up to their elbows in the code base fixing bugs and adding features are one and the same, that any time spent building a new visual style is time not spent fixing bugs.
Generally speaking, programmers don’t do the visual design. I mean, these are people who are lucky if they are wearing matching socks when they come to work, if they even remember to wear socks at all. And you want them to design a color scheme? Visual design is done by people trained in the visual arts, people who know about color wheels and lighting effects, people who can argue for days about whether the spacing between two visual elements should be one point or two, about whether a serif or sans-serif font should be used for a particular screen element. What the programmers do is create the infrastructure for skins and themes, but the actual building of the skin or theme is left to the designers. Once the infrastructure is built, the programmers’ work is pretty much done, and they can go back to fixing bugs and adding other features, stuff that keeps Loren happy. Of course, the infrastructure for themes and skins needs to be maintained, but the amount of work spent on maintenance is largely independent of how many themes the designers have come up with.
(Similarly, the office disco party happened to have been the handiwork of the infrared communication team, not the Windows 95 setup team, so any time they wasted on the party had no effect on Windows 95 setup.)
Mind you, the new skins do create additional work for the testers, who need to write tests to verify that that the new skins don’t have bugs like “In the Zune skin, you can’t read the subject lines.” But presumably they already have a template for testing skins—after all, they have to test all the other skins—so plugging the new skin’s parameters into the template is a comparatively low incremental cost.
So go ahead and enjoy those new themes, comforted in knowing that the effort spent in making those new themes was not at the cost of bug fixing.
Next time, a story about what happens when a tester needs to test the skinning infrastructure when there are no skins.