This is a discussion I've had many times and I think I never make my point clear enough, so I'll write it down and update as necessary.
Here's the deal. If you are a developer (either Flash or backend, but specially Flash) and you are getting the design from someone else, chances are you'd get a PSD, FLA, Fireworks or an Illustrator file, depending on your designer's tool of choice. Now you have to make your magic happen and bring the project to life. You are
supposed to slice it up and I think that's a mistake.
Who's the Photoshop
master? Who spends ALL DAY with it? Who's going to be
faster and
better at slicing up an interface? The developer or the designer?
Sure, I know enough Photoshop to do it myself, but I think that would not make the most out of my time. My time is better spent on building the actual interface, i.e,
programming. If I have to slice up an interface we win a bad
slicer and we lose a (hopefully good) programmer.
The key to a good designer-programmer relationship is communication because creating useful assets is not difficult. Here are some of my guidelines:
- Think about liquid layout. Is it needed? Most of the times it is, so please provide a sample of the interface at both minimum and maximum size so I can see what elements are resized and how.
- Slice the elements that need resizing either for 9-slice or 3-slice. If not working with a FLA file, create an actual file for each slice.
- Create elements with exact size.
- Use meaningful and consistent names for elements.
- Provide some guidelines for real life data. For example, what happens if the text of a button doesn't fit? Do I crop and add "...", do I make it multiline or do I make it a marquee?
- Logos are very sensitive design elements, please provide them with what you (the designer) think it's a good balance between quality and weight.
- Don't forget the font files, you always do.
- If working with an FLA file:
- Always position the elements with 0,0 on the top-left corner (unless they have to be scaled from the center)
- Avoid using stroke on elements that have to be resized.
- Position elements in exact pixels
Now, is this asking for too much? Do you have any others? Designers, do you want to rant about developers? #1 rule for programmers is:
Follow the design to the pixel whenever possibleWhich is something I always try and feel guilty about when I don't :|