We stand at the threshold of a new era in software engineering. We’ve waited decades for intelligent assistants that understand code, context, and intent and now they have finally arrived. Yet too many developers hesitate, bound by outdated notions of what “real” programming means. This manifesto rejects that hesitation. We believe that embracing AI is not about replacing human creativity, but amplifying it. It’s about spending less time on repetitive tasks and more time solving meaningful problems. It’s about delivering better software, faster, while maintaining the highest standards of quality and ethics. The question is no longer whether to use generative AI in software development, but how to use it responsibly and effectively. Here are our principles.
1. Always ask AI to implement a feature before doing it manually
Whether it’s a UI component, API endpoint, or data model—let AI take the first stab. You’ll often get 80% of the work done instantly, and you can refine from there.
2. Use AI for code analysis before debugging or refactoring
Ask it to explain complex logic, suggest codebase improvements, or spot bugs. It’s like having a second brain that never gets tired or misses edge cases.
3. Use AI to write all your documentation
Generate docstrings, README files, architecture summaries, or onboarding guides. It can tailor docs for different audiences—devs, PMs, or even clients.
4. Use AI to review and refactor code before pushing
Ask for performance improvements, security checks, or cleaner abstractions. It’s like a tireless senior engineer reviewing your work 24/7.
5. Let AI generate and refine tests before you write any
Unit tests, integration tests, edge cases—AI can scaffold them fast. You can then tweak or expand based on your specific logic.
6. Automate boring tasks with AI-generated scripts
Let AI write shell scripts, data migration tools, cron jobs, or build scripts. If it’s repetitive or tedious, AI can script it—saving hours of manual work.
Moral Standards
Some argue that using AI to write code is “cheating” or diminishes the craft of programming. We reject this view: the real measure of a developer isn’t how much they type, but whether they deliver quality software that solves real problems in a responsible and efficient way.
1. Maximizing productivity with AI is fair—neglecting it isn’t.
If AI helps deliver faster, better results, it’s in the customer’s best interest to use it. Holding back would be doing them a disservice.
2. You own the output, not the AI.
AI doesn’t take responsibility for quality, accuracy, or impact—you do. Always review, refine, and stand behind the final result.
3. Use AI tools only with client approval.
We apply AI ethically: only when the customer has explicitly approved its specific use and ideally provided the AI tools to use.
Pitfalls
We recognize that AI is powerful, but not without risks. Avoid these common traps that undermine everything we’ve outlined above.
1. Loss of overview
AI generates code faster than you can understand it. Combat this with clear documentation, architectural diagrams, and specs before implementation.
2. Accepting low quality
Speed tempts you to skip review—don’t. Treat AI output as a draft, test thoroughly, and ironically, use AI itself to test and review code.
3. Using AI when you shouldn’t
AI struggles with specialized domains, novel algorithms, and deep context. Step in manually when problems are poorly defined or AI repeatedly fails.
Enjoy AI (responsibly)!