Why Devs needs                          Ops                            Or MP’s, Crowds and failureSaturday, 15 October 2011
Copyright © Steve Bell 2009                             MP’s ExpensesSaturday, 15 October 2011
Saturday, 15 October 2011
Simon Willison             “You can now build working             software in less time than it             takes to have ...
Prototyping                    • 1 Meeting = 6 people * 1 hour = 6 hours                    • 1 prototype = 1 dev * 6 hour...
Example                    • MP’s Expenses                     • 1 Developer/ 1 Week                     • 1 Designer / 2 ...
Not always roses                    • Prototype code does not scale                    • Prototyping devs don’t think of e...
Crash #1                    • Default Configs                     • Our default                       • 50 apache children ...
Saturday, 15 October 2011
Saturday, 15 October 2011
ORM’s suck mkay                    • Pages.object.filter                            (votes__isnull=True).distinct.count    ...
Crash #2                    • The code was bad, the SQL was really bad                    • but it takes a sysadmin to poi...
How to migrate a DB                    • There’s a lot of tools                    • It could be quite an effort          ...
How to migrate a DB                    • ssh mps-live “mysqldump mp_expenses” |                            sed ‘s/ENGINE=M...
Next time                    • Things our sysadmin would have suggested                            if he’d heard about the...
httpperf /                            apachebench / curl                                +forloopSaturday, 15 October 2011
Squid/VarnishSaturday, 15 October 2011
So why didn’t we?                    • “SysAdmins slow us down”                    • “SysAdmins ask difficult questions”   ...
What do we know now                    • “SysAdmins ask the right questions”                    • “SysAdmins want repeatab...
DevOps                    • Sometimes what you need is not a                            “SysAdmin”                        ...
Upcoming SlideShare
Loading in …5
×

Ignite@DevOpsDays - Why devs need ops

11,282 views

Published on

A 5 minute talk given at DevOpsDays Goteborg wherein I declare that devs and ops need to work together because their skills mesh nicely.

Published in: Technology
1 Comment
6 Likes
Statistics
Notes
  • A fun little presentation on why RAD/Agile teams need Operations as part of the team.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
11,282
On SlideShare
0
From Embeds
0
Number of Embeds
8,792
Actions
Shares
0
Downloads
42
Comments
1
Likes
6
Embeds 0
No embeds

No notes for slide

Ignite@DevOpsDays - Why devs need ops

  1. 1. Why Devs needs Ops Or MP’s, Crowds and failureSaturday, 15 October 2011
  2. 2. Copyright © Steve Bell 2009 MP’s ExpensesSaturday, 15 October 2011
  3. 3. Saturday, 15 October 2011
  4. 4. Simon Willison “You can now build working software in less time than it takes to have the meeting to describe it” Photo courtesy of Tom CoatesSaturday, 15 October 2011
  5. 5. Prototyping • 1 Meeting = 6 people * 1 hour = 6 hours • 1 prototype = 1 dev * 6 hours = 6 hours! • New Software Development Stacks for Rapid development • Django, Rails, Node.js, Lift, Moustache, Play, .NET MVC Scalatra...Saturday, 15 October 2011
  6. 6. Example • MP’s Expenses • 1 Developer/ 1 Week • 1 Designer / 2 Days • 1 SysAdmin / 1 Day • EC2 - £50 • Live 10 days after work startedSaturday, 15 October 2011
  7. 7. Not always roses • Prototype code does not scale • Prototyping devs don’t think of everything • ...(or even anything!)Saturday, 15 October 2011
  8. 8. Crash #1 • Default Configs • Our default • 50 apache children • 30 MySQL connections • This isn’t going to work well!Saturday, 15 October 2011
  9. 9. Saturday, 15 October 2011
  10. 10. Saturday, 15 October 2011
  11. 11. ORM’s suck mkay • Pages.object.filter (votes__isnull=True).distinct.count • SELECT COUNT(DISTINCT ...) FROM ‘expenses’ LEFT OUTER JOIN ‘vote’ ON (...) WHERE ‘vote.id’ IS NULLSaturday, 15 October 2011
  12. 12. Crash #2 • The code was bad, the SQL was really bad • but it takes a sysadmin to point out... • DB using 135% of CPU • DB and Apaches on the same box = bad ideaSaturday, 15 October 2011
  13. 13. How to migrate a DB • There’s a lot of tools • It could be quite an effort • It’s really broken now • SysAdmins are really evil (especially @pnasrat)Saturday, 15 October 2011
  14. 14. How to migrate a DB • ssh mps-live “mysqldump mp_expenses” | sed ‘s/ENGINE=MyISAM/ENGINE=InnoDB/ g’ | sed ‘s/CHARSET=latin1/ CHARSET=utf8/g’ | ssh mysql-big “mysql -u root mp_expenses”Saturday, 15 October 2011
  15. 15. Next time • Things our sysadmin would have suggested if he’d heard about the project prior to the day of releaseSaturday, 15 October 2011
  16. 16. httpperf / apachebench / curl +forloopSaturday, 15 October 2011
  17. 17. Squid/VarnishSaturday, 15 October 2011
  18. 18. So why didn’t we? • “SysAdmins slow us down” • “SysAdmins ask difficult questions” • “SysAdmins want to puppet everything”Saturday, 15 October 2011
  19. 19. What do we know now • “SysAdmins ask the right questions” • “SysAdmins want repeatability” • “SysAdmins know some gnarly stuff” • “SysAdmins can make us go faster”Saturday, 15 October 2011
  20. 20. DevOps • Sometimes what you need is not a “SysAdmin” • Uptime is important • What you need is “Crash Mat Arranger” • Recovering from failure fast is importantSaturday, 15 October 2011

×