-
Notifications
You must be signed in to change notification settings - Fork 2
Hints
These are things that can help you when doing design studies:
- Start with a clear goal: "explore X" or "solve problem X with these design qualities"
- Choose an interesting problem or an interesting goal
- Use Test Driven Development to drive the design
- First make things work in the easiest way possible, then refactor towards the design qualities you seek
- Use very precise names
- Delay performance improvements, unless you have a clear idea how to do it
- Ask interesting questions and explore
- Have fun!
A typical complaint about any design exercise is that they are too simple. While a design study is arbitrarily complex (you can build a complete twitter clone if you want to), it's unlikely you will have the time to properly explore a lot of complex problems.
It turns out however that most complex problems can simpler composed solutions. These simpler problems tend to repeat, and to compose in different ways. Knowing how to solve the simpler problems and how to split the complex into simple are two important software design skills.
Also, solving the simpler problems will lead to improved design skills, which you can then use for new problems. It's anyway better than not making the effort at all.