AI-Driven Development Approach
Share
Creative Engineering is a new approach to software development where developers leverage AI prompting instead of traditional coding to build interactive experiences.
What is Creative Engineering
- A development approach where engineers primarily use AI prompting rather than writing code directly
- Combines traditional software engineering knowledge with AI capabilities
- Guillermo Rauch: "I've been an engineer for a couple decades now and I no longer write code I only prompt"
- Represents a shift in how developers create interactive experiences
Software 1.0 vs Software 2.0
- Andrew Karpathy's framework distinguishes traditional programming from AI-driven development:
- Software 1.0: Traditional programming with deterministic algorithms, data structures, and explicit control
- Software 2.0: Relies on training models with data, producing more probabilistic and emergent behaviors
- Software 2.0 has "magical emergent properties" not explicitly programmed by engineers
- Even model creators don't fully know what's possible with their models
Real-world example: Doom CAPTCHA
- Guillermo created a CAPTCHA alternative where users must kill three enemies in Doom to verify humanity
- Process involved:
- Using V0 to create a Google CAPTCHA-like interface
- Leveraging open-sourced Doom code
- Using a WebAssembly version that runs in browsers
- Prompting AI to spawn users in specific levels
- Hacking the C codebase to create a constrained game version
- The project went viral with multiple news articles despite taking "a couple hours of prompting"
Business opportunities in Creative Engineering
- Potential for entire platforms dedicated to creative coding with AI
- Opportunity for "the next generation of artists" to work in this "dynamic medium"
- Entrepreneurs can create vertical-specific AI tools (like "V0 for video games")
- No need to train foundation models - just "put the pieces together into opinionated workflows"
- Look for "clusters of queries" people are making to ChatGPT that could become platforms
Benefits of Creative Engineering
- Dramatically reduces development time
- Makes creation accessible to more people
- Enables rapid prototyping and experimentation
- Allows for more interactive and dynamic experiences
- Combines the best of Software 1.0 and 2.0 techniques