I worked with Perl for years, and I don’t recommend it for a beginner. There are just too many idiosyncrasies that belong specifically to the language that you’d be better off with Python for learning the basics.
I’m also not really sold on that book, which from the code samples looks really old. I’d recommend two books: Modern Perl and Perl Best Practices.
Edit: I’d also recommend working in Go but potentially the way i/o intersects with interfaces makes it a bit more challenging.
All sounds pretty sensible. I do think it might feel annoying waiting minutes to download a model for the sake of generating a line of alt text the first time, though. It would probably be quicker to write the alt text.
More or less. Either Excalidraw for your quick and dirty diagrams or I’ve used PlantUML + C4 Plug-in for your larger, more long lived diagrams with some success.
Diagrams. Loads and loads of diagrams. One for each use-case.
Then I’d have one diagram to draw out dependencies between each service at the broadest level. Although depending on how messy your architecture is it can be very difficult to read, in my experience.
I think if you read through this and take it at face value, there is a pretty clear picture of what happened: https://robmensching.com/blog/posts/2024/03/30/a-microcosm-of-the-interactions-in-open-source-projects/
A lot of it has reinforced my understanding around distributed databases and transactions. In my day-to-day, I’ve not really had need to use this knowledge as pretty much all our data stores are hosted in cloud platforms and we’re operating on low datasets and traffic.
I’ve been reading Designing Data-Intensive Applications and it really is a great book, specifically for backend engineers.
I mean, the optical fingerprint sensors they’ve been using on the Pixels are absolutely garbage, so I will never use this feature.