At what time do you deploy to production?
scoutzie.com
scoutzie.com
The secret is in the tests. Every time you break the site you add a new test to make sure it never happens again. As long as you run the tests on parallel you can add virtually unlimited number of tests.
We do double-digit deploys daily and as we get more developers that number increases. We did 30 deploys yesterday, and >300 in September, and the amount of time, trouble, and frustration it's saved us is immeasurable.
Pushing code to production should be an automated task that anyone can setup these days using something as simple as Fabric. Heck, code in reverse release scripts too.
And if you have few boxes in your farm/lb then push to half of them, monitor and if all good push to the rest. You should have 0 downtime in this model. Even with 2 instances under a load balancer.
All this requires some initial time expenditure but over the long term saves you a ton of time, headaches, lost sleep etc and allows you to push at anytime of the day.
Stage One: Right after work on Friday (until some big client that files all their payments on Friday afternoon complains.)
Stage Two: Late on Friday night (until problems arise and all but one of the mainframe admins have gone camping for the weekend.)
Stage Three: Late on Thursday night (until problems arise the next morning and half of the DBA's are on vacation and the other half are "working from home")
Stage Four: Late on Wednesday night (until problems arise that take the system down for 18 hours and impact clients on Thursday morning.)
Stage Five: Right after work on Friday.
Given that it was the sort of place where one developer didn't have access to deploy code and had to go walk a senior developer through making the changes by hand (and we didn't use a revision control system), that was probably an optimal circumstance.
5:00 PT is midnight UTC, so Europe is more likely to have just gone to bed.
If you push at any other time you'll end up not having any power on finding out when stuff is wrong. Friday or weekend pushes are an absolute bad idea most of the time.