If this is presented at programmers, why not just say "Here is a cool practical case of a knapsack/bin packing problem."? The article seems to be intentionally avoiding this.
That's what I thought too, then I remembered when I first discovered linear optimization, when solving a practical problem like this (I used Python PuLP, and coin-or as the backend). Not every programmer went to college for computer science. Anyways, I really liked the animations.
If anyone is facing a problem like this today, check out or-tools [1]. Bin packing is one of their exemplar problems.
I started with or-tools, early on I tried changing the backend and found that there were details in the problem definition that needed to be changed when switching backends. Not knowing a ton about the problem space, I thought that this inflexibility could get me into trouble later, so on the advice of a colleague I switched to PuLP, which does not require any code changes to try different solver backends, e.g. glpk or coin-or (or gurobi, a commercial solver which is supposedly very fast, although my problem did not need it)
Fair enough. I hadn't personally encountered knapsack/bin packing problems before, so it wasn't immediately obvious this fell into such a category. Just thought I'd blog my practical encounter with the problem as I was exploring it.
Think of it as a "you could have invented binpacking algorithm X too" post.