97 Things Every Programmer Should Know

(Chris Devlin) #1

(^62) 97 Things Every Programmer Should Know
Cal Evans
iTS HA HAPPENED TO EVERY ONE OF US AT SOME POiNT. Your code was
rolled onto the staging server for system testing, and the testing manager
writes back that she has hit a problem. Your first reaction is “Quick, let me fix
that—I know what’s wrong.”
In the bigger sense, though, what is wrong is that as a developer you think you
should have access to the staging server.
In most web-based development environments, the architecture can be broken
down like this:



  • Local development and unit testing on the developer’s machine

  • Development server where manual or automated integration testing is
    done

  • Staging server where the QA team and the users do acceptance testing

  • Production server


Yes, there are other servers and services sprinkled in there, like source code
control and ticketing, but you get the idea. Using this model, a developer—
even a senior developer—should never have access beyond the development
server. Most development is done on a developer’s local machine using his
favorite blend of IDEs, virtual machines, and an appropriate sprinkling of
black magic for good luck.


Don’t Touch That Code! ............................

Free download pdf