• Like
  • Save

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

From Dev To Production

on

  • 939 views

This is from a talk Sam Newman (http://www.magpiebrain.com/) and I gave at the ThoughtWorks UK Away Day 2009. It covers a lot of things people often forget when writing software that make getting into ...

This is from a talk Sam Newman (http://www.magpiebrain.com/) and I gave at the ThoughtWorks UK Away Day 2009. It covers a lot of things people often forget when writing software that make getting into and staying up in production easier.

Statistics

Views

Total Views
939
Views on SlideShare
929
Embed Views
10

Actions

Likes
1
Downloads
0
Comments
0

1 Embed 10

http://www.slideshare.net 10

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • C&S <br />
  • Chris <br />
  • Sam <br />
  • Chris <br />
  • <br /> Chris <br /> <br /> <br /> <br /> Naming convention (show what needs to be overriden <br /> by naming) <br /> <br />
  • Sam <br />
  • Chris <br />
  • Sam <br />
  • <br /> Sam: <br /> <br /> <br /> <br /> - Mention DSG logs <br /> <br /> <br /> <br /> - Mention nearly <br /> killing AT! <br /> <br />
  • <br /> Chris <br /> <br /> <br /> Mention Nagios, Big Brother etc. <br /> <br />
  • Sam <br />

From Dev To Production From Dev To Production Presentation Transcript

  • ThoughtWorks StrongFoundations From Dev To Production Sam Newman Chris Read 2009 Away Day
  • ThoughtWorks StrongFoundations Introduction • Whatʼs the point of coding? • Weʼre not done until itʼs running in production • Thereʼs more to an application than the “business stories” • Thereʼs more to test than application functionality
  • ThoughtWorks StrongFoundations Build • Build is NOT the same thing as deployment • The build is everyoneʼs responsibility • The goal is for a checkout and build • Itʼs all about repeatability • Version control tools where possible – avoid requiring things that need to be installed to perform builds
  • ThoughtWorks StrongFoundations Built Artifacts • Make it simple to tie running code or built artifacts back to the code that created them • Keep binary artifacts and configuration separate • Build an artifact once, and deploy it to all the environments you care about
  • ThoughtWorks StrongFoundations Configuration • Default to production configuration • Validate your config - fail fast if wrong • Clearly identify which properties should be overriden between environments • Make it east to view the config of a running system – Identify source of properties (defaulted or overriden)
  • ThoughtWorks StrongFoundations Configuration Example
  • ThoughtWorks StrongFoundations Deployment • Code is useless until it is running where it should be • Use the same deployment mechanism in dev as in prod • Work with ops to define your deployment process • Donʼt think you have to use the build tool to do deployment
  • ThoughtWorks StrongFoundations Environments Ease Of Use Dev QA Prod More Production Like
  • ThoughtWorks StrongFoundations Logging • Default to the quietist level • Anything other than debug or trace logging should be considered a UI • Logging is a different type of configuration to normal application configuration • Seriously consider the need to change logging configuration on a running system without a restart
  • ThoughtWorks StrongFoundations Monitoring • Understand the tools already being used to monitor systems and work out how to expose your data to these systems • Talk to ops about the kinds of things that need monitoring • Always think: if you get a 2am call about something not working in the system, what do you need to know?
  • ThoughtWorks StrongFoundations Performance • Automate performance runs as soon as you can, if not sooner • An isolated environment completely under your control is essential • Testing with non-performance load via exploratory testing can yield useful information • Compare like with like – itʼs all about the deltas