Your SlideShare is downloading. ×
Get Faster - While You're Getting Better
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Get Faster - While You're Getting Better

1,167
views

Published on

Presentation given 4/16/08 by Anthony Stevens at the Seattle Tech Startups monthly meetup

Presentation given 4/16/08 by Anthony Stevens at the Seattle Tech Startups monthly meetup

Published in: Business, Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,167
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
40
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Transcript

    • 1. Get Faster – While You’re Getting Better Solving the Tension Between Speed and Quality in Software Product Development
    • 2. The Race Goes To the Swift and The Bread Goes to the Wise
    • 3. What’s the Right Product?
      • You may not know until you’ve tried and failed a couple times – which is why product development for startups is so challenging
    • 4. PayPal: “was really not founded to do payments at all.” Flickr: “…was kind of a lark. It was a side project we built while we were in the process of building [a game].” Hotmail started as a web-enabled database/PIM.
    • 5. Maximize Your Advantages
      • Flexibility
      • Speed
      • Lack of Bureaucracy
      … and Minimize Your Disadvantages
      • Time
      • Money
      • Uncertainty
    • 6.
      • “ Reduce. Do as little as possible to get what you have to get done. Do less of it; get it done. If you’ve got two things that you need to put together, take away until they go together. Don’t add another thing. Because you and understand it better; you can analyze it more cleanly. The UI will be easier. Doing less is so important. ”
      • -- Joshua Schachter, founder of delicious
    • 7. Cost of Defects
    • 8. Requirements Are Dead
      • Your product will change
      • You need to get to market fast
      • Your expertise is in technology or sales, not technical writing
    • 9.
      • The trick is not to try harder avoid problems in the first place, but increase your effectiveness and the efficiency with which you dispose of the problems that come up
    • 10. Long Live Agile
      • Lean and Mean
      • Release NOW
      • Short, Fast Iterations (aka “sprints”)
      • Talk To Customers
      • YAGNI
      • Simple >>> Complex
      • Measure Progress By Working Code
    • 11. Build Safety Nets
      • What’s a Safety Net?
      Hint: It’s not just a practice that allows you to sleep better at night.
    • 12. Source Control
      • Check in early and often
      • Leave nothing out
      • TONS of options: CVS, SVN, Git, TFS, Vault
      • Backing up to thumb drive is NOT source control!
      • Best Practice: Tonight, Before You Go To Bed, Set Up An Account With Unfuddle.com
    • 13. Issue Tracking
      • Set up a common, shared repository for bugs, issues, feature requests, tasks, etc.
      • Lots of freeware available to fill this need
      • Review often
      • Best Practice: Write ACTIONABLE items
      • in your lists.
    • 14. One-Click Deployment
      • Get as close as you can to being able to build and deploy your product in ONE CLICK
      • Source Code
      • Build Your Database
      • Insert Test Data
      • Deploy to Server / Create Install Files / etc.
      • Best Practice: Every Week, Remove One Manual Step From Your Build
    • 15. Continuous Integration
      • This is a software service that runs your one-click build - automatically
      • AKA “nightly builds”, “automated builds”
      • Cruise Control, Perforce, many others
      • Best Practice: Run Builds On Every Commit, and Fix Problems Immediately
    • 16. 91% of successful Meerkats use Continuous Integration
    • 17. Unit Tests / Automated Tests
      • Myth: Unit Tests Slow You Down
      • Myth: Unit Tests Are Only Effective If You Have 95% Code Coverage
      • Focus on the Squirrels
      • Like A Good Virus, Unit Tests Should Multiply Over Time
      • Best Practice: Include Unit Tests In Your Continuous Integration Builds
    • 18.
      • Moving From the
      • Tactical to the Strategic
    • 19.
      • Hire Selectively
      • Spread Ownership
      • Shared Vision and Goals
      • Be Honest
      • Have Empathy
      • Constant Feedback and Communication
      Peopleware: Good People Are Always More Important Than A Good Idea
    • 20. If You Aren’t Leveraging Other People’s Code, You’re Losing
      • “ Roll Your Own” = “ I’ll be looking for a job in 6 months ”
      • Use Frameworks
      • Find and Use Cheap IT Outsourcing
      • Use Good Tools
    • 21. Remoting
      • Do Distributed Teams Work For Startups?
      • It’s a Tradeoff between Expertise, Communication and Coordination –but which is most important?
      • There is no best answer
    • 22. Question Received Wisdom
      • “ You need a project manager”
      • “ You need to be solid and stable before you release”
      • “ Language ‘X’ is the only good choice”
      • “ You need a design spec”
      • “ You need to staff up”
      • “ You need funding”
      • “ You need to own your hardware”
    • 23. Thank You, and Good Luck! Anthony Stevens [email_address]

    ×