Spite Driven Development (SDD) is my preferred development methodology. I have found it by far my most productive style of software engineering, and has been responsible in whole or part for most of my projects (see: Penultimate Guitar, Minecraftle, Alculator, Status Messenger).
While it is extremely effective for building software quickly, it is often destructive to other aspects of one's life, such as healthy eating, relationships, and especially sleep.
History
I got mad at a competitor/company/friend with shitty practices/existing tool. Spend multiple days writing code. git push
Spite Driven Development Cycle
- get mad
- think you can do it better yourself
- feel the need to prove you can do better
git init
- design feature with a scope exactly commensurate to your anger
- forgo loved ones and human interaction
- finish feature
git commit
- see 5
- deploy
- see 5
- run it 40 times just to watch it work, injecting dopamine directly into your veins
- rest
Goals
Victory.
Non Goals
Sustenance, testing, clean code.
Development Frameworks
Much like how ruby+rspec is very well suited to test driven development, many frameworks are well suited to SDD. Whichever framework you know is the ideal framework for SDD. Time is of the essence and you have no-one to please but yourself. Spite burns hot but it burns dirty, and it is not a renewable resource. Your must strike while the iron is hot and complete the project before you are sapped of the hatred that started all this.