Sanal.org
till 01th May 2006
Categories
.NET (40)
Art (1)
Blogs (1)
Computers (6)
Information (13)
Internet (11)
Movies (5)
Music (19)
MY SQL (5)
People (16)
Russian (20)
Security (15)
SEO (3)
SQL SERVER (8)
Technology (6)
Turkey (2)
Video (7)
More
TOP 50
Turkish News


Archive
April (2008)
March (2008)
February (2008)
January (2008)
December (2007)
Novamber (2007)
October (2007)
September (2007)
August (2007)
July (2007)
June (2007)
May (2007)
April (2007)
March (2007)
February (2007)
January (2007)
December (2006)
Novamber (2006)
October (2006)
September (2006)
August (2006)
July (2006)
June (2006)
May (2006)
April (2006)
March (2006)
February (2006)
January (2006)
December (2005)
October (2005)
April (2005)
December (1969)

85

ROR

Bringing Design to Software: A Must-Read for Computer Professionals


By way of Dreaming in Code (hat tip to Joe), I stumbled upon the Software Design Manifesto by Mitch Kapor, the legendary founder of Lotus and the designer of all-time famous Lotus 1-2-3. This “manifesto” was first delivered in 1990, but it is as valid today as ever.

Since I’m drifting away from coding rut and studying usability and design more and more, the following quote stood out right away:

”[…] No one is speaking for the poor user.

“There is a conspiracy of silence on this issue. It’s not splashed all over the front pages of the industry trade press, but we all know it’s true. Users are largely silent about this. There is no uproar, no outrage. Scratch the surface and you’ll find that people are embarrassed to say they find these devices hard to use. They think the fault is their own. So users learn a bare minimum to get by. They underuse the products we work so hard to make and so don’t help themselves or us as much as we would like. They’re afraid to try anything else. In sum, everyone I know (including me) feels the urge to throw that infuriating machine through the window at least once a week. (And now, thanks to recent advances in miniaturization, this is now possible.)

“The lack of usability of software and the poor design of programs are the secret shame of the industry. Given a choice, no one would want it to be this way. What is to be done? Computing professionals themselves should take responsibility for creating a positive user experience. Perhaps the most important conceptual move to be taken is to recognize the critical role of design, as a counterpart to programming, in the creation of computer artifacts. And the most important social evolution within the computing professions would be to create a role for the software designer as a champion of the user experience.”

And how can you forget the epic stand-off between designers and developers?

“By training and inclination, people who develop programs haven’t been oriented to design issues. This is not to fault the vital work of programmers. It is simply to say that the perspective and skills that are critical to good design are typically absent from the development process, or, if present, exist only in an underground fashion. We need to take a fresh look at the entire process of creating software—what I call the software design viewpoint. We need to rethink the fundamentals of how software is made.”

“Design” is not a scary notion

I think the word “design” freaks out a lot of people. I’ve met quite a few people how’d say, “Oh, I’m a developer. I don’t understand anything about design. My stuff is ugly, but it works. Let someone else deal with it.” More often than not, this someone else is never hired, so the ugly design stays. And the reason this person is never hired is because engineers are so entrenched in their ways of building software that they seldom understand the need for “artsy-fartsy stuff.” Leaving things in an ugly state is a waste of time, money and effort (see Attractive things work better).

I think “design” often comes across as “graphics design,” and yes, few of us can perform PhotoShop acrobatics. However, design is a multifaceted discipline, and there’s no need to be intimidated by it.

“What is design? What makes something a design problem? It’s where you stand with a foot in two worlds—the world of technology and the world of people and human purposes—and you try to bring the two together. […]

“Prospective software designers must […] master the existing research in the field of human–computer interaction and social science research on the use of the computer in the workplace and in organizations.”

This is exactly what I came to realize not long ago. I’ve been a die-hard .NET developer for about 6 years now, but knowing the ins and outs of ASP.NET does not teach proper design all by itself. In fact, if all you do day in and day out is sit and write Web Forms, you only get better at typing! Typing is not software design. It’s just that—typing. When I see someone incessantly typing away at his/her keyboard all day, I cringe.

I am now convinced that a software professional must have a better grasp of usability, measure of choice and control, color theory, grid design, etc. It pays to listen to usability experts; study eye tracking research; read human–computer interaction studies—you get the idea.

Where’s the training?

It pains me to see that training companies go mostly for the quick kill: “shrink-wrapped” courses of tips, tricks and how-tos. You can’t teach design that way. This is perhaps why we have so many web developers thinking the Visual Studio design view is where design happens via drag and drop.

Just for laughs, search for “.NET training” in Live/Google and see what I mean. As a Chinese proverb goes, “Give a man a fish and you feed him for a day. Teach a man to fish and you feed him for a lifetime.” Selling “tips and tricks” is just selling the proverbial fish.

Conclusion

I encourage you to read Mitch Kapor’s manifesto in its entirety. It amazes me that our industry came full circle since 1990.




0.03125
Bilgi Portalı | Forum | Haberler | Havacılık | Daily News | Noticias