I just completed "Laboratories" - Day 7 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/7
github.com/danielemegna... #elixirlang
I just completed all 12 days of Advent of Code 2025! #AdventOfCode adventofcode.com
I just completed "Trash Compactor" - Day 6 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/6
github.com/danielemegna... #elixirlang
Note to self: (int) id % 10 is not the same thing as (int) (id % 10)
#AdventOfCode
I just completed "Lobby" - Day 3 - Advent of Code 2025
Part 2 made me implement a recursive generic version of part 1 that was actually much simpler
github.com/jeffmallozzi...
adventofcode.com/2025/day/3
#AdventOfCode
#zig
I just completed "Gift Shop" - Day 2 - Advent of Code 2025
adventofcode.com/2025/day/2
github.com/jeffmallozzi...
Yeah, I'm running very behind this year ;)
#AdventOfCode
#zig
There's funny parallels here with another puzzle-y thing dear to my heart: #AdventOfCode!
This is another global leaderboard that operated on the honour system, *really* didn't matter in the grand scheme of things, yet people started to game (via LLMs) which ruined it for everyone else.
I just completed "Cafeteria" - Day 5 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/5
github.com/danielemegna... #elixirlang
Wanted to learn @gleam.run through #adventofcode - got stuck on a Graph problem and didn't want to port my Elixir or F# solutions to Gleam. Then it occurred to me, why not collect a few graph algorithms in one place and do myself a favour?
github.com/code-shoily/...
Gleam is a beautiful language.
I just completed "Resonant Collinearity" - Day 8 - Advent of Code 2024 in Rust #AdventOfCode #Rust adventofcode.com/2024/day/8
I just completed "Printing Department" - Day 4 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/4
github.com/danielemegna... #elixirlang
I just completed "Playground" - Day 8 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/8
just getting back to this, hopefully will finish before AOC 2026
Morning training 🏋️🥋
I just completed "Lobby" - Day 3 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/3
github.com/danielemegna... #elixirlang
Duurde even, maar de winnaars van Infi's #AdventOfCode 2025 Tribute puzzel zijn bekend!
Er zaten wat pareltjes bij hoor :D. Wilco geeft op ons blog de highlights van enkele inzendingen: infi.nl/nieuws/adven...
I just completed all 12 days of Advent of Code 2025! #AdventOfCode adventofcode.com
#CommonLisp github.com/brewski82/ad...
FIN-FUCKING-NALLY ! 😭
I just completed "Movie Theater" - Day 9 - Advent of Code 2025 #AdventOfCode adventofcode.com/202... 🎉🎉🎉
I just completed "Gift Shop" - Day 2 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/2
github.com/danielemegna... #elixirlang
I just completed "Reactor" - Day 11 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/11
#CommonLisp github.com/brewski82/ad...
i only have 15 minutes to demo this so I can explain some actually-useful basics and walk through an #AdventOfCode example
or, I can do a tutorial about geomantic divination in APL 🤔
i’m torn
I've completed "Factory" - Day 10 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/10
#CommonLisp github.com/brewski82/ad...
I just completed "Secret Entrance" - Day 1 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/1
Here's my 2025 day 3 #AdventOfCode solution (in #Python, per usual)! An extra clean little dynamic programming problem.
advent-of-code.xavd.id/writeu...
I just completed all 12 days of Advent of Code 2025! #AdventOfCode adventofcode.com
I just completed "Factory" - Day 10 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/10
Finally.
Gaussian elimination is all you need.
# auxiliary classes Point = Data.define(:x, :y) Rectangle = Data.define(:corner1, :corner2) do def area ((corner2.x - corner1.x).abs + 1) * ((corner2.y - corner1.y).abs + 1) end def xy_bounds x_min, x_max = [corner1.x, corner2.x].minmax y_min, y_max = [corner1.y, corner2.y].minmax [x_min, x_max, y_min, y_max] end end # intentionally naive for argless methods module Memoize def memoize(name) original = instance_method(name) ivar_name = "@#{name}" define_method(name) do if instance_variable_defined?(ivar_name) instance_variable_get(ivar_name) else instance_variable_set(ivar_name, original.bind(self).call) end end end end
# Advent of code - Day 9 class MovieTheater extend Memoize attr_reader :corners def initialize(filename) @corners = File.readlines(filename).map do |line| x, y = line.strip.split(',').map(&:to_i) Point[x, y] end end def solution(advanced: false) = advanced ? max_inscribed_rectangle : largest_area # Part 1 def largest_area = all_rectangles.map(&:area).max # Part 2 def max_inscribed_rectangle = sorted_rectangles.rfind { inscribed?(it) }&.area || 0 private memoize def all_rectangles = corners.combination(2).map { |pair| Rectangle[*pair] } # Part 2 def sorted_rectangles = all_rectangles.sort_by(&:area) def inscribed?(rect) x_min, x_max, y_min, y_max = rect.xy_bounds !intersects_rows?(x_min, x_max, y_min, y_max) && !intersects_cols?(x_min, x_max, y_min, y_max) end def intersects_cols?(x_min, x_max, y_min, y_max) col_spans.any? do |x, (c_min, c_max)| next false unless x > x_min && x < x_max c_max > y_min && c_min < y_max end end def intersects_rows?(x_min, x_max, y_min, y_max) row_spans.any? do |y, (r_min, r_max)| next false unless y > y_min && y < y_max r_max > x_min && r_min < x_max end end memoize def row_spans = corners.group_by(&:y).transform_values { |cs| cs.map(&:x).minmax } memoize def col_spans = corners.group_by(&:x).transform_values { |cs| cs.map(&:y).minmax } end
I started refactoring #adventOfCode Day 9 in #ruby and in this case I opted for extracting auxiliary modules (Memoize) and classes (Point and Rectangle).
Unusual for AoC but satisfactory.