• 2 Posts
  • 16 Comments
Joined 5 years ago
cake
Cake day: May 31st, 2020

help-circle

  • I mean, yeah, I wrote it kind of humorously up there, but I do actually think state diagrams are a good idea and modelling the known error paths is part of real software engineering.

    However, I’ve never been in a project where anyone knew nearly enough about what we’re supposed to build, to be able to draw a state diagram before we got started. We would rather do a refactoring halfway through and then we would design a state machine to fit the requirements…


  • One time, we were drawing a state diagram of how the core loop in our application should behave. So, you know, first you have the preparation state, then when that succeeds, you go to the getting-things-ready state, then into the actual doing-things state, then the result-reporting state and so on. So, there was exactly one happy path.

    Then we figured, we should also diagram all the error scenarios. If an error occurs in the preparation state, we should transition to the result-reporting state. But if an error occurs in the getting-things-ready state, we’ll need to go to an intermediate cleanup state before we go to the result-reporting state, and so on.
    As we added more and more error paths, the arrows had to curve more and more, until the whole diagram eventually looked like an onion. That’s when I knew, we were doing real software engineering. 🙃







  • It won’t rise much beyond that, since you only get one update per package. Whether it’s upgrading Firefox from version 120 to 121 or to version 130, it doesn’t change much in terms of download size, nor the number of updates.

    At least, I assume, Arch doesn’t do differential updates. On some of the slower-moving distributions, they only make you download the actual changes to the files within the packages. In that case, jumping to 121 vs. 130 would make more of a difference.

    If you do want lots of package updates, you need lots of packages. The texlive-full package is always a fun one in that regard…