## Developer Reflection – Project Zed

For Project Zed, I built a Link Collection App — essentially a personal, aesthetic, Type-A-sister of Pinterest without the boards. Users can save links, categorize them, upload optional thumbnails, and view everything in a responsive grid layout. I chose this because it felt useful, familiar, and scalable. It also gave me enough flexibility to design something that looked like me while forcing myself to push further in JavaScript structure, async logic, and UI thinking than I had in any of the earlier projects. It wasn’t about producing the most complex app possible. It was about taking my existing skills and stretching them in a direction that felt manageable but still new.

A lot of Project Zed was upskilling work that built directly on Projects 1–3. From Project 1, I took the basic idea of structuring a page and styling components, but shifted into more advanced territory: using CSS variables to build a reusable design system, creating a multi-breakpoint responsive layout, and using CSS Grid in a way that adapts to unknown content sizes. Project 2 prepared me for the DOM manipulation side — rendering dynamic cards, handling form inputs, validating entries, and deleting items. But in this project, those patterns became more complex. Instead of simple arrays of text, my data model included timestamps, optional fields, and encoded images. And from Project 3, I carried forward the mindset of working with asynchronous operations. Even though I didn’t use an external API, implementing FileReader introduced a similar async challenge. I had to understand events, callbacks, and how to time my saving logic so images rendered correctly. Across all of this, I also introduced modular JavaScript for the first time — separating storage, categorizing logic, and UI rendering into different files. That alone felt like a major step up from previous projects.

AI changed my development process the most in how I approached problem-solving. Instead of guessing until something worked or running in circles, I started asking AI to explain concepts I didn’t fully understand. When AI introduced a new technique — like using the URL constructor for validation or understanding how FileReader’s async events fire — I researched each one until I could rewrite the code confidently. AI also sped up repetitive tasks. For example, it helped sketch out early versions of my CSS Grid, or provided sample modal patterns, but I never copied anything directly. I always rewrote and customized the code so it actually fit my project’s architecture and my design goals. Using AI didn’t make me less hands-on; it made me more precise. I didn’t waste time stuck on an issue for hours, and I didn’t settle for a half-understood fix. AI let me reach a point where I could build faster and understand more deeply.

What surprised me most was how much more effective AI became once my prompts improved. In the beginning, my questions were aesthetic or vague — things like “make this more it-girl,” “I don’t like the grey,” or “can this be pearly and creamy?” Those were useful for design direction, but not very helpful for deeper development. As I kept iterating (and restarting the project multiple times), my prompts naturally shifted into more specific, code-focused questions: asking why a line in my CSS was underlined, whether a separate categorizer.js file was necessary, or how to make thumbnails optional without breaking the card layout. Once my questions became more targeted, the AI responses became more substantial. I wasn’t just getting suggestions. I was getting explanations I could actually build from.

If I were to do this again, I would plan my architecture earlier. I rebuilt this project three different times, mostly because I jumped into coding before I had fully thought through the data structure and rendering flow. Once I adopted modular JS, everything felt easier and more organized. Next time I would sketch that structure first instead of stumbling into it halfway through development. I would also define my minimum viable product earlier. I had ideas for search, sorting UI, and auto-generated thumbnails, but those fell away as time tightened. A clearer MVP would have made my process smoother.

My confidence as a developer shifted a lot during this project. Before, I felt like I could follow instructions and troubleshoot smaller problems, but I didn’t feel capable of designing a full project architecture or understanding more advanced JavaScript patterns. Project Zed changed that. I now feel capable of building something from scratch, organizing code in a scalable way, and learning unfamiliar concepts quickly. AI didn’t replace my learning; it accelerated it. And I ended this project feeling more like a real developer — someone who can debug, research, refactor, and make intentional design decisions — rather than someone who just assembles pieces until the code works.