Ziff-Davis Enterprise 
DevSource: Microsoft Developer Resource
Add OnsArchitectureLanguagesTechniquesUsing VSForums
 
Home arrow Techniques arrow Page 2 - The Sharp Design Philosophy Behind Paint.NET
The Sharp Design Philosophy Behind Paint.NET
By DevSource

Rate This Article:
Add This Article To:
The Sharp Design Philosophy Behind Paint.NET - ' UI Choices '
( Page 2 of 2 )

Simple User Interface

Paint.NET's user interface was designed to be absolutely simple. For example, the program does not have "Settings" or "Preferences" dialog boxes. Brewster decided against adding such features because he firmly felt that the target audience for Paint.NET — amateur computer users — should not have to worry about such things.

ADVERTISEMENT

This keep-it-simple design philosophy was a challenge to adhere to. Brewster was originally reluctant even to allow some effect configuration dialog boxes (such as the motion blur effect filter) to display angles with digits past the decimal place.

"There are always people asking us to add features that would really complicate things. This includes almost everybody that's worked on the project, too," Brewster says. "Every time we talk about a new feature, we have to ask, 'Do we really need that? Does it have to be configurable, or does it even need to exist in the first place?'"

As Version 1.0 was in the midst of development, the user interface was tested by random students at the Washington State University campus who were asked to play around with Paint.NET running on a Tablet PC. The developers took notes on how their fellow students used the program, what troubles they encountered, and the questions they had.

"[When] we made the color chooser more accessible and simpler, you would not believe people's reaction to it! This one girl noticed it right away and went straight for it, like she'd been starved for color her whole life," Brewster recalls. "When we added transparency [effects] to the toolforms, I was honestly surprised at how cool people thought it was, even though it was really added just so they wouldn't get in the way of the canvas so much."

Photo Editing Without The Bloat

Though the developers remain cautious when it comes to expanding the feature-set of Paint.NET, they did specifically design its framework to allow for others to easily create new effect filters. The code automatically handles previews, progressive rendering, undo/redo, multi-threaded execution, and clipping to irregular selection regions. So, essentially, all a filter developer has to concentrate on is the math that's needed to write an effect.

Aside from optimizing the code, internationalizing Paint.NET is one of the biggest priorities for future versions. Incorporating this feature will be difficult, as the developers did not design the code with languages other than English in mind. A member of the Paint.NET forum did manage to translate the source code to German. But, based on his work, the Paint.NET developers conclude that doing this for every language would be inefficient, since each language version would need its own executable.

"We never really thought someone in Germany, or Italy, or Poland — among many places! — would download Paint.NET, let alone use it on a regular basis. A lot of people really want it in their preferred language," Taylor says.

There are some other, little things that the Paint.NET team would like to add, but the eventual goal isn't to make their paint program rival the likes of PhotoShop. It never was. Says Taylor: "The GIMP [and] Photoshop do tons of really cool stuff, but they are not exactly user-friendly. Both editors are made for experts. Paint.NET is something my mom can use. We really wanted to stay away from feature bloat."

"The fact is, most people do not need the complexity of Photoshop or GIMP," Brewster concurs. "They want to open pictures and resize or sharpen them, or remove red eye. We let them do that for free. I would like to make a splash at the amateur level. I'd love to see people use Paint.NET instead of pirating PhotoShop."

Howard Wen has written for the O'Reilly Network, InternetWeek, Salon.com, Playboy.com, and Wired. Visit howardwen.com to see more of his published work.

Learn more programming techniques in DevSource's Techniques Section.



 
 
>>> More Techniques Articles          >>> More By DevSource
 



DevSource video
Devsource Video Series
Manipulating Society through Technology
Jeremy Bailenson, Director of the Virtual Human Interaction Lab at Stanford University, talks about virtual reality, avatars, Moore's law, how real world behaviors influence online reality, and societal manipulation through technology!
>> Play video
>> Read article
>> See all videos
DevLife Blog

Julia explores the Robotics Studio! (It's for more than you think.)

MSDev Blog

Messages for Bill Gates!

Make it Work
.NET makes runtime type checking a breeze. See what Peter has to say about it in this week's tips!
News
Microsoft Counts on App Support for Vista
Microsoft has taken pains to demonstrate that Windows Vista will have ample application support.
DevSource RSS FEEDS
XML Want an easy way to keep up with breaking tech news? And the Get DevSource headlines delivered to your desktop with RSS.