Hacker Newsnew | past | comments | ask | show | jobs | submit | thehappyfellow's commentslogin

My blog is at https://blog.happyfellow.dev if you'd like to read it.

I'm also the Head of The Institute for Type-Safe Memetic Research which website is https://typememetics.institute/


Author here.

I wonder about that as well!


Of course practitioners shouldn't expect to understand the bleeding edge without investing a lot in learning the subject.

However providing people with software engineering background an easier on ramp for understanding PLT would be nice, wouldn't it?


Yes, Harper's book that I linked above is good for that, imho. It looks like the PDF that is there now is a subset of the chapters of the 2nd edition. In an older version of the page, there was a complete pdf of the 1st edition and that's the one that I used. You might be able to find it in Wayback if you go back to 2015 or so.


It's closely related to another truth:

Unconstrained curiosity is a vice, not virtue.


Especially if you’re a cat. Seriously though, I don’t like hearing this - curiosity about all things is sort of what keeps me getting up each morning.


Sorry I don't consider this a "truth" at all.

Unconstrained curiosity is a superpower. Some of the greatest people in history have had immense curiosity. Think Newton, Darwin, Feynman. In fact pretty much any great scientist is great because of their wide curiosity. It's often the crossover between things that seem unrelated where the breakthroughs lie.

It's a joy to have "the pleasure of finding things out" and I pity anyone who lacks it.


To you maybe. People get satisfaction and purpose from different things. Unbounded curiosity can often drive tangible outcomes too. You might even have that curiosity to thank for methods and tools you use in your own persuits!


Thank you, this makes much more sense and it's a classic issue Matt Levine's readers will be familiar with.

Allegedly being investigated is also quite far from "been manipulating markets", I appreciate the clarification.


source?




It’s incredible how much Postgres can handle.

At $WORK, we write ~100M rows per day and keep years of history, all in a single database. Sure, the box is big, but I have beautiful transactional workloads and no distributed systems to worry about!


At $WORK, we are within the range of 2 billion rows per day on one of our apps. We do have beefy hardware and ultra fast SSD storage though.


A single PG database on one server? What are the specs?


Those rows are never pruned and rarely read?


Two days ago, I'd have said the same. Yesterday, big box went down, and because it was so stable, it was a joint less oiled and the spare chickened out at the wrong time and apparently even managed to mess up the database timeline. Today was the post-mortem, and it was rough.

I'm just saying, simple is nice and fast when it works, until it doesn't. I'm not saying to make everything complex, just to remember life is a survivor's game.


You’re right, there are downsides like turbine you mention! We mitigate it by running a hot backup we can switch to in seconds and a box in which we test restoring backups every 24h, that’s necessary! But it requires 3x the number of big expensive boxes.

I still think it’s the right tradeoff for us, operating a distributed system is also very expensive in terms of dev and ops time, costs are more unpredictable etc.

It’s all tradeoffs, isn’t it?


Yeah, I was angry when I was writing it, not denying it.


Anger is often the only way to motivate action, since when you were calm you didn't care about solving it.


Author here. I did not expect to see my post on HN!

It was a rant, I was venting, it’s not supposed to be an objective statement about the state of tech. It’s shouting into the void about the things I find unfair and unbearable, I don’t think it’s a great HN material.

I made up parts of the story because it didn’t happen to me and I didn’t want to share details of somebody else’s situation.


FWIW I think it captures the sentiment many users have towards software today fairly accurately, and every software engineer who has even a modicum of pride in their trade really ought to pay attention.

One thing I'd like to point out, though, is that this kind of stuff isn't really about micro-optimizations. Most software in the "good old days" wasn't really micro-optimized either. No, what this is about is bloat. Layers upon layers of abstractions that, in most cases, amount to rearranging the pieces in the way the author deemed most aesthetically pleasing. When I look at call stacks while debugging most modern software, I can't help but feel that it spends most of its time calling functions that call functions etc, 20-30 levels deep. Most data flow isn't from component to component, but within the component between those layers. And it all adds up.


Well, it actually did happen to me (precisely to pay the rent), and I burst into applause after reading your blog post


It really makes me happy to know that my writing struck a chord for at least one person - thank you!


I guess “unfair and unbearable” is paying your rent at the last minute after business hours on a phone with 2012 specs. Wouldn’t want to plan ahead and pay on time or pay with a check or pay with autopay or pay with a laptop or pay with a computer at the library for free.

You say it’s not an objective statement about the state of tech and I would agree: it’s highly subjective, a literally made up story, and a dumbass opinion.

Getting a phone capable of doing an online bill pay is trivial. Literally free with a discount shit cheap phone plan.

The victim mentality will destroy you if you let it take over.


> Getting a phone capable of doing an online bill pay is trivial. Literally free with a discount shit cheap phone plan.

No matter how cheap your phone is, if you're poor someone will always judge you because your phone is too expensive.

"Why do you have a more recent phone that 2012 if you're on benefits?"


I don’t think this has been true in the last 5-8 years where phones are incrementally different and essentially look identical.

I saw an ad yesterday for a free iPhone 13 with a discount carrier and that phone is almost indistinguishable from the current iPhone on sale.


The thing is, until he said it was a made-up story, I thought it was real. This shows that things like that started to become the real norm.

I also don't think the author is in a victim mentality, it is more like a reminder to other developers that they can do so much better.


Just because the story is believable doesn’t mean that the people who are in the story are without responsibility or fault.

When you get into a lease agreement you should know how to pay going into it. If your landlord doesn’t take a form of payment you can handle you don’t sign the lease in the first place. That’s your life responsibility as a functional adult. Paying rent every month isn’t a surprise. Being low on funds isn’t an excuse and being low on funds isn’t the issue at hand.


Learning Rust by building a simple database using it.

I’ve done my share of programming languages (PHP, C++, Python, Ruby, Haskell) and for the last 10 years I’ve been working in OCaml (which I love so much) but Rust would be a nice addition IMO.

And I never implemented LSM style database before! So that’s fun.

I only just started and the pace will be slow (I have 3h/week to spend on it on a good week), if you are curious: https://github.com/happyfellow-one/crab-bucket


LOL, love the name.

LSM style should be an interesting path, especially when it comes to optimization.


Hah, thanks!

I really wanted an optimisation rabbit hole and seems like this projective going to deliver on that :)

I also tweet about the progress on @onehappyfellow if you’re interested


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: