20 posts this year, bringing the total to 57. Last year was the year of DAXLib and SVGs, but this year is the year of CI/CD, bringing me back to the reasons I started this blog in the first place.
The spread across the year is sporadic. I don't write to a schedule. I keep an eye out for something interesting, usually a problem at work, an announcement or something that generally sparks my curiosity. Then nothing for a couple of months. With two young kids and a day job, motivation comes in bursts and so does burnout, so I try not to force a schedule.
Below is a timeline of posts from the last year. The dots along the top are the posts in order, with a card for each below showing its views and LinkedIn numbers. Click a dot to pick out its card, filter by category, or sort by whichever number you like. The diamonds below the line are the sessions I gave over the same period, which link to the recording or slides.
After writing a series of blogs I tend to collate them into a session, and I try not to give the same session twice. Now, I don't think I am naturally a good speaker, and I am always surprised that I get positive feedback. I am definitely more comfortable writing than speaking, as I get more time to obsess over the details and ensure my points are clear. My sessions tend to be on the more technical end of the spectrum, and it is a challenge to gauge how much detail to go into, and what implied knowledge to assume without losing the audience. But I'm happy that they seem to be well received.
Weirdly I prefer watching a talk to reading a blog. The exception is when I'm actually trying to do something. Then a blog post wins every time, because you can follow it line by line. Which is probably why mine are written the way they are.
I have mostly avoided writing about AI, and sessions on AI turn me off completely. The exception is the technical details of how AI works. I would avoid a session on how to use an MCP with Power BI but would attend one on how vector embeddings work. The same goes for Power BI: I'd skip a session on how to make a report pretty for one that goes into detail on the VertiPaq engine. I think there is a strong value in having broad technical knowledge. This is what lets you plan and steer AI, and I find myself correcting models frequently. You need that knowledge for the creative part too, the solutions the model doesn't offer because it hasn't seen them. I can spend thirty minutes to an hour on a prompt, reading the docs and thinking through every aspect, before I let it loose.
I do use AI for this blog. I have created a skill that helps with templating and reviewing posts. It scaffolds the front matter and headings, and it checks a draft for accuracy, spelling and whether it sounds like me. This helps me get over the hurdle of staring at a blank page. Generally my first prompt will be a note I transcribed while out walking, or in the shower, or reading documentation, with a list of points I want to cover, and documentation references I have already reviewed. Writing this blog is a solo endeavour, and I want it to be accurate and read well, which the skill's review helps with.
I'm happy with how things are going. This year's CI/CD posts brought me back to why I started the blog, and I still write for me rather than for the numbers. If something sparks my curiosity next year, it will probably end up here.