

I used to switch to perl or python if I needed awk. These days I don’t tend to run into it as much. Not sure if that was a good choice. But it’s how I spent the past 25 years.


I used to switch to perl or python if I needed awk. These days I don’t tend to run into it as much. Not sure if that was a good choice. But it’s how I spent the past 25 years.


That’s not what I was thinking but I like it! Http caching is pretty magic. Stateless nodes and easy scaling too.
For some kinds of problems you really can’t beat varnish and friends. It’s how we have Wikipedia, after all.


You have to learn this through suffering. Class would have to be project based.


It’d be fun to talk shop with the fast code in slow languages folks. I do that for a living. I remember three ways, but I’m sure there’s more:


My first thought was that it’d be a great oracle for randomized testing.
I’m not good at this but that’s never stopped me from making a fool of myself before.
Iterators are monads because they have a flatMap on them. It takes each element and spits out a new iterator which is merged in to the result.
Option is a monad too. Same reason. You can map the contents to another option. And you won’t get called if there’s nothing inside.
Promises are monads too. You can map the result to another promise. The wrinkle here is that you don’t get to know when the map happen. Or it might not get called at all if the promise errors out.
IO can be a monad because you can ask it for input and wait for the result. It’s just the same as a promise.
See how these different things share a common behavior? That’s monad. Or, maybe it’s monoid. Names are hard and I’m busy making a fool of myself.
Monads are nothing more than a useful abstraction. Haskell is famous for them because they couldn’t make Haskell do imperative stuff without them so they spread them all over the language.
We all use them every day in regular programming. We just don’t think of them as a class of thing.


I say this with all appropriate irony: as the guy that deployed it at for Wikipedia, yes.


I don’t think you have to change. But if you want a new hobby, try Arch. I got it just the way I like it years ago and haven’t had to change anything. I picked Arch because I always ended up on their wiki anyway.


There is still fun to be had! Just… Different fun!
In database land lookup tables are pretty common. Prefix tries and the like are super common in search land. I’ve seen GCD, offset, delta-of-delta, and some funky bitwise floating point compression used. Sometimes just to save dist space. But usually to save working set space or IO or S3 cache space.
And squeezing the most out of modern CPUs is its own art. Compilers are glorious. And modern CPUs are magic lightning rocks. But you can learn to sing to them just right to make them all happy.


I’ve been in the industry since 2001 and think maybe once I had a one-meeting cycle.


Inaccurate garbage.
I use Arch because I’m old and set it up just the way I want it years ago and never have to change or reinstall. How dare you accuse me of, what was it, being a cranky asshole?! Wait.
/s
It’s cute. Thanks for posting.


I use Arch and i3. It’s old but it’s set up the way I like it. I’ve spent maybe an hour in the past year poking at os stuff. Seems plenty stable to me.
That does sound like us.