Week Notes #19

Posted on . Tagged with: week-notes.

  • Last week was the end of a — long for me — nine-month project. It was not the easiest nor was it working in a particularly exciting to me technology (React and later React Native) but I learned a lot. And spent a lot of time in Zoom calls,
  • Unfortunately, the client has been badly affected by COVID-19 so the project ended up finishing much earlier than we’d hoped for (it’s nice to actually finish the work you start!) and a little abruptly: the last week was wrapping up everything we could, leaving notes and fixing a load of small annoyances I’d wanted to for months,
  • But that did open up an opportunity to take some time off, so this week (and also next) I’ve been working on my own stuff. A mix of fixing things which I’d wanted to, but were much more involved than I could find the time for plus trying out a few new things,
  • I started off by profiling my zsh configuration; it’d gotten horribly slow. I started off with 1.33 minutes (!), and got it down to 0.08 seconds by switching nvm (the main culprit) and jabba to lazy-load. It was a lot easier to do than I expected, I started off by profiling as explained in this article and then trying out a few lazy loading approaches,
  • I spent Monday and Tuesday on Administrate and closed 74 issues and PRs! I enjoy working on this project (when I get the time), but it’s a lot of work to keep on top of and I usually find I drop behind for a few months at a time and then the backlog becomes somewhat overwhelming. My goal this year has been get below 50 open issues and 30 open PRs and as I write this we’re on 65 and 31 respectively, so it looks like I might actually make it,
  • For a long time, I’ve been working on a tool for pulling my bank data into YNAB (an application which has been fairly transformative for me), it’s just for me so it works out as a good platform for experimenting on. It was feature complete about a year ago until the service I was using to pull UK bank data was shutdown and since I’ve been building out a UI so that you could log in to it. This is is needed because the (relatively new) Open Banking APIs in the UK require the end user to click through to confirm — previously it was a Rails app which just had Sidekiq to run some background jobs for syncing,
  • Anyway, I’ve been working with Tailwind on and off for a while plus using Tailwind UI, and this week I added Stimulus to do some interaction. After spending most of the year working on a huge React app, Stimulus is very satisfying: much closer to the way the browser actually works so you’re not fighting with someone else’s interpretation of how it should be and so little unexpected magic (which I always felt with Redux) and the docs are relatively tiny,
  • Like many people, I have a bit of an aversion to the huge amount of classes you end up putting in a “component” and my first instinct was to extract these out (in the original version of this project, that’s exactly what I did). But it took hours of working out naming and revisiting CSS conventions. I’m building a menu that I’m very likely to never touch agin, what’s the point? I think the individual component solution is going to be ViewComponent, which I’m going to try out soon,
  • Finally, I picked up a Thinkpad T470s. I have — for about the last three years or so — been thinking about trying to run Debian and the i3 tiling window manager and see how I go with it. It’s been good so far, but my expectations are to use it for messing about with, rather than anything more; can you imagine having to piss about with xrandr to get a presentation to work in a client meeting? nightmare-ish.