Hi there, you’re reading this email on our new BetterDev platform. Once we wrap things up, we will open source the whole codebase. In this issue, we have some good reads on database optimization as well as DB migration.
By just having access to a database, someone can create creative payload to download a picture that embed shell code and trigger database to execute it to mine monero.
A nice series about interesting problems and solutions with SQL.
Looks into three classic anti-patterns: the infamous EAV, using multiple values in a single column, and how using UUIDs might be an anti-pattern too.
Managing user permissions in databases is hard. Developers can come and go. Other teams need to access the data for analytics and other purposes. This can quickly make permissions management a mess and no one dares to delete anything. Squarespace built a solution by syncing a YAML config to database permissions.
Git is complex. This article focuses on three Git config layers: system, global, and local.
How can we use Machine Learning in daily life? The example this article uses is cleaning up scans of handwritten notes while simultaneously reducing file size.
This article looks into different way to implement user-defined order (such as a list of items where users can re-order them or insert new items).
If it ain’t broke, why fix it? We’ll get to see the motivation on why manifold did that. The process and challenges are explained very well, plus we see some nice kops tips.
If you’re building a SaaS, look into this checklist. It’s designed to fit into many stages: seed, series A and post-series A.
Socket activation listens on behalf of an application on incoming traffic, starting the application, and passing down the socket handler. We can restart the service while keeping socket around, therefore achieving zero downtime.
Understanding how usernames, group names, user ids (uid) and group ids (gid) map between the processes running inside a container and the host system is important to building a secure system.
Do Docker and Kubernetes deliver on their promise - simplifying how we run applications? I think it’s an open-ended question that depends on your perspective.
Database migration is one of the most common reasons for outage or scheduled downtime. Sam, Discourse co-founder, shares techniques to mitigate.
Better Dev Link