Last year I used mainly crystal. This year I’m thinking pharo smalltalk, if I can pick it up in time
I also want to do visualizations, not sure how possible that is with smalltalk.
This year I’m thinking of a real challenge and writing brainfuck with butterflies.
Or Rust. Rust is the way.
Real programmers don’t mess time messing around with butterflies or physically interacting with the world. They just intimidate the program into acting as they want through sheer fucking will
I will try to learn rust while doing it, seems like an up and coming language with some interesting features.
I never get past the first 10 days anyway due to how long they start to take and how many things are going on in December.
I hate the ones that turn out to require some niche mathematical knowledge too…
I’m going to try with an awful language so I can better criticise it in future.

Java
I like to use lisp. It is about the only time I get to use it, and I get a little better each year.
Last year i did rust and lisp both, lisp most of the time was easier.
I skipped 2023, but in 2022 I got decently far using newer Excel functions like LET and LAMBDA. And then if I could I would golf the solution into a single cell formula. Years before 2022 I used Python. I think I had more fun with Excel. Will I be up for it this year?
Haskell! Because it fits the way I think nicely, and I don’t want to write in anything else :)
Go. I actually I haven’t written a single line of Go since last year’s AoC so it’s a good excuse to go again (pun intended).
Probably start with Rust again this year, although it definitely makes some of the days a lot harder. I might switch to something better for quick code if I fall too far behind.
I might even try PHP - I coded it professionally at the start of my career but haven’t touched it for a decade and I’m curious to know if its improvements make it pleasant to use.
I want to learn rust but I don’t think I have the socks for it
Might finally do something with Elixir. Plenty of ideas for using it with Phoenix and while I’ve seen a couple of tutorials for simple stuff like a live chat, I’ve done fuck-all thus far.
Might try V one way or another as well. Super small compiler and very small executables make me happy.
Going with c# again. I know the language super well but don’t often have a chance to get really deep into it with the stuff at work. These often present very non typical problems that require lesser used features.
deleted by creator
Typically when people want to avoid sql they use an orm, but um, I’m not sure why you want to use a database for aoc
Python. I don’t have much fun in that language and I figure maybe doing AoC will help delete the mental barrier of “Python make sad” and also get me to learn more about it, so if it still makes me unhappy at least it won’t be an “I have very little understanding of what I am doing” unhappy.
I don’t entirely know why, but it’s difficult to enjoy programming in python, even if you enjoy the end product. Something about it’s design, which usually forces you to do things imperatively or reach for a library, it’s position as mainly a glue language, it’s philosophy of “there should only be one way to do it”. They’re practical philosophies, but not very fun
You might have put into a words a suspicion I’ve had for a long time. I don’t know if this is completely the case for me. But yes, Python most of the times doesn’t spark joy
Seriously? This idea of always wanting to use the latest and best technology is a nightmare for those that come after you. I used to run an IT department where I literally had more languages/technologies that I had people to support them. You need two people to support each, for vacations etc so you do the math. It is a nightmare. Spare a thought for the poor support people and stick to Python or Node or whatever - even Perl…
Indeed, you make an excellent point that Advent of Code solutions need to be maintained for years to come.
even COBOL…
Really curious about how’d unsupervised AutoGPT handle it. Will probably require making some kind of agent that handles input and feedback loop, and it will definitely be a disaster, but could be interesting exercise.












