Using ESP32 and ESP8266 with the same source file

If you want to use the same solution on both ESP8266 and ESP32 devices you find that there are a few inconsitencies between their libraries and include files. I've made this tiny set of conditional includes which pulls in the properly named elements for each processor. It also provides a symbol called PROC_ID that returns the processsor ID in a way that can be used in both types of program. #if de… Read more →


Pandle for free business accounting

If you’ve got a small business or you’re a sole trader you might like to take a look at Pandle. I’ve just signed up for a free account which lets me use their web based services to create suppliers, customers, invoices and all the other accounting paraphernalia that you need to run a company. It has tools that let you produce reports which include the Profit and Loss one (which I think Pandle is n… Read more →


Cluster, Part 10: Dockerisification | Writing Dockerfiles

Hey there - welcome to 2021! I'm back with another cluster post. In double digits too! I think this is the longest series yet on my blog. Before we start, here's a list of all the posts in the series so far: Cluster, Part 1: Answers only lead to more questions Cluster, Part 2: Grand Designs Cluster, Part 3: Laying groundwork with Unbound as a DNS server Cluster, Part 4: Weaving Wormholes | Peer-to… Read more →


Become a better programmer: Watch this video

This is a great video. I think every programmer should watch it. It was given at “C++ on Sea”, a splendid conference that I’d love to go to one day. But you don’t have to know any C++ to learn from it. The video describes the way that emotions end up in program code. And how to make sure that the emotions that you put in what you write are positive ones. If I was still teaching I would make sure t… Read more →


Writing useful release notes for your projects

Release notes are such an important part of your project’s lifecycle. They provide much-needed clarification on new features, changes, and fixes for your customers. We may think that customers don’t... The post Writing useful release notes for your projects appeared first on James Croft. Read more →


Printing Pocket Operator Cases with Edna

I’ve always had a soft spot for Teenage Engineering Pocket Operators. They are great fun to fiddle with. One of the reasons why I got another 3D printer was to print out cases for them. They are supplied as just a bare PCB with components soldered on and I wanted something with a bit more substance. It turns out that Edna does a very good job of printing the cases and the buttons from this design.… Read more →


Health & Fitness: COVID Edition.

A few weeks into the first COVID-19 lockdown my friend shared this. We all laughed, because even back then we knew that a lot of truth was being said in jest. Now it’s a new year, and with COVID-19 vaccinations being rolled out there is a new hope that 2021 won’t be quite as miserable Read more →


Escaped Marble

One of the marbles from the marble run escaped and found it’s way under the sofa. I’ve taken a photo so that we will know it when we see it again…. Read more →


Having a Marbleous New Year

I didn’t get a marble run for Christmas. But I know someone who did. She wanted a marble run that was taller than her. Happy to oblige. And especially proud of the way that the run collects the marbles and returns them to the box. Hope you all have a marvellous New Year. With or without marbles… Read more →


Say hello to Edna

I’ve had a 3D printer around the place since 2012. A couple of weeks ago I got my second one. The decision was driven by the results that I’d seen it was capable of, and the unhappy realisation that I would never be able to get my Ultimaker to print to the same quality. This is my favourite picture of Una my Ultimaker original. I took it in 2012 when I Una and I delivered a seminar about 3D printi… Read more →