An application programming interface, or API, is a specification for how other developers can use the software you have created. A good API is crucial to gaining market traction, but good API design is hard and remains poorly understood. This presentation will discuss high-level strategies for API design, and will also go into some depth on best practices for implementation. API evolution will be briefly touched on. The primary language covered will be C#, but many concepts will be generally applicable.
Eric is a detail-oriented software engineer who loves building systems that Just Work. He believes that software should be intuitive and easy to use. He currently runs Fulminatus Consulting, a small shop focused on the design and evolution of Application Programming Interfaces.
Prior to founding Fulminatus Consulting, Eric spent 15 years working for a large variety of firms, from startup companies to multinational corporations to universities. He has worked on internal- and external-facing applications and APIs and has experience in a wide range of sectors, including finance, healthcare, environmental, and networking.
Eric holds a degree in Mathematics/Computer Science from Carnegie Mellon University.