2024 – 10 years of chugging

I've tried to do this kind of reflection before, lets see if I can take take it home, since this years has really felt significant.

A decade ago I joined the work force. Though lots of odd jobs prior (and honestly also since) it often feels surreal that I'm getting paid to hammer away at my keyboard.

  • maybe not I've flipped burgers, ran dishes, taken food orders, dressed up as a Dog at Pet Events (here's a picture to proof it).
  • maybe not

Putting nostalgia aside, we've done it folks! 2024 is coming is coming to a wrap. I'm slicing this retro up into the following sections:

  • 2024 Themes - Stuff that's been super top of mind and in my face
  • Work - How's the keyboard clacking going
  • Life - The true main coarse of this look back
  • Side things - Curiosities that keep things spicy
  • Up next - What's on the horizon

2024 Themes

I've dropped this phrase a whole bunch this year "Hey made this thing, its pretty messy - but what do ya think?"(in both spanish and english). Though often hit back with "Oh that's cursed" or "Wait you can do that?" I've gotten a lot of joy from diving into unconventional projects and ideas.

The compounding interest

"We underestimate what we can do in a year, but overestimate what we can do in a day" a while while back I heard this phrase in an interview with the founder of FreeCodeCamp. It resonated since I've noticed how much easier it's gotten to dive into things. Back in 2018 I remember vividly being extremely daunted by the idea of having to setup an ubuntu server, now a days I'd be no less than thrilled to do so.

Early on, the prime source of council I had was my brother for anything related to tech:

  • I had an issue managing sessions? "Hey use sesion_start()"
  • Had to connect to mysql? "There's this helper called mysql_connect()"
  • Had to center a thing? "The browser has a handy <center />"

It was awesome since there was a person that could give me a quick answer, that wasn't going to judge me for not knowing and that I knew just wanted to help me out. This past year I was granted the opportunity to give back in a similar way, to a few friends that were diving into tech. It's been a blast to see them grow and to be able to help them out along their journey. When they were able to nail their first paid gigs, a wave of pride, excitement and joy washed over.

This year I've also attended my first in person tech meetup. In contrasts to conferences with speakers, this one was mostly conversations. It was wild to be able to gauge the room and see how people were feeling about certain topics. It was also a blast to be able to share some of the things I've been working on and to get feedback from people that were in the same boat.

These experiences have been a reminder of how much the needle has moved forward since starting down this journey.

Cursed bits of software

I’ve been drawn to unconventional or “messy” projects—the kind that make you wonder if there’s any magical encantation behind them. Where often reach for google to start looking up newly found terms, to later pause and notice you're 20+ tabs deep. I’ve partially motivated by the desire to cultivate a stronger intuition for code smells, and also the fact that these sorts of endeavors intrigue me. There’s something about diving into a project with questionable design decisions and exploring whether you’d replicate them—or do something radically different—if you were starting from scratch.

Legacy projects, in particular, are a prime example of these intriguing yet messy undertakings. The natural reaction when encountering legacy code is often, “Wow, why did they build it this way?” Yet time and again, when we refactor or rewrite, we end up with something surprisingly similar. It underscores the idea that every decision has its historical context—something we only appreciate once we’re neck-deep in the same constraints.

Another unconventional area I’ve found fascinating is syntax highlighting—especially with Tree-sitter that parse files into Abstract Syntax Trees (ASTs). Now there is also text mate grammers and good ol regexing to throw into the mix. Highlighting file types such as .vue, .svelte, .mdx, .jsx, or .blade can become surprisingly tricky, yet they often make authoring projects a delight. How can something so crucial to the frontend experience obscure and hide so many edge cases? Ensuring proper syntax and semantic highlighting is not only a technical puzzle but also an endlessly intriguing domain for exploration.

The last notable to make the cut are ASCII related projects. Terminal UI applications really shined this year, from personally now living in the terminal to different ansi escape code projects getting the spotlight by prolific individuals. It's been a blast to see how much can be done with just text. Though far too many favorites in the space, the length folks have gone to making the terminal a more enjoyable place to be in has been a joy to see and source dive.

Nerd snipping and being sniped

A term that popped into my sphere this past year is “nerd sniping”. It describes those moments when someone casually floats a technical possibility—“Hey, this might be feasible,” or “How hard could it be?”—and then you find yourself tumbling down a rabbit hole of experiments and prototypes.

I first heard about this from an interview with the creator of LLVM, who recounted how a professor nudged him with a subtle challenge. It reminded me of all those times I’ve been chatting with someone and they’ve suggested a “simple tweak” or an “easy bridge” between two systems. Before long, you’re elbow-deep in documentation, code rewrites, or an entire side project you never saw coming.

Time is the most finite of resources

It might sound clichéd, but time really is our most finite resource—and that realization hit home in some intense ways this year. Early in our careers, it’s easy to undervalue time because we have so much of it. We’ll spend hours honing our craft, experimenting freely. But at some point, the equation shifts, and suddenly each hour holds a higher cost.

I experienced this most starkly when I saw how different individuals allocated a limited number of hours during a critical incident. Their paid time was finite, so they were extremely deliberate about how they spent it—and that contrast made me rethink how I budgeted my own hours during this incident.

Large Language Models joined the chat

One of the biggest changes in my workflow this year has been the regular use of large language models (LLMs). Whether I’m writing code, brainstorming ideas, or simply seeking inspiration, having a “glorified generator” at my fingertips has been game-changing.

For 20 bucks a month, I can access an AI that feels like Stack Overflow on steroids. If I need to do a quick double check or find myself stuck, I can toss it to the LLM for quick suggestions. It doesn’t always provide a perfect solution, but it’s a powerful springboard.

  • A friend had asked me about ways to optmize a thing he was working on, I suggested using a Lazy approach to mem allocation - "Hey can you optimize this?" - since it was in node it highlighted being able to use
  • Hey can you translate this from X to Y?
  • Writing isn't my strong suit so quickly being able to "Does this make sense?"

Werk

End of last year joined an awesome crew, and though at the start

  • feels super good to be part of a team
  • feeling like i'm adding value
  • identifying areas for growth

Life

  • Long distance
  • The kitty that adopted a house
  • Concerts & time well spent

Side things

Werking

  • melon-chat (Nuxt + PartyKit)
  • Color Picker (Chrome Extension)

Projects

  • Papaya bar (chonching bar) (Chrome Extension) shipped -> New UI for copying and taking a screenshot + browsing history UI (Vue 3 SPA app)
  • Capsule corp (git differ) In the works (Livewire App)
  • php-sandbox (php repl) In the works (Remix App)
  • Pomodor App (Solid JS)

Honorable mentions

  • Cursed CMS (Twill & Filament)
  • Cron job UI manager () -> systemd-run

Deep dives

  • wasm
  • web components
  • multi step and recovery
  • using phpslim to make single executable binaries

Up next

  • writing
  • books
  • more demos
  • future explore
    • workers
    • streaming (video & text) (want to dive deeper)