Rob Dominguez

If you want to learn more about me, check out these posts. I've also got all my social links available right here.

← Blog

WILT: Week of 1/26/2024

WILT: Reflecting on a Week of Community, Code, and Best Practices

Community Building and Knowledge Sharing

There's something revitalizing about gathering with a group of individuals intrigued by the same geeky delights that you are. This week kicked off with the Birmingham AI engineering subgroup meeting where a diverse group of data architects and students bonded over the cerebral wonders of Large Language Models (LLMs) and Generative AI. Breaking down the complex logic of these models probably felt like group therapy for the AI-obsessed. It's not every day you find folks excited about vectorizing relational data, let alone implementing it in real-estate applications with Weaviate and PostgreSQL. There's something to be said for establishing a community where best practices are exchanged – it's like open-source but for gray matter.

Wrestling with APIs and Embracing New Stacks

Most software engineers can resonate with the struggles of working with APIs that offer you as much guidance as a broken compass. Strapi and I had our bouts, particularly with the sparse documentation during bootstrapping, which makes you feel like you're trying to assemble a jigsaw puzzle in the dark. But persistence has its rewards. Progress is personified through our hasura.io/learn site migration utility. Updating this stack is the kind of work that makes the tortuous API battles worthwhile because it transforms a website from a mere repository into an interactive learning platform. It's like building your own digital dojo for developers.

A Learning Curve: Acronyms and Adaptable Technologies

TOFU may sound delicious, but in the tech world, it's all sweetness for security protocols. It stands for Trust on First Use, and it's the welcome mat we lay out for public-private key validation without realizing we've been doing it all along. This nugget of knowledge cropped up while brainstorming for Hasura v3 engagement strategies, which served as a catalyst for broader ideas like language-specific hooks. Imagine the allure for a developer knowing they can wield their chosen coding language within a GraphQL API we host. It's like being a wizard and finding a magic shop that sells wands tailored to your personal spell-casting style.

Shift Left Philosophy

This week, I also embraced the Shift Left mantra, courtesy of one of Robert Martin's Clean books. Shifting left doesn't mean becoming a political radical; it's about dragging the testing phase as close to the ideation stage of development as possible. It's not just about preempting code failure; it's about preempting idea failure through early and frequent validation, which is essentially peer review on steroids. Breaking out of the developer's proverbial shell and sharing thoughts for critique might feel like skinny dipping in the Arctic, but it's all in the name of better outcomes.

Testament to Testing: Mocks and Coverage

Lastly, my tango with the Jest testing library reminds me of a ballet danced in a world of pretend where I script the hoops through which my code jumps. Running mock tests might give you that 100% coverage glow, but it's like mistaking a light bulb for the sun – good enough to guide you but not indicative of daylight. Still, with testing at the helm, two days sufficed to wrap core functionality for our migration utility. If that's not a nod to the power of test-driven development, I don't know what is.

It's been a week of collecting acronyms, rallying the local AI die-hards, wrestling APIs, and letting tests take the wheel. Sometimes, you have to throw your code to the lions early to save yourself the late-game circus. Sharing ideas and getting feedback: that's my kind of social networking. And while I'm far from having all the answers, this week has reminded me that neither Rome nor robust applications were built in a day. Looking forward to next week's learnings with all the eagerness of a debugger at the scent of fresh code.