It takes me a long time to write blogposts and certain ones in the past have (at least felt) like they have taken weeks...
Recently I totted it up and I reckon I take about 1.5 hours to produce 1 minute of reading time. So longer posts like my past one about Bank Python which are 30 minute reads...yes they felt hard because they were a lot of work!
Spent a lot of this week fixing several bugs in csvbase that people found.
I've always done test-first development. csvbase apparently has 89% test coverage (I just checked) and most of that 11% is non-production stuff or experiments. The test base has caught a huge number of bugs and regressions but still - a lot of mistakes get through.
I've never understood how anyone manages to write real production code without tests. Am I doing something wrong?
@lewiscowles1986 I have never tried mutation testing, but I am interesting in giving it a go.
Property based testing I do use in certain places but more often I am doing example-based testing with parameterised examples. My reservation is that every commercial project I've seen it used it it's been too slow
it's possible to add an assertion to cover this, but i am happy that it's typechecked + runs through
i don't track bugs that i fix on the spot. perhaps i could, but i think that might be too heavyweight for the project's maturity level. csvbase is really only a step or two on from MVP :)
@lewiscowles1986@jamescooke one example of a bug that has come up several times, though, is failing to seek a file back. here's my current solution for that
imo file handling is a lot like manual memory management (because that's what it is!)
@lewiscowles1986@jamescooke usually the whole file is being read but if you turn 50mb of csv into lists+dicts or whatever you will usually exceed memory and/or timeout
and i want to raise the limit on uploaded csv file sizes to at least 100mb
@adamchainz I'd have liked to have read this and understood the issue but the author's desire to be creatively insulting completely got in the way. Never liked this kind of tech writing and don't understand what the incentives are that make people publish stuff like this