Latest
Our
Wiki gives
you a place to share ideas and advice with other folks. We've started it off
with some instructions about how to get Java applications to use Napkin for
their Look and Feel.
Overview
The Napkin Look & Feel is a pluggable
Java look and feel that looks like it was scrawled on a napkin. You can use it
to make provisional work actually look provisional, or just for fun.
It is released under
a BSD-style license
The idea is to try to develop a look and feel that can be used in Java
applications that looks informal and provisional, yet be fully functional for
development. Often when people see a GUI mock-up, or a complete GUI without full
functionality, they assume that the code behind it is working. While this can be
used to sleazy advantage, it can also convince people who ought to know better
(like your managers) that you are already done when you have just barely begun,
or when only parts are complete. No matter how much you speak to their rational
side, the emotional response still says "Done!". Which after a while leads to a
later question: "That was done months ago! What are they doing? Playing
Quake?"
A good article on this is
Joel on
Software's “
The
Iceberg Secret, Revealed”.
So the idea is to create a complete look and feel that can be used while the
thing is not done which will convey an emotional message to match the rational
one. As pieces of the work are done, the GUI for those pieces can be switched to
use the "formal" (final) look and feel, allowing someone looking at demos over
time to see the progress of the entire system reflected in the expression of the
GUI.
Over time, several folks have just liked the thing and wanted to use it for
non-provisional GUI's. Sometimes this is because the application itself seems to
match the theme, such as a brainstorming tool. And sometimes it's just that it
looks fun.
This is all done using the Java Swing pluggable Look & Feel framework.
Snapshots
To give you a feel for what this
looks like, here are a few screen snapshots (as thumbnails; click for full-sized
images):
Development
Ken Arnold
|
We welcome anyone to contribute —
code, screenshots,
thoughts, dreams,
understanding, coffee, chocolate...
|
Alex Lam S.L.
|
Sightings
- Don't make the Demo look Done,
from Kathy Sierra's blog Creating Passionate Users.
- "Finally, it's great to know that there are tools to help make
the look match the state, with my favorite being the Napkin
Look and Feel, a GUI "skin" for Java that makes the interface
look -- quite literally -- like it was scrawled on a napkin."
- Matt Stephens'
“Agile
Development with ICONIX Process”
- "... if the working prototype was presented looking like a user interface mockup that
had been scrawled on theback of a napkin, then the customer would be more likely
to see it for what it actually is: a slightly working but mostly non-functional
prototype... Seems like a great idea to us!" (You can
read the pages here)
- NetBeans
Look & Feel Competition
- Claudio Miranda submitted an entry
with NapkinLAF on GTK.
-
Kirill Grouchnikov's blog
- Compares various LAFs for their Right-to-Left menu alignment issues.
Thanks to Kirill for reporting the issues ;-)
-
BlogEd
- "I have added the napkin L&F to BlogEd and made it the default when
run from cvs using 'ant run'. We can easily change it back if it
gets in the way. The only bug I have noticed currently is that the
pulling on the scrollbar seems to move the whole window. Perhaps Ken
Arnold will know what the problem is there."
- Daniel Steinberg's
blog at java.net, April 5, 2004
- A very nice & quick writeup.
- Front page note on
javadesktop.org , April 1 2004
- Just a brief note pointing to the home page, but we got some good
mail from it.
Acknowledgments
Peter Goodspeed and
Justin Crafford created the sketching
subsystem, as a senior project for their degrees at Worcester Polytechnic
Institute. They did a great job, and solved an important problem. And thanks to
Scott Anderson, a fellow student and friend of mine who suggested they
get in touch with me to look for a thesis project.
Scott Violet of Sun has helped me pick apart some of the more
abstruse and arcane bits of the plaf framework, which is full of 'em. Thanks a
bunch, Scott, and thanks to
Hans Muller, also of Sun, for plugging me
together with him.
Brandon Franklin has contributed many spare cycles (of which he has
none) to planning the upgrade to 1.5, making the whole process
much
easier.
The font "Felt Tip Roman" was created by
Mark Simonson, who spent a
lot of time with me on how to license this. He has kindly decided that this
particular use does not require individual licensing for each user of the LAF,
but can be done by special arrangement. The legalities are below, but beyond
those legalities, we'd like to ask you all to be cool — if you like the
font and want to use it, buy it properly. Making fonts is not easy, and font
folks get their work ripped off far too often. If you do want to use it, buy it
from his site
http://www.ms-studio.com/,
where he gets more from it.
The font "Ænigma Scrawl" was created by
Brian Kent, and has
worked very well for a handwritten font that scales reasonably to GUI-control
sizes (most handwritten-style fonts are display fonts that only work in large
sizes). To make things work better, Brian has adapted the font to adjust the
spacing around some punctuation as well as some other tweaks. So the version
released here is a custom one direct from the artist (which we believe he
expects to roll back into the font at future date). We would like to thank Brian
a lot for his quick and nimble cooperation, which made this work a lot better
and easier on me.
Miro Jurišić has been very helpful in thinking through with
me (sometimes
for me) some of the hairy graphics problems. This
definitely pushes into some poorly documented areas of the 2D API, and it has
helped a lot to have someone to talk it through with. Thanks, Miro!
Brian Hawthorne created a quick and excellent selection of blueprint
backgrounds for me to choose from. Thanks!
Several people have helped with testing, reporting bugs, and suggesting
things. The most persistent have been:
Deryl Steinert,
Bob
Herrmann,
David Matuszek,
Graham Perks,
Henry Story,
and
Tom Eugelink. Thanks to all, and we'll be happy to have
you
be added to this list.