Nice work Kai. I spend most of my day writing software, so let me see if I can break something.
Here's a data point for you from a brew last weekend.
Just for fun, I've entered every possible number into these sheets with their predictions:
EZ (v3.1): 5.51
Kai (sheet): 5.44
Kai (web as SRM): 5.46 (no acid malt)
Kai (web as SRM): 5.42 (acid malt as 28g 2.5% lactic acid in Acid Additions section)
Kai (web as SRM): 5.43 (acid malt as 1 oz acid malt in Acid Additions section)
Kai (web as Grist): 5.62 (no acid malt)
Kai (web as Grist): 5.57 (acid malt as 28g 2.5% lactic acid in Acid Additions section)
Kai (web as Grist): 5.56 (acid malt as 1 oz acid malt in Acid Additions section)
Kai (web as Grist): 5.56 (acid malt as 1 oz in malt bill)
Bru'n (v1.13): 5.37
Actual @20m: 5.44
Actual @55m: 5.47
If you'd like, I can PM you with the details.
One source of potential user-error happens when grist is defined by malt bill. The "Acidulated Malt" weight box up in the "Acid Additions" section does not get dimmed/disabled, and may potentially get doubled-up if it was in there before and the user switches to malt-bill. I did that on my first go.
"Would be cool..." (sorry, I get this all time)
1. Floating/docked "Mash pH:" so you can see it no matter where you are scrolled in the page. I like to see the effect of changes without scrolling.
2. In "Salt Additions", show the approx. ppm of your addition so you can see without scrolling to "Mash Water Report". i.e. ~0.2 tsp, 13 Ca, 31 SO4
3. In "Sparge/Kettle Salt Additions", a check-box (or maybe a button) for "Match Mash Additions in ppm". Since I measure these out separately but target the same ppm (usually). This makes me tweak the kettle addition to get my same ppm Ca, for example.
Everyone's workflow is a little different so you're not going to please everyone. But overall I like it's simplicity. I've learned above ALL: if the user can find the one-in-a-million thing to screw something up, that makes NO SENSE..... they will do it.
Oh, and it told me "SO4/Cl ratio: 0.4 Too malty".... but I dislike sulfate and this makes excellent beer.
OK, just teasing you now.