Over the years my experience in software design have taught me valuable lessons. To emphasise the point I'll draw on other creative occupations.
Lesson #1 Graft
I may have mentioned before that I collect comic art and comic artists are very similar to LabVIEW programmers.
Bad picture of 1 of my favourite pages
The difference between a good artist and a poor artist is not just down to talent.
Check out this guide to life drawing - Bridgman Complete Guide to Life Drawing. You can see here that there is a considerable application of effort to the seemingly throwaway world of comic art. Comic artists become good through drawing a lot.
OK so that's hard graft covered, but that's not the full story.
Lesson #2 Discipline
The guide is also a demonstration of learning rules and applying them, doing this requires discipline.
The common push-back I get from programmers about using methodologies and rules to help in our designs is that we're removing creativity from the process. Well, guess what, I disagree.
I think creativity needs discipline or conversely lack of discipline hampers creativity.
Creativity should be applied to solving customer requirements, it shouldn't be applied to find new and interesting ways to solve already solved problems.
Using artists as our study, we can see that they practice drawing hands for hours and hours, bodies and faces adhere to strict ratios and shapes.
they use the rules of perspective to frame the picture. They use photo referencing, colour referencing, quick thumbnail sketches even copying other artists that they like. This is counter-intuitive to the outsiders view of a purely creative occupation.
This is very analogous to applying software design rules like coupling, cohesion, encapsulation and information hiding. To creating diagrams for our state machines, databases or object hierarchies. Using rough prototypes as the quick sketches that describe the design with little investment of ego as well as $$$$.
So why in a so-called engineering field like software design do we not work with more discipline? I wonder if it's just because we can and we can because our customers seem to have a low expectation of us.....