Don’t look now.. but I’m blogging!
I’ve been reflecting on a very diverse professional year. This year I’ve written or sustained codebases in the following platforms:
- Micronaut with Angular
- Golang with Gin
- Vue.js with Quasar
- Flutter for Android & iOS targets using MobX
- Bash
- and even large Classic Java EE codebase running on Wildfly
It’s a struggle to remember how to define a function these days!
Crunching the stats
I’ve been using a tiny git stats bash script discussed here to pull my numbers. Not large, but they do represent a decent amount of work (and a lot of learning).
Language | Commits | Files | Insertions | Deletions | Total Lines |
---|---|---|---|---|---|
Java | 58 | 70 | 3224 | 316 | 3540 |
Dart | 133 | 35 | 4388 | 2068 | 6456 |
Go | 111 | 145 | 11228 | 1578 | 12806 |
Bash | 58 | 34 | 1777 | 282 | 2059 |
Totals | 360 | 284 | 20617 | 4244 | 24861 |
Some surprises from the year
And I’ve learned a few things along with the way…
Micronaut is a delight. It’s all the things I love about Grails, but in Java form. It’s really straightforward to get things done. I’m yet to get stuck into GraalVM (on my list for first up next year).
Go is verbose but relaxing. Yes, there’s lots of boiler-plate. And yes there are a few interesting design decisions, but overall I found it a really productive language and very easy to come back and maintain. Gin is a fab web framework with all the built-ins (including Swagger support). And compiling a single binary for the client’s numerous target platforms (including low memory embedded) has been something else…
Flutter really does work cross platform. No, for reals. I built and tested on Android, and the client recompiled that codebase for their iPad and iPhone and everything “just worked”. Really. I was floored. Even the camera stuff worked! And the language is very Java-esque too. Super great stuff. Need to do more next year on mobile.
Shell is awesome for client hacking. The scripts I developed were around letting a client hack their existing systems into talking with a third-party backend. They were slow, but super functional, and they let the client adapt them to other inhouse systems that I didn’t have access to. Super fun.
Angular is awesome. Vue.js is awesome. Pick your awesome. Both super productive frameworks with great docs and examples. Great UI framework support via PrimeNG or Quasar. Produced some of the best-looking apps of my career this year.
I need to code more in 2023. It brought me a lot of joy working on software this year - and it was probably less a part of my day-to-day than it has been earlier in my career. Really looking forward to leaning into it more in 2023.