Consistently and Reliably Ship Your Software

by Damir Savkovic, Graphic Designer & Web Developer

How do I build that?

Building something remarkable often starts with a simple question: "How do I build that?" My philosophy in answering this question is rooted in a strategic blend of emulation, innovation, and meticulous planning.

Step 1: Market Research - I begin by diving into the market, identifying the 10 best websites or projects that resonate with my vision. From these, I cherry-pick features and design patterns that align with my goals. This is not just about imitation but understanding what makes these solutions stand out.

Step 2: Strategy with AI - Next, I consult with AI tools, like ChatGPT, to refine my strategy. This involves asking specific questions about technology stacks, design principles, and project management tactics to ensure I'm on the right track.

Step 3: Crafting the Roadmap - With a collection of references and AI insights, I draft a project roadmap. This is where the vision starts taking shape, transforming from abstract ideas to a structured plan of action.

Step 4: Development and Iteration - The building phase is all about tackling tasks systematically until the minimum viable product (MVP) comes to life. But the work doesn't stop there. Post-launch, I focus on iterating based on user feedback and releasing updates that enhance the project's value.

In building projects, the magic lies in the blend of learning from the best, leveraging AI for strategic planning, and embracing the iterative nature of development. What's your approach to building and launching successful projects? Share your strategies or reach out if you're looking for guidance on your journey.

Design philosophy

1. Many roads lead to Rome

Engaging with ChatGPT simplifies the research process for building software projects. By clearly describing your goals and providing sufficient context, such as aiming to develop an e-commerce store using the headless Shopify API for a bicycle shop, ChatGPT can offer insights into suitable frameworks and technologies for your project. It can also highlight potential challenges you might face while developing your Minimum Viable Product (MVP). Comprehensive planning is essential, covering every aspect from selecting the appropriate programming language, frameworks, and user interface design, to API integration, testing, hosting, deployment, and even managing client relations. This process involves a series of strategic decisions that form a detailed logistical plan, guiding the project from its inception to its launch and beyond.

2. Combating analysis paralysis: just do it.

Choosing a technology stack and committing to a development process can seem overwhelming. However, the key is to make a decision, even if it's not perfect. For instance, I opted for NEXT.js, React, Redux, and Shopify, not because they are flawless but because of their widespread industry acceptance and proven viability. Yes, my code can be verbose, and managing state with Redux feels akin to wrestling a python—challenging and sometimes cumbersome. Sure, alternatives like Angular or Svelte offer simplicity, but what truly matters is consistent progress and utilising technologies that have demonstrated success in the market.

The focus shouldn't be on the perfection of your tools but on the art of development and the ability to bring ideas to life. It's about prioritising the delivery of working software and making tangible progress over getting bogged down by the pursuit of an ideal solution. In essence, moving forward and building something tangible is infinitely more valuable than endless deliberation on the optimal approach.

Top tip

You learn more in motion than by staying still. If you find yourself staring at the screen, not knowing where to start, you need to go back to researching and planning your project — you really should never be thinking about how to code something with Chat GPT because you can simply describe the problem you're having and receive a potential solution for you to have a crack at. It might not work, but you can always rewind with GIT and try another way on a different branch if you get stuck.

3. Working large to small.

With thorough research and meticulous planning, every piece should naturally fall into place. The following phases are fundamentally about commitment and perseverance, methodically advancing through tasks until completion. Ensuring that the foundational architecture and framework of your project are solid means that subsequent steps like feature development, catching bugs, polishing the UI will be completed without any major hitches.

This stage demands the utmost patience and persistence. It's about being comfortable with the pace of progress, recognizing that even when it feels slow, you're likely moving faster than you think. It's crucial to be willing to reassess and possibly pivot, understanding that sometimes stepping back is necessary for significant leaps forward.

The overarching goal surpasses the immediate challenges, with long-term productivity taking precedence over temporary setbacks or slow development phases. It's vital to manage your mental and physical well-being through this process, strategically pausing to recharge, ensuring you don't exhaust your resources.

More articles

A Case For Headless E-Commerce

This article explores the benefits and methodologies behind headless e-commerce, showcasing its potential for scalability, customization, and integration with modern technologies. Through the lens of building scalable systems with Turborepo by Vercel and leveraging API-driven architectures, it highlights the opportunities headless commerce offers for creating dynamic, user-centric shopping experiences. The piece also delves into the importance of continuous improvement and adaptability in the digital marketplace, illustrating how businesses can stay competitive by embracing headless solutions.

Read more

Creating Impactful User Journeys & Brands

This blog post by Damir Savkovic explores the intricacies of user experience (UX) design and the significance of branding in the digital age. It is divided into three sections: the first emphasizes the value of seamless UX that goes unnoticed by users, the second discusses the synergy between branding and marketing in establishing a company's identity and connecting with customers, and the third reflects on the global appeal of successful brands, drawing on the author's observations of international brands in Melbourne's CBD. Throughout, Savkovic offers insights into how intuitive design and strategic branding can significantly enhance user journeys and establish strong, resonant brands.

Read more

Tell me about your project

I'm currently based in

  • Melbourne
    Australia 🇦🇺