The cyclists’ Tiny Portable Office

Week 14, April 2024.
A picture of my e-bike

At the end of last year I swapped my lovely, zippy pushbike out for a chonky, high speed e-bike. That change took my average speed going up the hill to my Factory studio from “get off and push up the steepest bits” to “rarely less than 10km/h, usually hitting 15km/h”.

That changed my commute time from 25 minutes to 13 to 18 minutes, door to door. And I arrive much less clammy. Cycling days were days I couldn’t do anything after work without getting a shower in first. Now, the whole process is much more peaceful, whilst still getting in at least some exercise (if an elevated heartrate counts).

That 5km journey (10km roundtrip) was the most this new bike was getting. Despite really enjoying being a part of the human-machine ballet of traffic, where we communicate with each other wordlessly and have many opportunities for kindness and patience, I’m not a very confident road user. In the early days, I had very little idea about how to wrangle a roundabout, and I’m still not sure at what points I’m supposed to scoot to the head of the traffic lights. (What if it changes whilst I’m midscooting, and then someone needs to turn?)

This changed a bit last week when someone on Mastodon recommended a couple of apps, one of them being cycle.travel. Now, Google Maps (etc) are very good at making routes for cars, and they apply that same algorithm to their “bicycle” option: very road based. It ignores the thousands of kilometres of off-road tracks available to bikes. Cycle.travel fixes all that by including cycling trails and cycling lanes, and can suggest various pitstops during matters of human weakness.

On another note, over the bank holiday weekend I had been thinking about spending sometime somewhere cobblestoned, with an old village vibe. A reading and writing holiday for a few days. I have good memories of Haye on Wye, but that’s quite expensive. Nearby is Newark though, which does have a small village feel to it too and I’m sure I remember some cobblestones. That’s much cheaper – and the train there is an easy to swallow £7.70!

Planning this coincided with discovering cycle.travel and I had a thought: what if I could cycle there? The route it gave would take around 30km. That’s a distance I’ve never cycled before e- or otherwise, but the 10km daily trip takes me down to barely 80% battery.

A quick check with the inn – the Beaumund Cross Inn – and they did have facility to look after my bike during my stay. (And importantly, my bike battery can be removed and charged in my room.)

The other logistic challenge: carrying stuff. Since getting the e-bike, I’ve gone right off of rucksacks and cycling. Sweaty, non-breathable irritants. I’ve fallen in love with my pannier though. Truly, my bike and my pannier are my two favourite objects in my life at the moment.

I did end up just buying the one pannier, because they’re expensive. I got the AGU H2O Roll-Top, as seen in the picture above. It’s fastening mechanism is very well designed: the two clips are bound to the hardback of the bag, so they don’t move around whilst trying to pull them off the bike. The fold out clip which acts as an extra safety attachment, which is usually Velcro, is a genius innovation too. I reject only getting the one. This was a mistake and I should have bitten the bullet.

Unfortunately, the single panier is not enough to carry three days’ worth of clothes and travel, and the additional bits for the bike. Especially not enough when considering that I wanted to take my Tiny Portable Office.

As a stop gap, I went to Halfords and spent £15 on a black pannier that is shit. Fortunately, it did the job of carrying my clothes well enough. But it’s difficult to remove and is only closed by Velcro that’s easy to flip up accidentally (or maliciously by a rogue passer-by on a moped). Do not buy this bag or any bag in this price range – put the £15 towards an £60 quality bag.

Finally, my last storage option is the top rack. I have two elastic ropes which terminate in hooks. This meant I could put my easy-to-fold rucksack into a Tesco bag, and then pop it on top, fixed very tightly by the elastic ropes. I was worried about this, but there was no way that bag was budging. On the journey there, it was quite warm so I didn’t need my high vis jacket, and that was also fixed easily in place. Those bungee cord things are stretchy as heck and not to be sniffed at. Grab a couple!

The big question then: what makes up the Tiny Portable Office?

You’d think my Macbook would make the cut, but actually it’s a bit too big for everything I needed to take with me. Not to mention a pretty expensive tool to take on a new adventure – who knew how often I was going to slip-and-slide around the muddy canal onto my butt? (It was zero times, with one close call.)

In the end, all I needed was my iPad and my Magic Keyboard. This combo works very well together! I was surprised at how much iPad OS (is it just iOS now?) is just like OS X. Alt-tab works as expected, even though there’s no keyboardless equivalent. Apps smartly hide the on-screen keyboard, giving you a luxuriously large area to the typing away on.

I know the iPad can have a folio-keyboard case. When I got excited about the idea of working from an iPad I went and looked these up. They are not cheap. I’m currently out-of-finance-cycle with Apple so am on the lookout for something to swap cash-for-happiness for, but even so they are too expensive. I already have the keyboard, which comes with some obvious advantages: it’s a regular sized keyboard (without numpad) and can be positioned apart from the iPad.

iCloud makes it feel as if I hadn’t even left my laptop. Obsidian (stored in iCloud) works great as a text editor and behaves almost identically (worts and all) to the desktop version. Whilst I was mostly writing on this trip, I did get a hankering for some coding. I was prepared with Blink though, which is a great little SSH client for the iPad. Paired with mosh, it hides away some of the latency issues you’d normally get on a low bandwidth connection. I had a Hetzner server all set up as a little cloud development environment.

I don’t always want to work from the iPad though. It doesn’t suit well in certain coffee shops. There’s a lovely tea room in Newark that wouldn’t look kindly on me busting out some electronics and ungratefully claiming the area to be a co-working space. For those occasions I have a Fieldnotes notebook. These really are sturdy as heck, and can take a beating whilst waiting in your pockets, alongside keys and being bent.

There you go, a Tiny Portable Office from the back of a bicycle.

Affinity suite publisher, Serif, acquired

On March 27th, Canva confirmed something that the media had gotten whiffs of a few days before: they had acquired Serif for an undisclosed amount of money, but speculation from the The Australian Financial Review puts the figure above a billion dollars (presumably Australian, around half a billion pounds).

Serif produce Affinity Publisher, Photo and Designer packages which strongly rival Adobe’s own products. The difference between the two companies are their pricing methods. Whilst Adobe charges in excess of a nail pulling £672 per year, Serif charges a one-off, perpetual license fee of £160.

With more than three million customers, Serif has made this work for their team of ninety staff members. In fact, in 2021 the company received an award for having the fastest growing profits in the East Midlands, as awarded by The Sunday Times. But some back of napkin maths shows that if every customer had bought the full license twice (with the second version of the software requiring a new license, though at a discounted uplift), the revenues of the company aren’t matching anywhere near the sticker price Canva apparently paid. (Serif also sell digital media assets.)

It's expected for Affinity to be rolled into Canva’s subscription offers. They have already made a public pledge that the perpetual licenses that Affinity customers love will continue to be available – but only time will tell how much water that pledge can hold.

The most concerning change which Canva have not made any comment on is the location of the Serif offices. Serif is a Nottingham based company. Many of its roles are not available to remote workers. It’s not likely that the company will up and move to Australia, Canva do have any other European offices, and presumably many of their own facilities already nearby. It would be odd for Canva to not want to make some consolidation.

Nottingham holds Serif highly as a growth driver, which may now be in peril.

Stop giving Bezos money. Switch to Digial Ocean today with a free $200.

An ad to help pay for a service I use. You should too.

Music security with Plex

This is the year that I’ve gone all in on Plex and paid for the Lifetime Plan, costing £94.99.

I’m so pleased that music has become an active part of my life now. No more throwing £11 every month at Spotify with nothing to show for it at the end of the month. My collection is 245 albums strong now, and I have the vast majority of those looking pretty right next to me. If Plex goes away, my music is still here.

A recent upgrade to my set up is moving away from the NAS server I was running it on and setting up an old computer in the basement. The NAS was an ARM chip, which isn’t supported by Plex’s “Sonic” features. An Intel machine is required for those. The Sonic features analysis your music and lets you do iTunes Genius-like playlists and radio stations.

They call them “DJs”.

The way I listen to music now is either listing to a full album straight – something a real delight, and difference from the pick and mix of playlists. Or by using one of these DJs. Pick an album and start listening, and then select: DJ Stretch, which will string together an “adventure” of tracks playing stuff from your library that might surprise you; DJ Freeze who plays a similar feeling song after the current one; DJ Gemini (my favourite) which plays sonically similar.

The system uses dozens of metrics in its analysis, from beats per minute, to genre, to Last.fm listenership.

It’s a good way of discovering music you own. As my collection grows, I’m surprised by hearing tracks I wouldn’t normally gravitate to.

I’m really enjoying music again.

Actual security with XZ

This week saw the unravelling of the XZ exploit which managed to worm its way into some versions Debian and Fedora. Both have now been made secure. The actual exploit itself is much less interesting to me compared to the way it was orchestrated. This has been covered very well by boehs.org.

This was no random contributor raising a PR that wasn’t appropriately reviewed. This was a concerted effort, years in the making, to gain control of the XZ project via social engineering and very patient rolling out of the exploit.

The original maintainer was subject to a barrage of cyberbullying and negging. Over time, this added up to the maintainer thinking they didn’t have the time or energy to spend on this project, so they began looking for someone to take over the role. “Jia Tan” stepped up – an open source contributor (of dubious work, we now realise) and likely coordinator of the pressure for a new maintainer to be added.

Later, another coordinated efforted was made to get the nefarious code merged into package repositories.

At this point, it’s not clear who Jia Tan is. It’s also not likely that we’ll ever know. My expectation is that this is the work of a nation state of some kind, as the patience and organisation of the job is utterly impressive. It seems well practised enough that this can’t be the first time this has happened with a key piece of open source software.

From now, we should consider artificial pressure in the community to be state sabotage at work.

I've designed this page specifically for Big Monitor people. Sorry phone readers.

This was a particularly fun post to design and write! I wanted something a little more newspaper style. My original design had columns for the main article, but I realised the problem with that is scrolling unaturally back from bottom to top. The column height needs to be the same height as the viewport, which will need some Javascript work and extra UX considerations.

We're also missing proper "wrap around the text" support. The `aside` block needed floating, and margin offsets to get it working.

In the end though, this page has ended up much like the design I put together, so I'm very pleased.

Not included in the design (because I don't know how to do it) is better separation between the "articles". I don't want to use background color for this. I'd like to use a nice clean line. If `gap-border` was a thing, I'd use that.

If you'd like to give any advice, feel free to message me on Mastodon.