Dec 2022 Advent of Code 2022

This is it: I’m finally going to finish Advent of Code this year! (A strong claim, given that this is my third attempt, but we’ll see!) This year, I’m planning to use this as an excuse to learn/relearn Emacs and Rust.

I also started AoC in 2020 (19 stars; Python, mostly) and 2021 (36 stars; Rust). Last year, I went in with the specific intention of learning Rust, which honestly went pretty well; the challenges got more difficult at a pretty similar rate to which the language grew more familiar, so I ended up spending a pretty consistent amount of time on each day’s challenge.

This year, I’m going to continue with Rust, but with a different learning component: Emacs! I’ve been using Vim and VS Code as my primary editors for quite a while now, but Emacs came back across my radar yesterday as I saw the news of the looming Emacs 29 release. Lots of neat new features (Eglot for LSP integration, and native Wayland support) make this a pretty exciting release.

I used Emacs a bit in school (it was the required text editor for our second-semester CS class), so I’m not going in totally blind, but I’ve…basically forgotten everything I ever knew. C-X C-S to save; C-X C-C to exit? Arrow keys for navigation, type to insert text. That’s literally it, off the top of my head. That should get me through today, anyway; maybe tomorrow I’ll do the tutorial.

VS Code makes Rust easy; built-in syntax highlighting and good completion with the rust-analyzer extension really minimize the amount of thinking I have to do. With Emacs, I won’t be able to take the same tab-completion mental shortcuts. That means I’ll be relying a lot more heavily on my knowledge of the language to carry me through, as well as exploring some new editor features, which I’m excited about.


Posts

Oct 2023 Advent of Code 2022: Day 22

Well, it’s been a bit, but I’m thinking I might have a chance at finishing 2022 off before 2023 starts…if only just! Quite a few things have changed since last time, not the least of which is this1:

chandler@boron:~$ uname -m
riscv64

I’m doing most of my non-employer-affiliated development work on a StarFive VisionFive2 these days (with a blog post likely to come at some point), and the transition to RISC-V ended up being pretty straightforward.

Jan 2023 Advent of Code 2022: Days 20 and 21

Two more down, today. Magit has been awesome, and I think I made it through the entirety of both of these problems without reflexively opening a terminal to solve some problem I encountered (either regarding git, or basic file manipulation)!

Jan 2023 Advent of Code 2022: Days 18 and 19

I’ve been recovering from a rough bout of COVID-19, which really knocked me out for a few days, and (in combination with a tough couple problems) set my AoC progress back a few more days. But I’m back at it! Today: getting acquainted with magit.

Jan 2023 Advent of Code 2022: Days 16 and 17

Well, it’s slow going. I was getting less than a day per day done, and now I’m back at work, so that’ll likely be even slower going forward. I’m retargeting mid-January for the end. But here are the next couple days’ worth!

Dec 2022 Advent of Code 2022: Days 12–15

Well, Advent is long over, but here I am! I was traveling and visiting family, which was delightful but really set back my AoC progress. But I’m hoping I’ll be caught up by the new year! New this time: eww, the Emacs Web Wowser.

Dec 2022 Advent of Code 2022: Days 10 and 11

I’m getting caught back up, slowly! Today, I did days 10 and 11. I didn’t do much for new emacs shenanigans today, just solving puzzles and continuing to become comfortable with a new UI paradigm.

Dec 2022 Advent of Code 2022: Days 8 and 9

Today I was out of the house most of the day. This was a good chance to check out TRAMP: emacs' Transparent Remote Access: Multiple Protocols, which satisfied my remote-editing needs pretty effectively.

Dec 2022 Advent of Code 2022: The rest of Week 1

Day 2/3: I completed the emacs tutorial. Day 4/5/6: Dired, Shell commands. Day 7: rust-mode.

Dec 2022 Advent of Code 2022: Day 1

This is it: I’m finally going to finish Advent of Code this year! (A strong claim, given that this is my third attempt, but we’ll see!) This year, I’m planning to use this as an excuse to learn/relearn Emacs and Rust.


If you have any questions or comments on this project, or if you're about to do or have done something similar yourself, send me an email! I'd be delighted to hear what you have to say.