DEV Community

Discussion on: How are poor APIs designed and what processes birth them

Collapse
 
ahferroin7 profile image
Austin S. Hemmelgarn

Most of the time when an interface (API, ABI, or even other stuff like UIs) is poorly designed, it comes down to one or more of the following issues:

  1. The design was deferred to a late stage in development and is thus limited by the implementation details of whatever it's an interface for.
  2. The design was never properly formalized, and thus just kind of happened.
  3. There was a major time constraint on the design and implementation of the interface.
  4. The designer is new to designing that type of interface.
  5. The designer did not think of the interface from the perspective of a user.

Note that all of these can be avoided pretty easily, and also that none of them guarantees a bad API, they just make it more likely.