What language(s) will you be using? Will you be trying anything different this year to usual?
Nobody doing python? It is my first time participating so I think I’ll try it out my strongest language first. I think if I were to try something else it would be Go, to brush up, or Typescript, which I’ve been wanting to learn but haven’t really had an application for, yet.
I’m doing Python! Decided to catch up with what’s new in Python itself and the ecosystem (e.g. poetry, pytype, etc.)
Nice. I’m a long time fan of poetry, but I’m trying out a couple new tools too. Been wanting to check out ruff to replace flake8. And mypy, cause I’ve never worked on a project that used a type checker, though there hasn’t really been much for it to do on the solutions I’ve hammered out so far.
I’ve done it with a new language each year in the past, but this year I decided to do it with stuff I’m very familiar with - with an added twist: I have to visualize something for each day.
So I built myself a little app/puzzle harness that serves up the sample/puzzle input and provides some boilerplate so I can just write the
x-data
for a new Alpine.js module for each day. Then I setup d3 and plan to visualize something for each day using it. For example, I just settled on a simple bar graph (final value of each row) for each part of day 1:Hoping once it inevitably gets to grids and such, I can do something more interactive. Would love to have something where I can animate or manually step through each step of the solution (such as the pathfinding algorithm last year).
I’m participating for the first time, using C.
I forgot about this until the 2nd, so I’m a bit behind but oh well.
(Also my day 1 solution is absolutely not optimised haha, especially when I read up to a whole line just to search for a string which is a maximum of 5 characters)
J A V Ahhhh
I’m doing it in ocaml this year because a friend is doing it in ocaml and they asked me to do it in ocaml so they can see how I do it(this is my first time ever programming in ocaml(last year I was doing it in Haskell)). I’m also in general trying to restrict the amount of recursion I use to force me to use library functions.
I’m going to try and do it in English this year. Wish me luck y’all!
Using Kotlin. I switched careers to Android development almost 2 years ago, and maybe it’s my first “real” language, I really like Kotlin and IntelliJ. I’ve been wanting to learn low-level stuff, too, maybe I’ll try C or C++. Or C# since that’s what my backend devs use. But this year’s puzzles have been pretty intense, so maybe I’ll wait on that
This’ll be my first year, and I’ll use Rust. I’m still a student so idk how it’ll go (especially for my choice in lang), but I’ll try my best.
My strongest languages, in no particular order, are Go, Python, JavaScript, and modern PHP (with types and all that jazz).
I’ve decided to go with JavaScript this year because over the last 15 years, they’ve been working on JavaScript like it’s the cure for cancer. They’ve added so much syntactic sugar to JavaScript in recent years, that I can develop solutions in fewer lines of code.
That said, for day one, I did separate implementations in JavaScript and Go. With Go, I leveraged the built-in support for testing, benchmarking, and profiling to look at the flame graph and figure out where I could optimize performance.
I’ve been wanting to learn both Rust and server-side Swift. I figure that during my time off over the holidays, I can practice porting my JavaScript solutions over to those other languages.
This is my first time participating and I initially thought I would do one different language per day (I don’t know how feasible that is, I’ll probably run out of “common” languages early on and on the twenty-fifth find myself writing in some old obscure dialect of BASIC if I make it that far :D), but since I started 3 days late (I only learned about this event then), I have some catching up to do, so I think I’ll write the ones I’m behind on in python, because that’s what I’m quickest and most familiar with, since I don’t think I will be able to catch up writing in the other languages.
I just discovered this so I’m unprepared. I’ll just go in with c# and try to have some fun.
I am planning to use Rust this year to refresh my knowledge after having not used it for six months or so. I’m contemplating doing some solution visualisation this year, as I’m always impressed by that when others do it - but very much time availability dependent.
I’ve decided to catch up with what’s new in Python (language itself and the ecosystem). I’ve set up a repository with
pyproject.toml
, and git hooks configured, and I’m running pylint, pytype and pytest.