HNHacker News
TopNewBestAskShowJobs

JoelEinbinder

404 karma · joined July 16, 2021

submissionscomments
JoelEinbinder··on Show HN: Halloween game to show off my new Terminal
TIL pushd. I should go add that to snail.

There is no bash running here, but I can promise nothing in the game is scarier than JavaScript!

JoelEinbinder··on Show HN: Halloween game to show off my new Terminal
Thanks!

I don't have an iPad to test on but I'll try it out in the simulator. I assume you were using an attached keyboard? I would guess that the soft keyboard would not appear in the monster fights.

JoelEinbinder··on Show HN: Halloween game to show off my new Terminal
Was it "high jump kick"? That's the longest move name. I'll probably just abbreviate it instead of measuring the text :)
JoelEinbinder··on Mark Twain at Stormfield (1909) [video]
I don't think you can change a work that drastically without the change itself being a piece of art. And the original artists might not want to be left out of that process. See David Simon's experience with the HD remaster of the Wire for similar themes: https://davidsimon.com/the-wire-hd-with-videos/
JoelEinbinder··on Stack Overflow Moderation Strike Update
This is slightly wrong. build/ will ignore the build directory at every level. /build will ignore the build directory at the top level.

I also have no idea what it’s trying to communicate with its /*/temp/ examples

JoelEinbinder··on AI found a bug in my code
Your method of event dispatch is very common. NodeJS does it this way, as well as many other event dispatchers. It is also how I use to do it until I encountered a very nasty bug in Chrome DevTools.

Object A emits events.

Object B subscribes to A, and manages the lifetime of Object C

Object C subscribes to A in its constructor, and unsubscribes in its dispose function.

With the common event listener model, Object C could have its methods called after dispose was called, even though it appeared to clean up its event listener!

You can check out the DOM spec for the correct behavior, which both clones the event listeners arrray and sets a removed flag on them in case they were removed after cloning.

https://dom.spec.whatwg.org/#concept-event-listener-invoke

JoelEinbinder··on The Two Generals Problem
Yes but it’s not obvious that it’s obvious to the other person that it was delivered. And so on.
JoelEinbinder··on Sounding the alarm: How noise hurts the heart (2021)
From what I’ve read and experienced, exposure therapy to bothersome noises can have the opposite effect. Be careful trying that!
JoelEinbinder··on Replacing the scroll tracker on GOV.UK
2260 * 100 bytes = 226kb not 226mb.
JoelEinbinder··on CSS's !important was added because of laws about font size for some text
The most common use for !important is to override something else marked !important. It’s an interesting situation when getting rid of a feature simultaneously removes most of the need for it.
JoelEinbinder··on Rich: A Python library for rich text and formatting in the terminal
What’s an air/earth line?
JoelEinbinder··on Understanding UUIDs, ULIDs and string representations
Consider a timing attack: https://en.wikipedia.org/wiki/Timing_attack

Let's say a UUID comes back with an error message. This could be used to figure out how long it took to generate the error. That could tell you if a particular resource is cached, even if you don't have access to that resource.

Timing attacks are usually pretty creative. It's hard to predict how extra timing information could be misused.

JoelEinbinder··on GetElementById vs. QuerySelector
Its a reference to Einstein's spooky [action at a distance](https://en.wikipedia.org/wiki/Action_at_a_distance)
JoelEinbinder··on Flags vs. Gates
Take a look at `chrome://flags/` in Chrome to see the flags in Chrome. They show up in the code like so: https://source.chromium.org/chromium/chromium/src/+/main:con...
JoelEinbinder··on Physically Based Rendering in Filament
> This is not an officially supported Google product.

Basically when Google employees ask permission to work on a side project, Google asks them to release it open source under Google's GitHub but mark it as not an official Google product. This is probably something the authors work on nights/weekends and not anything to do with their work.

← PreviousPage 2 of 2