Pinned post

I'm part owner and roaster at a little coffee company in Wisconsin. Author of Typica, a popular free program used to capture and work with coffee roasting production records that's used at roasting companies all over the world. Volunteer on the Roasters Guild education committee. Available for paid coffee consulting, training, open source software development. Living with a cat who broke into my house and decided to stay. Likes: cute, travel, food. Dislikes: blinking lights.

Someone today asked me how long it took to write some software that I'd written and it's kind of a hard question to answer. I slammed out something useful within a day, but I'm still working on it a couple decades later, but that time period has some pretty long stretches where I wasn't regularly working on it and it's not like I tracked hours on any of this.

Roasted the last of my Ethiopian coffee today. The next one will be different in part because Ethiopia produces a lot of coffees that are very different from each other that I enjoy so I change it up from year to year since I don't have the market to buy everything I like at the same time. The other reason it'll be different is because my supplier on that one has decided to become too difficult for me to buy from so I'm not going to try until/unless they get their act together.

I guess it's mini task day. I'm getting close to where it'll be worth pushing a new version to the production roaster.

Show thread

Today's work day is expected to be highly fragmented (lots of covering gaps and coordinating with what others are doing), but I was able to sit down for half an hour to slam out and test a small improvement to the roasting software.

Trying to write up an argument about my present state of software licensing apostasy, I just had the phrase "Corporations are people in the same way a hundred-car pileup on the highway is a bicycle" appear in my head unbidden.

Multi-tasked continuing on with the chunk of code I've been working on lately in the parts of chai concentrate production that just involve waiting. I might want to adjust one aspect of the design and there's a bit of polish to add along with some debug output to remove now that the relevant information is shown on screen, but it's basically working now. Maybe I'll come back to this after dinner, but I need to move on to roasting coffee now.

One of my employees got themselves a new espresso machine (some DeLonghi model that was on sale at a good price) for home and wanted me to do the initial dial in. She totally could have taken care of that on her own and will have no trouble doing adjustments as needed going forward. I'm just faster at bringing new machines up and today's staffing level is good enough that it's no trouble for me to help with that.

Evening coding session fixed 2 bugs and 1 performance issue.

Did family tech support today. It involved a tool, but I knew both which one would be needed and where mine was.

Today was decently productive. Other people had already taken care of most of what I thought was on today's to do list so I finished filling in the details of some code that I'd previously only stubbed out the outline and will be able to move on to the next thing tomorrow.

Anyway, sorry to any customers who have been trying to call while we've been trying to convince the phone company that this was an issue that they needed to fix. I believe everything should be back to working properly again.

Show thread

Finally got an in person phone technician out who could call his support number and get the phone company to fix things on their end where I told them the problem was 3 over the phone support techs prior (I mean, I get why they can't just believe everybody who thinks they know what they're talking about). Also, there's now one fewer piece of telecom gear in the chain so that's a win. Don't know why they set it up the way they did last time they changed the hardware.

Most of today's work was driving around and running errands. Not how I generally like to spend my days but not a bad day for it at least.

Emailed the food bank today to let them know they can pick up the stuff from my shop today. Our annual New Year's weekend fundraiser got the food donation box completely full, we wrote a $700 check, and there's whatever customers put in the cash donation box (don't know how much that is, but it's not nothing).

Today's web site updates include lowering the price of our Guatemalan coffee (supplier error in our favor and me passing the savings along) and changing pretty much everything on the tea list (3 package sizes got bigger, 1 package size got smaller, most of them got more expensive, but quite a few went down in price).

This is one of those feature areas that's really been kind of stagnant even among competing programs over the past couple decades. I think other devs just haven't been putting any thought into how something that on the surface seems obvious and boring could be a lot better.

Show thread

Work continues on porting over a feature from one of my dead end prototypes to the current code base. The 1.x code presented less information in more space and I've really enjoyed using the reorganization of a bunch of related features in that prototype so it's something that I definitely want to keep going forward.

I kind of wish the most recent espresso grinder had another digit or two on its shot counter. It's overflowed its 4 digits at least a couple times now in the past 4-5 months.

Detoured to another small feature that I suspected I'd be able to slam out quickly while I wait on other stuff. It needs a little more work, but today's work solves what I consider the biggest blocking issue to getting the new version released and I know my staff will appreciate the change once I get that deployed for them and tell them about it.

Finished up enough of the code I've been writing lately to meaningfully test that. Needed to fix 1 assert failure (iterating over the wrong list) and missing breaks in a switch (really not sure how that happened) but otherwise that chunk of code worked fine and I can move on to the next thing.

Show older
Typica Social

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!