2. THE ESSENTIALS
NO!
Keep focussed - feature creep kills
Code is the end product, not the start
Knowing what to build is the work
Start as small as possible and grow with feedback
The long tail is where it's really at
3. THE BEAST
To manage a software project you need to understand it's nature
Software development is very young
No real answers
There is no such thing as finished
Elements of engineering, art and something new
4. THE PLAN
Minimum Viable Product - it's so much smaller than you want it to be
Do you really need a website?
Maybe you just need a mailing list and a little black book?
Can you just use tumblr or facebook?
Humans are your most versatile tool, work out how to use them well
Get feedback as soon as possible - before you code
When you start coding, you might be avoiding the real work
5. THE LONG TAIL
A website is not just for launch
Plan for a lifespan of about 3 years
There will be bursts of code, but most expense will be ongoing
Prepare the ground, set up good processes and standards
6. USER STORIES
Understand what the problems you are trying to solve are
Don't start with a solution
Involve your development team in the problem solving
As a :
I :
Be able to:
So that I can:
(ROLE)
(PRIORITY)
(ACTION)
(OUTCOME)
Potential Customer
Must
Easily find product
information
Compare offerings
Must/should/could
7. GO SHOPPING
Development is expensive, do as little as you can
Utilise as many pre-built elements as possible
If you have a clear plan, outsource development
Setting up a development team is a big job
8. THE DEV TEAM
1 good developer is worth 10 poor developers
Much more flexible, but more expensive than outsourcing
Recruiting good people is not easy
Don't take developers at face value, look at code and references
Adding more developers does not always make building faster
Create an environment that attracts and keeps developers
Be clear about IP and Disclosure - you can be open or closed
9. WHAT'S GOING ON
Have access to source code
Watch the code commits
Take part in standing meetings
Get regular demos
(that you can actually use)
10. METHODOLOGY
“Agile” methodologies are good for ongoing development
Solving problems rather than creating documentation
Different methods for different stages of the project
Methodology is not just for the coders – get everyone on it
11. PROCESS
Make your processes clear, use them and review them
Implement automated build and deployment tools from the start
Tests are worth the effort - they save loads of pain
Measure everything you can - dashboards make people happy
Don't be held hostage by your developers - peer review
Due diligence
12. DOCUMENTATION
Documentation is not a programmers job!
Document what a developer needs to know to join your team
Aim to maintain consistent implementation style over time
13. OPERATIONS
Keep track of ideas and feedback
Establish a clear way to report and track bugs
Make sure that you allocate time for bugs
Users are your best testers - let them talk to you
Don't exhaust your developers – work office hours
14. THE END
Just say NO!
Have a plan
Get good people
Process keeps things flowing
The long tail is where it's at