Adapting to Different Work Styles
Our study not only helped us add useful new classes to a single (albeit important) API, but also led to a new respect and zeal for studies throughout Microsoft. The API review process that every API had to go through in order to ship with the .NET framework was updated to include an API usability process.
Although we found it very encouraging to see the increased level of interest in our way of generating usability information, it wasn’t clear at the time if API usability meant something different to different developers or if it was a universally agreed upon quantity. The developers who had participated in our file I/O studies all shared the same profile: experienced Visual Basic developers who used Visual Basic at work for more than 20 hours per week. But would developers with a different profile have responded the same way?
We had a hunch that they wouldn’t. The developers who had participated in the studies were representative of one of the three developer personas that we used at the time to design the Visual Studio IDE:
- Opportunistic developers
Characterized by a habit for rapid experimentation, a task-focused approach, and extensive use of high-level, concrete components
- Pragmatic developers
Characterized by a code-focused approach and use of tools that help them focus on the robustness and correctness of the code that they write (refactoring tools, unit testing tools, etc.)
- Systematic developers
Characterized by a defensive approach to development ...