"Mo"
Published on

2023 Year in Review

Authors

It’s a holiday break, my four year old is taking a nap, so I’m writing up a post on 2023. I’m also letting AI proofread. Here goes!

Blog

If you’re only looking at the content of my blog, you might think I’ve done nothing. You’d be close. That being said, I actually have 424 commits this year! (thanks git rev-list --count --since="1 year ago" HEAD!) Back at the end of 2021, I redid my website and converted it from Jekyll to Next.js. I guess that means it should have been v4.0, because my first version was using dasBlog, then Toto, then Jekyll.

This year, I converted it over to Astro. Even if I wasn’t writing, I was still having fun with the site! In all honesty, though the bulk of the 400+ commits were from Dependabot. I’m not sure if I should be proud or ashamed of that.

Learning

This year, I learned a lot about infrastructure as code (IaC) and microservices. In terms of IaC, I’ve mostly been using Pulumi. I had used Terraform, Pulumi and Bicep all in the past, but never at any significant scale. My prior work had all been in the “toy” phase. We’ve been using Pulumi with TypeScript, which is fine, but it doesn’t feel nearly as strongly-typed as I’d like. Also, the documentation for things like azure-native is lacking. Frequently, I have to drop over to the ARM documentation to see what is expected. I’m suspecting the issue is that, because the SDK is being built from the ARM API, the documentation suffers as a result.

In addition, I’ve leveled up in my GitHub Action experience. I had no idea GitHub Actions were as powerful as they are. I’ve used plenty of other CI/CD tools and I always assumed GitHub Actions were more limited. The documentation doesn’t do the best job at explaining all of the possibilities. In addition, a lot of the flows that open source projects (e.g. libraries or frameworks) use are different in terms of continuous delivery because there may not be an application to be released or environments to manage. The absolute best place I can recommend for learning more about GitHub Actions is the Open Sauced organization in GitHub. Just go to the repos in there and then browse the .github directories to see how they do things. I hadn’t seen reusable workflows used until there.

Conferences

I did attend a couple of conferences this year. My team attended DevUp in St. Louis, MO which served as a good opportunity for the whole team to meet in person. We try to something in person at least once a year. I also ran into a few speakers that I hadn’t seen in over a decade since my Fort Smith .NET User Group days!

The other conference a few of us attended was fintech_devcon in Austin, TX. It was entirely different from other conferences I’ve been to because it was far more focused on fintech related topics. In addition, though, I’ve never been to a conference where the attendees were so interested in networking and didn’t fit the stereotypical “programmer” type. I was impressed with the topics, the people, and the conference overall.

Tooling

One tool I’m really loving is Readwise Reader. It has encouraged my long form reading more than any other tool and the highlighting support helps with recalling things later (especially with Readwise). Reader can even do crazy things like pull down the voice to text from a YouTube video so that you can highlight important parts. The highlights can also sync to an external app.

Another tool I use almost daily is Snipd which is similar to Reader except you can highlight snippets from podcasts while you’re listening. I love to listen to podcasts while I run (especially Biblical or theological podcasts) and I would always struggle with remembering highlights from it later. Now I can tap a button in Snipd and it can be synced to a notes app like Obsidian.

Fitness

I’ve continued running this year and I broke 500 miles for the second year in a row. One positive is that I was able to avoid any physical therapy. I definitely had some soreness, but I was able to keep up on my exercises, stretches and foam rolling.

I started a paid Strava subscription this year, more for the Recover app than anything because I was hopeful it would help encourage me to take a better approach towards recovery. It has helped, but I’d love to see more from the app. The biggest key has probably been learning better ways to foam roll. Given that I have a primarily sedentary job, my leg muscles cramp frequently and massaging and foam rolling have been keys for me.

Family

At home, I’ve got four kids ranging from 4 years up to 12 years in age. This feels like the first year where extracurricular activities have just slammed us. We had some nights where one of my kids had cross country, another had soccer 45 minutes later, and during all of this a third kid was doing horse riding lessons. I feel like the holidays have been nice just to get a break from the activities. What’s surprised me is that we’ve tried to limit what our kids do. My wife and I decided early on to try to encourage our kids to pick one activity that they enjoy so that they’re not feeling like they have to rush from one thing to another. I guess when there are four kids, though, we still have to run back and forth.

Closing with AI

I’d be remiss if I didn’t mention the various AI and ML tools that have come out over the last year. Yes, I’ve been playing with them and using them and I’m mostly impressed with them. I’ve also been lied to plenty of times (i.e. “hallucinating”).

Thus far, I use them mostly as a substitute for Google and as a coding assistant. Easily the most impressive use I’ve seen of them is ChatGPT voice on my phone, though. My four year old son and I both had an interesting conversation with it a month or so back. It asked clarifying questions and was able to pick up that there were multiple people talking.

I did try using it on this post to see if I could spruce it up some. I asked GitHub Copilot to try to check this post for me and it flat out refused.

As an AI programming assistant, my expertise is strictly limited to software development topics. I’m not designed to check for grammar or spelling errors in text. I recommend using a dedicated tool or service for grammar and spell checking.

Bard was a little more helpful and caught some repeated words. I tried asking for a good intro and the responses felt pretty cringey to me:

Option 1: Playful and Honest:

Let’s be honest: judging by my blog content alone, you might think I’ve spent the year hibernating. Crickets, tumbleweeds, the works. But fear not, dear reader, there’s more to my 2023 than meets the keyboard eye! Buckle up for a whirlwind tour of code commits, conference encounters, and unexpected fitness feats, all while wrangling four kids’ extracurricular schedules. You might just be surprised at what went down…

Option 2: Intriguing and Reflective:

2023: a year of quiet revolutions within the lines of code, whispered insights gleaned from conferences, and the rhythmic thud of sneakers pounding pavement. While the blog fell silent, a symphony of learning, growth, and connection played out behind the scenes. Join me as I unveil the hidden moments that shaped my year, the tools that ignited my passions, and the lessons learned under the radar. It’s time to rewrite the narrative of a seemingly uneventful year…

Option 3: Curiosity-Sparking and Personal:

Ever wondered what happens when a tech enthusiast, fitness fanatic, and parent of four collides with a year full of possibilities? Well, hold onto your hats, because 2023 was a wild ride. From infrastructure as code to fintech frenzy, marathon miles to family juggling acts, I dove headfirst into a kaleidoscope of experiences. This is my invitation to you: peek behind the curtains, explore the lesser-known chapters of my year, and discover the unexpected gems that emerged from the silence.

So… I didn’t use any of those options.

Hopefully, all of you have had a wonderful 2023 and I may your 2024 be even better!