As I’ve developed “Closet Conscious,” leveraging Generative AI tools like ChatGPT has been a game-changer for productivity, problem-solving, and streamlining development. AI became my coding assistant, but like any tool, it required thoughtful use to be effective. Here are some key lessons and strategies I’ve learned along the way:
1. Starting New Threads for Context Clarity
In my early AI interactions, the conversations evolved, but old context often muddled responses. I found that starting a new thread when things got confusing helped AI generate more accurate and relevant suggestions. Keeping conversations focused and clear is essential for avoiding irrelevant or outdated information.
2. Refactoring with AI: An Efficiency Boost
Refactoring code—especially when introducing internationalization (i18n)—can be tedious. AI dramatically improved this process. By instructing ChatGPT to handle the refactor, I saved hours that would have otherwise been spent adjusting individual components. AI handled repetitive tasks, such as adding language support, with increased efficiency.
3. Providing Detailed Context for Better Solutions
I learned early on that providing clear and detailed context is key to getting the best results from AI. When I used ChatGPT to help with i18n, explaining the app’s goals and structure led to much more precise and accurate code generation. Without that clarity, AI might miss important nuances, producing suboptimal suggestions.
4. AI Isn’t a One-Shot Solution
While AI often provides a helpful starting point, it’s rarely the perfect solution on the first try—especially for complex business logic. AI sometimes generates plausible but incorrect suggestions. To address this, I treat AI as a collaborator rather than a one-shot solution, iteratively refining the code and thoroughly testing each piece.
5. Learning Through AI
When I began programming, Generative AI became my virtual teacher. ChatGPT provided step-by-step explanations of coding concepts, syntax, and design patterns, allowing me to learn at my own pace. This immediate feedback loop helped me gain confidence, making complex ideas easier to grasp through interactive learning.
6. Keeping Up with Changing Technologies
One challenge I faced was that AI doesn’t always keep up with the latest technology changes. For example, ChatGPT suggested outdated methods for Supabase.
By supplementing AI with up-to-date documentation, I ensured that the generated code aligned with current best practices, showing that AI can adapt when provided with the right resources.
7. Using Pseudocode for High-Level Planning
When I’m unsure how to tackle a specific problem, I often ask ChatGPT for high-level pseudocode. This approach helps me visualize the logic and structure before diving into the actual coding.
AI-generated pseudocode has been particularly useful when navigating new technologies, providing a clear framework that I can refine and implement.
8. Version Control as a Safety Net
AI-generated code doesn’t always work as expected, so having a safety net is crucial. Version control has become an essential part of my workflow, allowing me to easily revert to previous stable versions if necessary. This practice safeguards against bugs or unintended consequences from AI-suggested changes.
9. AI for Syntax Corrections
Generative AI excels at detecting and correcting syntax errors, saving me from hours of troubleshooting small mistakes like misplaced commas or brackets.
Over time, this process has also improved my understanding of coding syntax, making me a more confident and efficient developer.
10. Managing Complexity with Domain-Driven Design (DDD)
In early stages, my codebase was a bit chaotic, and AI-generated suggestions often didn’t fit well. Adopting Domain-Driven Design (DDD) helped break down the app into smaller, more manageable domains, allowing AI to focus on specific contexts. This shift improved the accuracy and usefulness of AI-generated code.
11. Understanding Trade-offs with AI
AI has been instrumental in helping me understand trade-offs between different technologies. For example, when deciding between state management tools like Bloc, GetState, Provider, and Riverpod, AI helped me analyze their pros and cons in relation to Closet Conscious’s goals. This informed decision-making process would have been more time-consuming without AI’s assistance.
12. Taking Breaks for Better Productivity
An unexpected benefit of using AI is that it naturally encourages breaks. While waiting for longer code generation, I take short breaks to refresh my mind, often returning with new insights. What initially seemed like downtime turned into a productivity boost, helping me avoid burnout during long coding sessions.
13. Parallel Task Management
By leveraging AI for multitasking, I can manage multiple features simultaneously. While AI generates or reviews code, I can switch to other tasks, keeping up my momentum. This approach has allowed me to tackle complex projects without getting bogged down in any single area.
14. Clarifying Business Logic with AI
AI is excellent at generating code, but if the business logic isn’t clear, the results can be off the mark. By sketching out clear business rules using tools like Miro and sharing detailed instructions, I’ve ensured that AI-generated code aligns with the project’s objectives. This strategy helps AI provide more relevant suggestions.
If you want to try Closet Conscious App, feel free to give it a twirl in iOS and Android.
Leave a Reply