Hacker News new | past | comments | ask | show | jobs | submit | sgloutnikov's comments login

Great article! Here's one more, including animations on B-trees: https://planetscale.com/blog/btrees-and-database-indexes


Personally this was more useful than the original article. Original article mostly aimed at someone who is slightly more familiar with BTrees which is fine


I don't know, this article is immediately confusing, because the rules seem wrong, or inconsistent at least. That makes it harder to understand what's going on, unless I suppose one knows already.

The first rule does not allow trees containing less than 2 elements.

The second rule makes me wonder how "N" is being used in the rules. The first rule treats it as a per-node variable, per the second rule it has to be a variable external to the node. Also, what if N is not divisible by 2?

Now that I don't trust the rules anymore, I cannot tell what the third rule is trying to do or if it's even correct, because so far it has not been stated what purpose these rules are trying to accomplish.

Rule 4 contradicts rule 1.

Now, the ordering rules (and the demo) do not allow multiple elements with the same key. Is this on purpose? Database indexes support this, so it would be nice to get one sentence about, so I don't have to wonder why this general introduction does not seem to deal with it.

I'm only this far in, and it already threw multiple wrenches into my attempts at thinking along. Now I can try to fill the gaps in the explanation myself, but I'm wondering how much I can trust the interactive elements to test my own understanding.

This article has a lot of potential, but it could really use an editing pass or two.


Other than the popular password managers mentioned you can try Password Pusher [0]. It's open source, can be self-hosted, and has options like expire link after n loads or days.

[0] https://github.com/pglombardo/PasswordPusher


Naming things, cache invalidation, and workflow engines? :)

https://github.com/meirwah/awesome-workflow-engines


No, it's just the two things: naming things, cache invalidation, and off by one errors.


Enjoyed these books on the same topic:

- https://http2-explained.haxx.se

- https://http3-explained.haxx.se


What about the Photos app on MacOS if you have one? I keep a local copy of my iCloud Photo Library and sync it through the MacOS Photos app.


Photos app for offline storage is also woefully neglected by Apple. They don't really design it for use with an external drive (you are expected to locate your library on a internal storage or permanently attached storage). The reason is that the photo library constantly gets corrupted on external drives, forcing a long rebuild/repair process.

Often the photos app doesn't even detect the iphone even when plugged in, and it's a serious bug that Apple has neglected for years.


Everything Apple does seems to be designed to drive hardware sales. Why support external drives, when you can be up-sold for larger internal storage (at a huge markup)? The "Photo Library" could simply be a database file with references to photo locations, alas that might confuse Mac/iOS user with "files" vs "photos".


> What about the Photos app on MacOS if you have one?

If you ever try a large-scale import/export into macOS Photos be prepared for 100% CPU, endless spinner cursors and the process ending up killed because it ran out of memory.


The Scene is a fun and related miniseries worth mentioning and checking out. [0][1]

[0] https://en.wikipedia.org/wiki/The_Scene_(miniseries)

[1] https://www.youtube.com/playlist?list=PLC2FCB2871C396459


The first season of The Scene is better than the second season (yeah it exists) in my opinion.


Unfortunately they are not planning home lab things anytime soon, per a recent podcast episode [0].

If you want to play around with their Hubris OS: "You wanna buy an STM32H753 eval board. You can download Hubris, and then you’ve got – you’ve got an Oxide computer. You have it for 20 bucks.”

[0] https://changelog.com/friends/8


Maybe somebody can help me find the $20 one, but the one I can see is $460

https://estore.st.com/en/stm32h753i-eval2-cpn.html


Look for the "Nucleo" boards rather than full-fledged eval kits, e.g. https://www.st.com/en/evaluation-tools/nucleo-h743zi.html is $26.


I don't know if this is a reputable source in any way but a quick search shows this: https://www2.mouser.com/c/?processor%20series=STM32H753


I've heard this argument before, and I point out Kubernetes to them. Is that code base complex enough, because it's pure Go doing just fine and runs on plenty of systems?


You can point to a complex project in any language, and that would prove nothing.


I mean, that’s pretty much go’s first complex application that was specifically written with that, so don’t think it is a good example.


A quote from Henry Petroski that has stuck with me:

“The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry.”


Petroski was completely wrong about this. It is just that all of the gains from hardware have gone to enabling additional features rather than making the same feature set faster. Things like ripgrep make it more than obvious how fast simple software could be on modern hardware, but incentives are what they are and for most of the apps out there more features will be more profitable than more speed.


While there is an element of truth to that we have sacrificed performance for ease of development, especially in cross platform use cases.

(Often a reasonable trade off, imho)


Oh my god ripgrep is fast.

I was astounded when I first used ripgrep.


For sure. The first time I used it I doubted I had used it correctly because I could not believe it had actually grepped through all the ~34k files in my Rails app in under 30 ms.



I mean, these days I summon a super compute cluster for autocomplete in my IDE and chat with another with a 100k context window to pretty print large JSONs.



People like you are the best type of people out there.


Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: