64 karma · joined April 2, 2024
"My first instinct is to laugh and shake my head. One need not look very far to find indignant software developers absolutely certain that their jobs cannot possibly be automated away by the very tools their industry contemporaries are creating to replace them. I suspect you’d also not have to look far into their posting histories to find those same people comparing cabbies to buggy whip makers."
What a rude and callous comment. I'm one of those developers, I'd love to see an LLM even fractionally capable of some of the things my job entails. Laugh at me as I defend my lifelong career, why don't you? I'm also one who decries such things as the removal of local services, taxi and otherwise, for those in the cloud. Screw you, man.
Write the simple code you want to write, and think about what makes the prior step possible in the easiest way and build your structures from there, filling in the gaps.
In one scenario every atom's trajectory was destined from the creation of time and we're just sitting in the passenger seat watching. In another, if we do have free will then we control the "real world" underneath - the quantum and particle realms - as if through a UI. In the pod scenario, we are just blobs experiencing chemical reactions through some kind of translation device - but aren't we the same in the other scenarios too?
_unitOfWork.Begin();
var users = await _usersRepo.Load(u => u.LastLogin <= whateverDate);
users.CheckForExpiry();
_unitOfWork.Commit();
That then writes the "send expiry email" commands from the aggregate, to an outbox, which a worker then picks up to send. Simple, transactional domain logic.I didn't realise it was be timed, which is good because I casually set up a new rig to give future puzzles some kind of rig. I used C# which, although probably more wordy than other solutions, did the job and LINQ made light work of the list operations. Ended up with about 6.5 minutes for each one but most of that was refactoring out of pedantry.