Next Steps for Simulation
I’ve filed a few issues in the GitHub repository for my discrete event simulation of a small software development team in order to map out future work. The goal is to move away from what Cat Hicks calls the “brains in jars” conception of programmers by including things like this:
- Rushing work should increase the chance that re-work will be needed.
- If programmers don’t ever get a break, they burn out, which increases both their bug rate and the time needed to do the next task.
- Too many meetings slows things down, but too few meetings increases the chance of re-work being needed because of faulty or absent communication.
In order to implement these,
though,
I’ll need a way to simulate activities that multiple people are working on at the same time.
This would be easy to do if all but the last person to join the activity
sat idle waiting for it to start,
but that’s not realistic.
I could instead model it as a multi-person interrupt,
but interrupts are hard.
If you have enough experience with SimPy to offer examples,
I’d be grateful.
And if you’re a professor looking for capstone projects for students,
please give me a shout:
I think that a discrete event simulation framework based on async/await instead of yield
would be just about the right size.