

Author profile
Caleb Weeks
Christian, husband, father, functional programming enthusiast, software architect, mechanical engineer (in that order)
Articles by @sethcalebweeks
Browse the latest writing surfaced through DevArt.


Advent of Code #1 (in F#)
It's that time of the year again! Advent of Code is here! And although it is only 12 days instead of...

Fluent API for piping standalone functions in JavaScript
Today (October 8, 2025), there is a post called Working pipe operator today in pure JavaScript on...

Advent of Code #14 (in Gleam)
Remember how I mentioned that my code might not provide a solution that would work on your input...

Advent of Code #13 (in Gleam)
This was yet another problem that my boss helped me out with for part 2. I honestly don't know if I...

Advent of Code #12 (in Gleam)
My boss gave me another clue for part 2 of today's problem. I was planning on determining the number...

Advent of Code #11 (in Gleam)
One thing I love about Advent of Code is that as the problems get progressively harder, they require...

Advent of Code #10 (in Gleam)
When posting my solutions to Advent of Code, I try to make it so that if you were to take my code and...

Advent of Code #9 (in Gleam)
I'm finally getting around to posting my solutions to Advent of Code from last year. The first week,...

Advent of Code #8 (in Gleam)
I'm not particularly proud of my code for today's solution. I could definitely refactor it to reduce...

Advent of Code #7 (in Gleam)
I really enjoyed today's puzzle. At first glance, it seems pretty complicated, but if you know how to...

Advent of Code #6 (in Gleam)
Today was the first day I decided not to stay up to solve the puzzles right as they come out. Where I...

Advent of Code #5 (in Gleam)
Last year, there were a few problems that involved dealing with ordering functions. I was unaware of...

Advent of Code #4 (in Gleam)
In previous years, Advent of Code has had several problems dealing with items in a grid. After trying...

Advent of Code #3 (in Gleam)
Regex is doing a lot of the heavy lifting in today's puzzles. That is one of the main reasons why I...

Advent of Code #2 (in Gleam)
One thing that tripped me up for a while when solving today's puzzle is that grouping expressions in...

Advent of Code #1 (in Gleam)
It's that time of the year again! Advent of Code is my favorite coding challenge, and I enjoy talking...

Crafting Interpreters in OCaml
It's been a while since I've written on DEV! My last post was a summary of #12in23 from Exercism, and...

I learned* 12 languages in 2023: a retrospective
Last year, Exercism put together the #12in23 challenge. The goal was to learn a new programming...

Advent of Code #16 (in Crystal)
Today's puzzle didn't seem particularly challenging. I figured that I would have to keep track of...

Advent of Code #15 (in Crystal)
This puzzle was another easy one, especially for so late in the advent calendar. I don't have much to...

Advent of Code #14 (in Crystal)
My brother and I worked on this puzzle together. That is partly why the solution is more imperative...

Advent of Code #13 (in Crystal)
Similar to yesterday's puzzle, this one was fairly easy to visually inspect, but requires a bit more...

Advent of Code #12 (in Crystal)
Sometimes, a problem is fairly straightforward to describe to another human, but difficult to explain...

Advent of Code #11 (in Crystal)
I've been trying to add some meaningful commentary or thoughts along with each of these posts about...

Advent of Code #10 (in Crystal)
About this time last year, we had to use a maze solving algorithm for one of the puzzles. Today's...

Advent of Code #9 (in Crystal)
The confusing year of Advent of Code continues... I thought weekend puzzles were meant to be harder...

Advent of Code #8 (in Crystal)
So... today's puzzle was a bit of a mixed bag. Part 1 had a fairly straightforward solution, but part...

Advent of Code #7 (in Crystal)
Today's problem was primarily an exercise in sorting, with a little bit of math/logic for part 2....

Advent of Code #6 (in Crystal)
Yesterday, I got by without optimizing my program for part 2. Although it took hours to compute, I...
Advertisement