16 October 2017
Three main pieces of work this week.
Over on Cleeve, I continued write-ups of projects. They’re nearly done – although the largest ones are still left – and I need to dig out some imagery and artwork at some point.
I spent a while on the Silicon Labs board, hacking up this Longcrag project. A good chat with a friend convinced me it might be worth prodding it for longer. If it’s a goer, it’d be interesting to see if I could manufacture a physical product properly – a short run, for retail sale. That’d be an interesting way to learn a lot of things, even with a relatively niche product.
I’ve been battling C – learning more about
structs, getting better at writing headers, and tearing my hair out about the quality of documentation. The Silicon Labs stuff is pretty well documented, too! It’s just not quite what I’m used to, and it’s been a long while since I’ve been stuck for hours on what feel like the most basic of problems. At the end of the week, I had most of the functionality done, but everything decided to stop working once I moved the code into the
releaseprofile. So there’s a bit more to be done there.
Selworthy saw a huge release. I’d been working on a parallel track since late summer, overhauling some of the underlying concepts and conceits – real foundational stuff that would have a knock-on to all the higher-level systems. Some of the change was, for a while, a bit experimental, but once the experiment looked like it’d come to fruition, it was time to cloose the loop. This week, I merged 291 commits into master. The merge was relatively seamless, thanks to regular rebasing, some code review with colleagues, and freezing our master branch shortly before the deployment.
The dev team deployed it early on Thursday morning. It was pretty seamless for a deploy involving small team distributed around the world, a moderate amount of DNS wrangling, and a long-ish data migration. We’d rehearsed the process on a set of rehearsal servers, and that helped iron out the kinks of the data changes. By 9am Thursday, Selworthy was running in its new world. We had almost no glitches post-launch, and users were already commenting enthusiastically on new features that day. A big job, well done, and it frees us up to do less infrastructural work in future.
Some good impromptu chats in the week, too, including a nice coffee with Johanna who was working down the hallway. We compared notes notes on design process and practice – good stuff, and great to step away from the C for a while.
09 October 2017
Weeknotes are easier when you only have to write them for a single week. Let’s get back on that.
Selworthy is gearing up for a fairly major deployment, incorporating the work I’ve put in over the summer that will form our new foundations. So I’ve been shepherding small pull requests around that, making sure we have a clean deployment branch, and planning out the deployment process and rehearsals. The little team is now motoring – someone else has taken the front-end by the scruff of the neck and is dragging it into the future, and our pull requests feel like they’re getting real reviews. It’s good.
I continued some prodding on Longcrag/Foxfield work. I’m really trying to finalise the next line of products. Three of them are so nearly there – one is done, one is on the edge of done but might get a last minute redesign… and one I’m umming and ahhing about. It’s the most complex kit I’ve got, and it’s causing me a few last minute issues. All the fun of hardware.
I also continued the ‘bring-up’ of the Silicon Labs devkit I’m working on. That’s going moderately well, now – I’m wrapping my head around the board a little more and have most features working, although, as ever, debouncing buttons continues to be a fun adventure. One last major feature to get into it, and then I’m going to have a think about what I’ve done there.
I did a small amount of work for the Good Night Lamp team – fettling the management tool a little with some feature requests to improve quality of life.
And I kicked off a new piece of work for myself called Cleeve. Cleeve is unexciting but important. You might note that my Projects page is about 2.5 years out of date. That is not deliberate. But it’s time to update it – so I’m working on writing everything up, researching the stuff I can’t remember, and getting it all nicely up-to-date. You’ll know when it’s all live, but in the meantime, that’s a thing to be working on.
02 October 2017
Week 246 and the majority of 247 were spent on holiday. Mid-week 247, I got back to work.
I shipped a new batch of Foxfield products to Thonk – 90 kits in total, to restock some that had sold out entirely and bolster the stock of other. That was a couple of days of bagging and wrangling shipping, at the end of Week 247 and early into week 248, but we got there!
I spent a handful of days in week 248 building out a small software utility for Sensible Object. In the end, slightly tighter timewise than I’d have liked, but we got the key features deployed and running in the time we had.
In week 249, I spent a day in Newcastle running an afternoon workshop on the digital landscape for filmmakers, on behalf of Northern Film + Media – half of it an extension of previous works about promoting and extending your projects online, half of it focused on technology as a material for artists to work with.
I spent some R&D time exploring working with a Silicon Labs Happy Gecko development board, porting a prototype based around Arduino to it. Why? Partly to get a feel for what more serious embedded development looks like; partly because the devtools are surprisingly alright (compared to some other offerings); partly because it offers perhaps a more practical route to market than ancient old Atmega chips. Slow progress, but not no progress – and exciting to see things come to life, as always.
And around all that I brought the big branch of Selworthy I’ve been working on into land. That’s involved some challenging code, and some particularly challenging rebases. But by the end of week 249, it was all lined up and ready to go. I’m looking forward to seeing that in the wild. Selworthy has also acquired a new front-end developer, who’s dragging some of my clunky front-end code kicking and screaming into 2017; it’s becoming more complex, also more organised as a result. More importantly, it’s already feeling better to an end user, and I think we’re going to reap some benefits from that.
04 September 2017
A good couple of weeks.
I’m working on a second production run of Foxfield products. I’ve got all the PCBs and panels already – all that remained to do was order up the components for the kits. These all arrived and in week 245, I started packaging up the second run. I’m halfway through after a day or so’s work.
I’ve spent quite a bit of time working on the course material for the circuit board design course I’m running in October. That’s been going well, too – working out what we’ll be doing, testing out my teaching material, making sure we have a good combination of practical exercises and some short talks.
I also confirmed details of a workshop later in the month in Newcastle for film-makers (and primarily artist-filmmakers):
Aimed at artists and filmmakers this session will explore two core topics: using technology as a means of developing artistic and creative practice; and using the internet to develop audiences for your work in the ways most appropriate for it.
Always pleasant to work with Northern Film – I’ve done a few courses with them before – so I’ll be working on bashing this into shape shortly.
I ordered up some Longcrag prototypes to get made whilst I’m away on holiday for the next two weeks – hopefully they’ll be the production prototypes for a few new products to get made before the end of the year.
I’ve started some explorations into Silicon Labs microcontroller hardware – trying to get away from writing Arduino-based C and into something that might be more suitable for production products. The world of firmware programming is a bit hairy, but this is easing me in moderately slowly, and I hope to spend a little more time with it in the coming months.
And finally, over on Selworthy, I had a meaty, big breakthrough: the large feature I’ve been hacking on all summer suddenly came into focus and, frankly, works. It changes some of the core concepts within the system and the net result it was aiming for had really paid off. Really pleased – it’s been a brain-twisting few months, and I now know more about frame-rates than I ever imagined possible.
And with that: I’m off on a proper vacation. Back Week 247; see you then.
20 August 2017
In no particular order:
Thonk have ordered a second run of products from Foxfield, which is great news. I took an inventory of what parts I had, ordered some key bits of the BOM from China, some more from a few British suppliers, and started putting together what was needed for a Mouser order. I’m hoping to package this lot up by the beginning of September. I also wrote the first installment of Foxnotes – similar to these weeknotes, but more infrequent.
I’m running a course on circuit board design in October, over four evenings. I did some promotion of this, and have spent a decent chunk of time beginning to write the course itself – trying to get a feel for what it contains, what the balance between talking and doing is, how to structure learning across the four weeks, and triple-checking the demo circuit I’ll be going over. I also ordered various small prototypes to help me out with demonstrations.
The course is going well, I think – I’m beginning to see the shape of it, and to see places we we can extemporise or build on things we’ve learned. But I also need to remember how much space to leave for unknown unknowns – discussion, and questioning, and inevitable inertia of using software.
A good few weeks – busy, and outside Selworthy, running around a little. But when I look back at it here, there’s definitely forward momentum.