I think this is the real answer. HDR is a thing and the baseline for expected dynamic range is higher than both what older displays can produce and older eyes can consume.
I’m a software engineering developer from Ottawa, Ontario, Canada.
I think this is the real answer. HDR is a thing and the baseline for expected dynamic range is higher than both what older displays can produce and older eyes can consume.


I think self hosting the proxy with the services at hobbyist scale mitigates most of the security risks. The single point of failure risk is another matter. I once had to effectively reverse-hack my services by uploading a Jenkins test job through an existing java project to regain access. Ever since then, I maintain a separate ddns address that’s just used for emergency ssh access.
I believe it stands for Free/Libre Open Source Software. I think the idea is to explicitly indicate both free as in beer and free as in speech. However, to me it just sounds like throwing in a romance term for the sake of it. But maybe I’m just ill versed on the whole free/libre divide?


Ada, hands down. Every time I go to learn Rust I’m disappointed by the lack of safety. I get that it’s miles ahead of C++, but that’s not much. I get that it strikes a much better balance than Ada (it’s not too hard to get it to compile) but it still leaves a lot to be desired in terms of safe interfacing. Plus it’s memory model is more complicated than it needs to be (though Ada’s secondary stack takes some getting used to).
I wonder if any other Ada devs have experience with rust and can make a better comparison?
I still use Ada daily for my personal projects after having used it at work. I find it compliments my thinking patterns well. My only gripe with it is that they ate too much of their own dog food at AdaCore and now it can be hard to install Ada and gprbuild (due to a circular dependency). Plus gprc stole libgpr and broke some stuff too.
In case anyone wants the real meanings: I am not a lawyer, read the f***ing manual, bank of america.


Beej’s guides are absolute classics. The networking guide is also amazing. Definitely worth the read.


Yeah, that’s pretty much what I was thinking too. The combination of a c API and a JVM API (and maybe .NET if you’re in Microsoft land?) Hits most FFI available in languages I’ve seen. I can’t think of any language I’ve used that couldn’t Interop with either a c library (.a or .so) or JVM library (.jar). However I’ve never used any .NET system seriously, so I don’t know about them.
FWIW I regularly remake the same API based game whenever I start a new job working in a new environment to test that my environment is “up to snuff” with my development methodologies. I’ve never needed to port more than API.a and API.jar to play around in any language. I’ve ported that system to at least 100 languages over the years, and while some have more friction than others, and often the c/JVM paradigm doesn’t line up well with the target language, it is always effective.
I definitely have the soapy gene, but don’t mind the taste. I blame thrills soap gum, I occasionally enjoyed that as a kid. My sister also has the gene and can’t stand the taste.


After years, and many languages, I still have to say Ada. Kotlin, Rust, Julia, and Nim are my current contenders to overtake, but here’s what Ada does well enough to still be my preferred tool when appropriate:
There are some situation where Ada shows its age:
func/proc (Nim) vs fun (Kotlin) vs fn (Rust) doesn’t make much difference to me, but function X returns Y/procedure X starts to add a lot of visual noise to a file.Here’s when I use the alternatives, and their biggest weaknesses:
Thank you for attending my TED talk :P. Any questions?
Great read. Only constructive criticism I have is a pet peeve of mine that is especially prevalent in type theory articles. In particular it may be worth mentioning the more formal names of some of the types discussed. Trying to map Haskell’s types to other languages can be very tricky and can hinder understanding. Mentioning more googleable names like unit, top, bottom, can be helpful in disambiguation which characteristics are intrinsic to the Haskell type, versus which are properties of the type system in general.
Wait until you learn about the shell specific /dev “files” like /dev/udp and /dev/tcp (which can send/recv IP traffic as if from a file)!
I decided that at my scale, NixOS is easier to maintain. So for me its just a `systemctl status <thing I host>ˋ