Most mainstream databases implement some form of “incremental” backup.
If you’ve already performed a backup, subsequent ones can be done by only transferring what has changed since your last backup.
It’s a clever optimization.
But it turns out, in many cases a full backup is much faster than an incremental one.
Your laptop spends all day lying to you.
If you want your code to run well on server hardware, best write it on server hardware.
If you’re stuck working from home for a few weeks due to coronavirus, welcome to remote work life!
Here are some things that I’ve seen make remote life successful.
Your Makefiles are full of tabs and errors.
An opinionated approach to writing (GNU) Makefiles that I learned from Ben may still be able to salvage them.
If you are familiar with stack machines, it turns out that you also understand the broad strokes of how most US legislative bodies operate.
Seeing the commonality will instill in you the sense of awe that only reading execution traces from an operational quarter millennia old computer can.
A friend of mine, I won’t share his name for privacy reasons(1), told me he had an interesting realization one day.
Thinking back to the projects he’d done for big banks before his current job, each and every one of his software algorithms had
eventually ended up in The Guardian under a headline like “Giant Bank Inc. indicted for massive automated customer fraud system, AGAIN!".
(Spoiler: trusting your contributors works)
Some years ago, I polished up and released an abandoned project for storing financial data in Django.
It let you declare “Money” fields on your models, dealing with proper storage and currencies for you.
My use case for the library,
django-money eventually faded, but it ended up teaching me a useful lesson in trust and OSS abandonware.
Transactions are not very hip anymore - so unhip, in fact, that people started building databases without them.
Alas, as people who decided to try those databases found out, transactions remain a fundamental aspect of applications that don’t break horrifically.
Except, it turns out that even if you have transactions, it’s surprisingly easy to shoot yourself in the foot.
We like to blame the worlds governments, or the ominous Them, for the current mass surveillance society we live in. It’s an easy way out - but pull the curtain aside and you and I both know there is a programmer sitting behind it.
We, the profession of software engineering, built the Orwellian future we now inhabit, and it is high time for a retrospective.
On march third, a young man named Brian Flanagan was refused entry into Ireland. The border police officer he happened to have been paired up with believed the occupation Brian cited as his reason for entry, “user experience designer”, was made up.