Architecture, Conventions, and AI: Building a System for Full-Stack Software Development

Over the past several months, I built a personal reference suite of over 50 full-stack web applications spanning more than 20 categories of software development. It started as a way to document and formalize architectural patterns in isolated environments where each concept could be examined on its own terms.

It turned into a system, complete with its own infrastructure, engineering guidelines, and accompanying audio guides. And the process of designing it reinforced my understanding of software architecture in a way that working in any single codebase probably never could, because the whole point was to build the same patterns multiple times, in multiple contexts, until every architectural decision felt deliberate rather than inherited.

Read more

Tracking Asynchronous Events in React: How We Built Track-React, a DevTools Extension and Vite Plugin

Debugging asynchronous behavior in modern React applications, especially when it spans across fetches, effects, and timers, can quickly become overwhelming. Errors are often vague and buried deep in chains of callbacks, promises, and side effects. Our team set out to build Track-React, an open-source developer tool and Chrome DevTools extension that helps developers visualize, debug, and better understand async flows in their React apps. Building a tool that integrates seamlessly into user applications without degrading performance or affecting functionality was a major challenge.

In this post, we’ll break down the technical journey behind Track-React: how we inject async tracking logic into React apps without needing a wrapper component, how we traverse ASTs using Babel, how we built a custom Vite plugin and Chrome DevTools panel, and how we solved the many challenges that came with wiring it all together.

Read more

Finding a Path As a Self-Taught Software Developer, or How I Learned to Build Things with Code

My journey in software development began several years ago after a conversation with a friend. He had recently hired a small development company to help him build an app for his commercial real estate business. As we spoke more about it, I thought about my own ideas for apps and wondered if that was something I could do.

I had learned some basic HTML & CSS and built a couple of simple websites in the past, but I had no experience with anything more complex than that and started thinking about what I might need to learn to build apps myself.

It was around then that I decided I was going to learn how to code.

Read more

Creating the Gigpromoter App

(This post originally appeared under the title “From the Practice Room to the Stage with Gigpromoter” in the Gigpromoter blog in March 2022.)

Building a career in the arts can feel like a complex and frustrating puzzle. How does an aspiring songwriter become an established performer? How does an artist bridge the gap between practice room and performance venue? Is it possible to book shows, tour and perform without the assistance of a manager, booking agent and publicist? How does an artist build a career from the ground up?

Read more

© 2024 Peter Ciluzzi