HNHacker News
TopNewBestAskShowJobs

joelg

1,497 karma · joined October 5, 2015

https://joelgustafson.com
submissionscomments
joelg··on The Useless UseCallback
yeah I completely agree, I think there's a whole logic of reasons to using useEffect/useCallback/useMemo that the post didn't acknowledge.

personally, I want to have a comprehensive understanding of exactly when and why each of my components re-renders, and to do that I use hooks and design around referential equality. like you said, it's a kind of documentation, more about organization than performance.

not to say that this way is intrinsically better! just that the style is appealing for its own reasons

joelg··on Facts don't change minds, structure does
my understanding (which is definitely not exhaustive!) is that the case between Galileo and the church was way more nuanced than is popularly retold, and had nothing whatsoever to do with Biblical literalism like the passage in Joshua about making the sun stand still.

Paul Feyerabend has a book called Against Method in which he essentially argues that it was the Catholic Church who was following the classical "scientific method" of weighing evidence between theories, and Galileo's hypothesis was rationally judged to be inferior to the existing models. Very fun read.

joelg··on Visualizing 13M Bluesky users
one of my biggest subjective takeaways from spending hours scrolling around the map is that my impression that the userbase was dominated by software types was ~mostly wrong! feels like less than half, and the rest is huge swaths of normie, artist, furry, and media people
joelg··on Visualizing 13M Bluesky Users
there are a other few places tracking those stats too; I just counted 14487454 in my database :)
joelg··on Apple already shipped attestation on the web, and we barely noticed
point taken, but as the blog post here and many other comments have pointed out, there is a very sharp qualitative difference between just-Apple and Apple+Google doing this. Apple alone has a minority market share but together they cover enough of the market that many websites would be tempted to only allow connections from trusted clients.
joelg··on Merklizing the key/value store for fun and profit
The merkle tree is persisted, and updating it is only log(n). You only have to "hash 2n elements" once, and then incrementally maintain it. It's negligible overhead for free log(n) diffing.
joelg··on Merklizing the key/value store for fun and profit
The difference is that a trie over the hashes doesn't preserve lexicographical key ordering or support range queries, which are typically expected from key/value stores. But you're right - if you just need `get` / `set` / `delete`, you could just do that!
joelg··on Ask HN: What is new in algorithms and data structures these days?
it’s definitely not an exact solution, but i’ve been thinking about ways prolly trees could fit into CRDT systems. they essentially give you efficient peer-to-peer entry-wise diffs, so could be good for identifying conflicts after-the-fact. but if you store operations in a prolly tree, you end up hashing them all (plus logarithmic additional space overhead), so it might be a non-starter.

i have a blog post to shill if you haven’t heard of them: https://joelgustafson.com/posts/2023-05-04/merklizing-the-ke...

joelg··on I downloaded all 1.6M posts on Bluesky
on bluesky (sorry) the devs have been super active and responsive and eager to explain their approach. they have talked about this specific choice at length - that after an extensive ecosystem review and lots of thought, it seemed like a different architecture had a better chance of working at scale. I hope they find the time to explain this more publicly but it’s definitely a decision they didn’t make lightly.

More generally, I have a ton of respect for the standardization process and for the amount of (mostly volunteer!) engineering over the years that had gone into fediverse, but it’s been so long and growth has been so slow that I don’t think it’s unreasonable for a new project to try something different.

joelg··on Casync – A Content-Addressable Data Synchronization Tool
It's much more similar to a related Protocol Labs project: CAR (content-addressable archives) https://ipld.io/specs/transport/car/
joelg··on Ask HN: What under-the-radar technology are you excited about?
Database applications of category theory!
joelg··on CodeMirror 6
I've been using it with React for a couple months now. In my experience it's been a little awkward but overall fairly usable. It seems like it would be easy to write a wrapper for.
joelg··on A whistleblower says Facebook ignored global political manipulation
Looks like the NYT ran a short summary https://www.nytimes.com/2020/09/14/technology/facebook-manip...
joelg··on OpenAI should now change their name to ClosedAI
> At some point a company needs to make money

:-/

OpenAI started as a non-profit.

joelg··on Explaining copyright broke the YouTube copyright system
A simpler definition of fair use would definitely make automation easier! But is the simpler definition one we actually want or intend? Lots of laws are complicated because they’re the product of years and years of iteratively modeling a problem with lots of feedback and edge cases accounted for - why should we prioritize Google’s ease-of-enforcement over _the thing we actually want to be the law_?
joelg··on Explaining copyright broke the YouTube copyright system
I think a lots of people end up having a reaction like "well they're trying their best! what else are they going to do!? it's basically an impossible problem!" to things like this and other recent youtube headlines.

That reaction betrays an assumption that YouTube must exist at its current scale in its current form, just because... it does already. And I think that assumption is dead wrong: we're bumping up on all kinds of emergent phenomenon (conspiracies, runaway recommendations) and issues (copyright, borderline child porn) that cannot be solved, and we shouldn't let Google give us their best-effort compromise. If you can't address these kinds of problems in your product, don't fucking build it.

joelg··on Google’s 4k-Word Privacy Policy Is a History of the Internet
This class of argument is incredibly common (e.g. Pinboard criticizing the NYT piece on ad trackers for having ad trackers itself) and is incredibly counter-productive. It's the equivalent of smarmy relatives commenting "oh yeah? well you're still on it" if you complain about Facebook on Facebook.

Sure, they're trapped inside the system, but they're trying to change it!! And that certainly deserves our respect. At least it deserves better than knee-jerk "gotchas".

joelg··on Facebook sues analytics firm Rankwave over data misuse
I don't think it's a standard term but you can extrapolate from https://en.wikipedia.org/wiki/Noosphere. Maybe "the sport of influencing opinion at mass scale"
joelg··on Amazon Quantum Ledger Database
Cool, but I don't think I could get away with marketing a raspberry pi as a "quantum computer" because its bits change suddenly, discretely, and without intermediate steps.

Like it or not, "quantum" has accumulated a) more connotations that make it less likely to be interpreted as "sudden or discrete" by most people, and b) an association with other pseudosciency buzzwords that don't have a very good reputation in product names.

joelg··on Whatever Happened to the Semantic Web?
:-)

You might be interested in the Underlay Project that Danny is starting: https://underlay.mit.edu/

joelg··on Ask HN: Organizing company knowledge?
Try https://www.notion.so! It combines docs, wikis, and todos; it's collaborative, and it's beautifully designed. It's perfect for building knowledge bases for teams.

(Disclaimer / I worked there in the past)

joelg··on Google used a tax loophole to shelter $19.2B
"There are no such things as bugs in code; the computer always executes the code as written."

Loopholes and bugs are differences between intent and effect.

joelg··on My Sudden Synaesthesia
This is actually exactly the topic of the 3Blue1Brown video on Hilbert Curves: https://www.youtube.com/watch?v=3s7h2MHQtxc

Space-filling curves are a sort of optimal mapping strategy for compressing two dimensions down into one.

joelg··on A Brief History of Lisp Machines (2008)
One of the original Lambda the Ultimate papers was "Lambda: the Ultimate Opcode" that described the hardware design of a computer whose ISA was Lisp itself. The paper is full of strange alien ideas like not having an ALU (Lisp is naturally symbolic; why would we need it?).

Guy Steele and Gerry Sussman also made a working processor from this design, but only fabricated a few prototypes (apparently it was absurdly slow, even by their standards). If you come by Gerry's office he'll gladly show one off to you.

http://repository.readscheme.org/ftp/papers/ai-lab-pubs/AIM-...

joelg··on Lake Michigan Is So Clear Its Shipwrecks Are Visible from the Air
That's neat, but the pictured shipwreck is only in 6 feet of water. Lake Superior often has visibility of 100 feet or deeper! I remember canoeing on the lake with my dad and seeing the bottom of the lake crystal-clear, 70 feet down. Surreal.

https://www.google.com/search?q=lake+superior+water+visibili...

joelg··on 25 is ‘golden age’ for the ability to make random choices
Reminds me of the Aaronson Oracle: http://people.ischool.berkeley.edu/~nick/aaronson-oracle/

It's a simple algorithm to predict human-generated coin flips by exploiting our aversion to extremes.

joelg··on We Don’t Do Legacy (2012)
To be fair, it's probably true that the admit rate for MIT legacy applicants is also higher than the overall admit rate. It's just that the MIT admissions committee doesn't consider legacy status in admissions. It's hard to separate correlation from causation in the admit rates.
joelg··on Golden powers are nearly integers
To be fair, "algebra" means very different things to different people, so I don't think Grue3 meant to be quite as brash as it may have sounded.
joelg··on MIT Media Lab Disobedience Award
How are so many people bringing up Aaron Swartz? Media Lab !== MIT and this is probably entirely Joi's idea. And the MIT administration has changed significantly since 2013.
joelg··on Fundraising Rounds Are Not Milestones
"When a measure becomes a target, it ceases to be a good measure."

- Goodhart's Law

Page 1 of 4Next →