Write libraries instead of services, where possible
For any developer with limited resources, this means a library (where viable) can provide the same functionality to the user, at a lower cost to the developer than a service.
Contact me via email or Twitter , or guess my username on other platforms. Send me questions, comments, random links, requests, thoughts, compliments, complete nonsense, etc.
Visit catern.com → On Hacker News Oct 2014 – Mar 2023
Software Engineering 6Systems & Performance 5Infrastructure & DevOps 2History & Retro Computing 1
For any developer with limited resources, this means a library (where viable) can provide the same functionality to the user, at a lower cost to the developer than a service.
"Run the unit tests" doesn't count. The complexity of your system is in the interactions between the units.
It's well known that inheritance was invented by Simula . The History of Programming Languages session on Simula tells us the motivations behind that invention. Let's take a look.
It is difficult to write software which reliably and safely manages processes on Unix; this is because of flaws in the API. I know of no Unix system which has solved these problems, but in this article I'll be specifically talking about the Linux process API.
Many have observed that today's computers are distributed systems implementing the abstraction of the shared-memory multiprocessor. The wording in the title is from the 2009 paper " Your computer is already a distributed system. Why isn't your OS? ". Some points from that and other sources:
A note in advance: This is absolutely not about Docker being too "opinionated" for me, or other tools being more flexible. I believe that learning and using Docker is just plain more complicated than learning and using the tools I describe below. Docker is genuinely more complex and harder to use than the…
Terminals 1 are quite weird. Most modern users assume that they can just have straightfoward keybindings. Right? To bind Ctrl+i to something, they listen for Ctrl+i in their application. If they want to bind Ctrl+Shift+i to something different, they certainly can, they just listen for Ctrl+Shift+i as well. Naturally…