As promised today we started a regular series on designing great frameworks… This material is taken directly from some recent internal training I ran. I hope you will take a look and let me know what you think and tell other folks that might be interested in “taking” this course with us.
In this talk I ask about who the audience is in terms of job function (dev, test, PM). If you plan to “take” this course of the next few weeks I’d love hear more about who you are and what you expect to get out this class.
I also reference the Design Guideline doc and the slides for the class; I will work on getting the slides posted if folks think that would be valuable.
I also allude to some usability videos; unfortunately I was not able to get those videos for showing outside of MS because of privacy concerns for the participants. However we will have some general usability information and you can always ask Steven if you want to hear the dirt on the results of usability studies on APIs I designed 😉
Keep in mind as you listen to these talks that they were originally intended for an internal Microsoft audience, so in a way you are reading some else mail. So at times you will have to put yourself in the position of a consumer of the .NET Framework\WinFX and be encouraged by the design goals and motivations we have in building the platform you work on all day long. And at other times you will get some very direct and applicable feedback that will affect the APIs you are building for your customers on top of the platform. It is my hope that the distinction is clear, but I’ll be around during the chat to address any questions or comments.
Set up for the course, generally introducing the practice of API design. Topics covered include terminology, first principles, and why API design is a crucial thing to get right (the first time!).
I will be in a chat room on 1/19 3pm PST to answer questions and hear your comments on this topic. The Q&A part of these classes is always my favorite part; I hope you will take time to come.
Sign up for coming chats…
Setting the Stage [Sign up for the post session chat]
Naming Conventions [Sign up for the post session chat]
Rich Type System [Sign up for the post session chat]
Member Types [Sign up for the post session chat]