Hot-swapping infrastructure services on-the-fly.
Earlier this week we had what could have been a catastrophic infrastructure failure - our ElasticSearch cluster went offline. Given that this powers the core functional element of our entire business, this was not a good thing to wake up to.
As I started investigating what had gone wrong, I could practically hear the sniggers from the cloud . . .
Be very wary of using the pip '-e' flag in production!
Each time we deploy to Heroku, the platform runs the following command:
pip install -r requirements.txt
This command installs . . .
Welcome to the new home of the YJ tech blog.
Welcome to Silvrback, the new home of the YJ tech blog.
Being a geeky bunch, having a blog on Tumblr or Wordpress was never really going to cut it for the YJ tech blog. My original requirements were very simple:
- Write in Markdown
- Store in git.
I didn't really want the hassle of picking a theme, or worse than that, having to edit or . . .
We publish our changelog on the site, which we extract from Heroku's release API, and push to GitHub's Gist API. Here's how we do it.
I've written a couple of posts already about our deployment process, and its creeping automation. The final step has always been updating the changelog, which we publish on the site.
Why do it . . .
Demonstrating the power of the web, and the great benefit to be had in publishing something even if it's not perfect, no sooner had I hit the send button than @stevejalim (of this parish) revealed to me that if you use a dict instead of a tuple, you can access the value by name, rather than index.
Thank you Steve.
Using tuples in . . .
Inline CSS style attributes get a bad press - but sometimes they can be A Good Thing.
If you have read anything about CSS in the last five years, you will know that inline CSS styles are A Bad Thing. Some claim that the existence of inline styles demonstrates bad programming. CSS should be in included static files, which can be combined, . . .
Deployment strategies for the lean generation
If you deploy little and often, two things happen - first, you get a lot better at it, and second, you get to a point where it's easier to fix a deployment issue and redeploy than to attempt a rollback.
If you work in or around a corporate IT department for any length of time you'll get used to hearing a lot about 'rollback . . .