Darian Moody

@djm
139 Followers
184 Following
185 Posts

Head of Platform Eng. @ YunoJuno.

I love talking about the bleeding edge of software, how we ship more code as teams and indie development, come join!

Particularly: #Elixir, #Python, #Django, #JS & #Nix.

Twitterhttps://twitter.com/djm_
Webhttps://djm.org.uk
GitHubhttps://github.com/djm

Something unusual today: I looked into the leaked ShotSpotter location data in detail for my own city of Albuquerque.

https://computer.rip/2024-03-01-listening-in-on-the-neighborhood.html

it has pictures! always a cutting-edge innovation for Computers Are Bad.

2024-03-01 listening in on the neighborhood

And the post-mortem itself is really a must-read on how a high-functioning team reacts to such an issue.

https://linear.app/blog/linear-incident-on-jan-24th-2024

Post mortem on Linear incident from Jan 24th, 2024 | Linear

Details on the cause of our January 24 temporary data loss incident and learnings to prevent future outages

Linear

The `TRUNCATE TABLE * CASCADE` root cause in Linear's post-mortem is a super easy mistake to make, and even harder to spot in review.

So to stop us ever making the same mistake as I have added a
Semgrep rule to our CI step.

https://semgrep.dev/playground/s/7KvyZ

Semgrep

I will be at FOSDEM in Brussels this weekend if anyone would like to catch up (or meet!), let me know. 👋

I'm a lil annoyed at React these days

https://blog.cassidoo.co/post/annoyed-at-react/

Kind of annoyed at React

Just a little ranty rant about my fave JS library, ya know.

A ✨first look✨ at `snapChanged` in Chrome Canary

```js
document.addEventListener('snapchanged', e => {
console.log('changed', e.snapTargets)
})
```

get notified when a snap scroller has changed the snap item, and access the node with `event.snapTargets` 🤓

Snap 2 CSS spec draft https://drafts.csswg.org/css-scroll-snap-2/#snap-events

CSS Scroll Snap Module Level 2

Since quite a few people asked me about my **rye** "package solution" for Python, I put it on GitHub. https://github.com/mitsuhiko/rye — it's written in Rust and just wraps pip/pip-tools and virtualenv. Also auto installs Python for you. It's a bit of my dream of what Python packaging could be.

https://www.youtube.com/watch?v=CyI8TBuKPF0

GitHub - mitsuhiko/rye: a Hassle-Free Python Experience

a Hassle-Free Python Experience. Contribute to mitsuhiko/rye development by creating an account on GitHub.

GitHub

I wrote ✏️ 🎉 an article about Running Tasks Concurrently in Django Asynchronous Views  Buckle-up for our async-journey together! 🚗 #django #python #async

https://fly.io/blog/running-tasks-concurrently-in-django-asynchronous-views/

Running tasks concurrently in Django asynchronous views

Django is been getting more and more async abilities! Mariusz Felisiak explores how to run multiple async tasks in a Django asynchronous views.

Fly

One great thing about it is that it differentiates between "monitor", "comment", and "block".

So you can test rules without anyone seeing anything, or roll them out as comments only so they appear on PRs as a GitHub comment. Then only use "block" for ones you know are legit.

An example is worth a thousand words, so here is it writing a #django rule to ban implicit ordering of querysets by defining the ordering on the model.

Written, tested and sent to CI within 60 seconds.