Bossy Lobster

A blog by Danny Hermes; musing on tech, mathematics, etc.

Edit on GitHub

Remodeling the House While Living in It

Rename Name Tag

Minor Mismatch

When using a database in an application, there are many ways the idioms from the database ecosystem can disagree with the idioms in the programming language used to write the application. The object-relational impedance mismatch is one such example of this, but that is mostly about differences between …

Edit on GitHub

What Is a Milestone Migration and Why Do I Care?

Database Milestone

Motivation

Over time an application becomes a living thing. When operating a running service, it's crucial to not only ask the question

Does the code being deployed work?

it's also crucial to ask

Can I safely deploy this change given the currently running version of my service?

This second question …

Edit on GitHub

The Case for a Metadata Table for Database Migrations

Tracking Migrations

Motivation

As features are added, changed or deleted, the data model used by an application usually changes as well. For most database-backed applications, this means migrations are needed.

With this in mind, the fundamental goal of database migrations:

The current database schema should match the currently running code.

However, achieving …

Edit on GitHub

When Elementary Becomes Elliptic

I enjoy watching math videos targeted at advanced high school or undergraduate students — even if the topics are far away from research level mathematics. I was recently watching a "quick and easy challenge in algebra" video from SyberMath1 that used a neat trick to solve the problem. As the …