cwisecarver
The Link List – Jan 2026 (Newsletter)
edit: This actually has examples https://dockyard.com/blog/2018/12/12/phoenix-liveview-intera...
Article: several hundred words about an architecture that is not currently available in a laptop form factor and probably never will be.
Charlottesville tech: a community that won’t be stopped by tragedy
I own a number of MacBooks and while they were all assembled in China I don't have any concerns about the firmware. As more of these make it to US markets I'm sure if there is something it will come out but I'm currently taking a wait and see approach.
I've been taking this for about 6 months. Haven't noticed much other than better sleep, easier to wake upon time feeling refreshed.
- Sometimes you want the app concept just for organization. There's nothing bad about that and it makes sharing things inside of a project easier.
- Explicitly naming your database tables doesn't make any sense. You're using an ORM. Accept it or don't use it.
- Explicitly declaring through on a m2m field if you're not adding metadata to the relationship is pointless, but, if you're not using the table naming from Django I could see why they'd be invisible because there's no pattern to follow.
- GenericForeignKeys are dangerous but not for any of the reasons listed. It's because they implicitly force a two way join which seems magic until it becomes debilitatingly slow.
- The entire section on migrations leads me to believe that the first time the migrations are being run is on a production deploy. If you don't know SQL and you don't test your migrations prior to deployment, yes, it will be fairly difficult to determine what kind of performance/locking they're going to have.
- No to Fat Models? This breaks down to "The framework we chose to use suggests a pattern, we also chose not to follow that pattern." That's fine if you want to do that but I wouldn't suggest it to others.
- It's not hard to get signals to not fire in certain circumstances, you put the conditional in the signal callback like almost every other event-driven pattern. Also, bulk updating models doesn't fire signals in Django because save isn't called. Read the documentation.
- Avoid using the ORM? Why choose a framework as complete as Django where 80% of the features are built around or on top of the ORM and then don't use it?
- Caching complex objects makes cache invalidation hard. Well, yes, yes it does.
The only things I would agree with is the point about project layout and avoiding django's squashmigrations for the truncate the migrations table, delete the migrations, and create a new initial migration.
Practically everything else in this article is wrong, in my opinion.