Writing Libraries is Terrible

By David R MacIver

Libraries are great, right? You need to solve a problem, so you just find the library that solves it for you, download it, and use it. Problem solved.

This is a talk about everything that happened prior to that point.

Libraries look like they’re made out of code, but what they’re mostly made out of is the distilled suffering of their authors. Writing libraries is fun, right up until the point people start using them, at which point you suddenly discover the vast number of requirements that making a useful library puts on you.

I’ll go over some of these requirements that I had to find out the hard way. At the end I’ll briefly talk about a beautiful fantasy land I sometimes like to retreat to where things aren’t quite so terrible, but unfortunately we’re not going to get to live there for a while.

This talk will be a bit Python centric because that’s where most of my experience lies, but much of my pain will be universally shared by library authors of all languages.