Keith Pleas is chatting about
the various persona names that Microsoft's developer division uses... the interesting
thing I find is that I constantly find myself fitting into the VB persona - the "opportunistic"
developer. A developer that wants to get the job done and go about his or her business.
When developing BlogX I employeed that technique. I didn't create a design (you can
tell by looking at the code), but it works. It gets the job done. If, in the future,
I decide to start creating a more durable version, then I have learned what features
the product needs, and how to architect it. Almost every developer I know uses techniques
like this. There was a thread a little while ago going around about "Lazy Programmers"...
There are other times, where I find myself fitting into the C# or C++ developer persona.
The key thing is that most developers span between the personas. Personas are just
one of the many tools that we use to identify with users. Just like every employee
at Microsoft is different, every developer that uses VB, C#, C++, Java, or any other
language is unique and different.
Personally, I think that Microsoft should publish their personas. We do tons of usability
studies on our new APIs (and old ones!) to try and make them more powerful, easier
to use, and understandable. I think Microsoft should publish our usability scores
(take for example the one that showed how messed up System.IO was <G>)... we
have success stories of great API design, and failures. I think it would help other
people produce better APIs if they saw which APIs that we wrote that worked and didn't.
BradA owns the group that takes the
results of these studies and incorporates them into the design
guidelines. If you are writing .NET components, you should really
read them.