(the algorithm is nothing original, it was just faster for me to rework the details on paper than it would have been to check reference material)
I think I want to rewrite one of my drawing routines. The way I did it first has the advantage of being fast and using very little memory, but has the down side of relying on implementation defined behavior which means it looks fine on my laptop and kind of trash on the machine at my roaster. Sketched out a replacement algorithm that doesn't rely on implementation defined behavior, is likely to be a little more flexible on most systems, but does require more memory. Still plenty fast.
Did some data integrity related work today, disabling an operation in conditions where it can't do something meaningful where previously the program just crashed. There's one chunk of data that I'm not sure how I want to handle it yet. I need either another integrity check or preferably just rework some things such that all possible states become valid. Ideally I could extend the all states are valid approach to all the data, but I can't do that right now for back compat reasons.
Use case #2: You're doing an experiment where you want to vary a part of the roast in the middle, while keeping the start and end the same. Having a later translation point makes it easier to match the end without having to design the whole modified plan up front. (which you should, but we all know coffee roasters aren't great at actually doing things like that in the real world for the most part)
Use case #1: You're far enough off the plan at the start of the roast, think you're running parallel, but want an early translation to make sure you're on the right track before the auto-translation at the start of taste-able chemistry kicks in, making it easier to match the significant parts of the plan.
Author of Typica software for coffee roasters.