HNHacker News
TopNewBestAskShowJobs

lyall

262 karma · joined January 22, 2015

https://lyall.co
submissionscomments
lyall··on Roblox's Predator Problem [video]
In article form: https://www.bloomberg.com/features/2024-roblox-pedophile-pro...
lyall··on Design a GraphQL Schema So Good, It'll Make REST APIs Cry
I'm not sure exactly what GP is referring to, but it might be things like this?

> Facebook report they maintain an allow-list of queries extracted from from their source code at build time, to fix this. I've not seen any other GraphQL site do this

https://x.com/AdamChainz/status/1392162996844212232

Which references this article: https://intercoolerjs.org/2016/02/17/api-churn-vs-security.h...

lyall··on Scientists discover a cause of lupus, possible way to reverse it
I don’t believe there is any evidence that vitamin C reduces inflammation or helps with depression. Vitamin C is an antioxidant, not an anti-inflammatory agent.

There is evidence that things that reduce systemic inflammation help with depression. Fish oil, or more generally a balanced omega-3/omega-6 intake is one example. Curcumin is another. However the effects are modest, which is probably to be expected with a condition as diverse as depression.

lyall··on Ice – open source menu bar manager for macOS
I use Hidden Bar (https://github.com/dwarvesf/hidden) for this. It works well enough despite not being updated in a while, though there is a bit of jank. Just tried out Ice and it seems to be a nice, lower jank replacement!
lyall··on Workman Layout for Vim
In my experience as a Colemak typist and heavy vim (or vim-emulation) user, the best solution is to bite the bullet and _not_ remap any of the keys. This is obviously annoying for hjkl navigation at first but you get used to it pretty quickly. Plus there's the added benefit of being able to easily use hjkl for navigation everywhere that uses them but _doesn't_ let you remap, which is a lot of places.
lyall··on [dead]
https://archive.is/Ith3n
lyall··on The infrastructure behind ATMs
The payment processing space, like basically anything when you look close enough, has a fractal-like complexity to it. And in my opinion the industry as a whole does a pretty poor job of abstracting away that complexity, often leaking it through, such as with the "debit or credit?" question.

But turns out it's pretty difficult to hide the complexity, and many businesses are built around hiding it as a service. It usually involves taking on risks others aren't willing to or having an Apple-like resolve to piss off some customers by deciding what's best for them without asking or, rarely, the power and/or innovation to actually change how things are done.

lyall··on The infrastructure behind ATMs
Funnily enough, this is very common in Japan via so called "e-money" stored value cards such as Suica[1], Pasmo, Waon, Nanaco. Those four you can even provision right now into Apple Wallet and load with money via a card if you've got an iPhone made in the last few years.

Accepting them in a sane payment system is a bit of a nightmare however.

[1]: https://en.wikipedia.org/wiki/Suica

lyall··on The infrastructure behind ATMs
Yes, the rails used should not affect the consumer protections you do or do not receive. If it's a debit card, it's a debit card regardless of if it's processed over a credit network.

Exactly how long the transaction takes to _clear_ your account may vary depending on the semantics of the network and integration used, but processing a debit card over a credit network doesn't mean you get to hold onto your money for any longer than you would otherwise. The auth will put a hold on the funds in your account instantly and you will effectively have that much less money in your account.

lyall··on WaniKani, a Kanji Learning Application
Kanji in Context targets intermediate/advanced students that already know at least a few hundred kanji, and it doesn't provide mnemonics or radicals or anything. It's fundamentally just a list of words to memorize, which through doing so teaches you the most common/jōyō readings. There's a bit more to it than that with the workbooks, etc. but overall it's much more streamlined that WaniKani.
lyall··on WaniKani, a Kanji Learning Application
The radicals and mnemonics are useful for bridging the gap between learning a word and truly acquiring it. Think of it like learning how to read in English: when starting out you have to sound out every letter, recall the weird rules about how sometimes "ough" can make an "oo" sound (or was it an "off" sound?), use your finger so you don't loose your place etc. But eventually with enough repetition your brain sees the jumble of letters that is the word "throughout" and immediately knows what it says.

Everything that WaniKani does is just to help you get from seeing "日本語" and it meaning absolutely nothing to you, to seeing it and immediately knowing what it means. The radicals and mnemonics are all secondary, and don't need to be remembered.

lyall··on WaniKani, a Kanji Learning Application
I fell off the WaniKani wagon pretty hard. Made it to level 28 (out of 60) going about as fast as it'll let you then took a break during a trip to Japan, of all places. Long story short, almost three years later my review queue still contains 2140 items.

However, I don't think falling off the wagon ended up being a bad thing for me really. I was very early on in my Japanese learning journey when I started, and at level 28 I was far better at kanji recognition than I was at any other relevant language skill—I couldn't really speak or understand anything yet I was learning how to read "攻撃". Stopping WaniKani then let me focus more on listening practice and led to my skills balancing out a bit.

Overall I believe WaniKani is a great tool, and well worth the money. But it covers just a small slice of what it takes to learn Japanese.

As a coda, I'm only now getting back into dedicated Kanji study again. However this time I'm following the book "Kanji in Context"[1] and using Anki to ensure recall. From a slightly more advanced perspective, it's all the more rewarding when you get to a character you know you've seen many times but never really got to know explicitly.

[1]: https://www.iucjapan.org/html/text_e.html

lyall··on Why are McDonald’s Self Service Kiosks so hackable?
Maybe that's how IC cards work in some places, but that's definitely not the normal EMV standard. I've worked on the implementation of EMV chip card processing through basically all the major networks and can tell you that we necessarily have access to—and have to store after—the raw card number to facilitate the transaction. There's a lot of encryption involved to prevent bad actors from getting access but it's far from end-to-end.
lyall··on Why are McDonald’s Self Service Kiosks so hackable?
Chip cards do send the card number as part of the transaction. They just also send other information that makes it easier to tell if the original card is physically present, meaning you don’t have to worry as much about someone stealing the details and spoofing your card.

You may be thinking of tokenization, which is a feature of some services such as Apple/Google Pay. This is where a “fake” account number—really a number that is scoped to eg a specific device or a specific merchant—is sent with the transaction. That then gets resolved to the real number somewhere down the processing pipeline closer to the card issuer. The benefit being if someone snoops this tokenized account number they won’t be able to use it thanks to the tight scoping.

lyall··on Overcoming Tab Overload
I've found doing something that sounds crazy very helpful in overcoming my own personal tab overload: automatically closing tabs after they go ignored for a certain amount of time (~12 hours for me). It's garbage collection for tabs! I use the Tab Wrangler Chrome extension[0] for the job, but there are others too.

Turns out that I don't actually care about the vast majority of tabs that I leave open—but can't seem to close!—and the extension makes it easy to re-open any automatically closed ones that I did happen to care about. The result is logging on each day to much less tab clutter than I left the night before.

0: https://chrome.google.com/webstore/detail/tab-wrangler/egnjh...

lyall··on Generating More of My Favorite Aphex Twin Track (2018)
Discussion from when the article was originally posted two years ago: https://news.ycombinator.com/item?id=19490832

I was reminded of this today, and thought it was interesting enough to bear reposting.

lyall··on 'Dord': A Ghost Word
Not just used to! https://www.youtube.com/watch?v=DeiATy-FfjI
lyall··on Stripe refunds: fees from the original charge are not returned
I work on this type of stuff thing at a major payments company and I can say this is _not_ true. For refunds, almost all of the interchange fee is returned. Sometimes even more than the original interchange fee is returned (don't ask why).

Caveat here is that the card networks' rules are ridiculously byzantine and making blanket statements is usually a bad idea.

lyall··on I Can No Longer Recommend Google Fi
Even if it's deserved ;)
lyall··on NYC Mesh – community-owned network to replace your current internet connection
Monkeybrains (https://www.monkeybrains.net/) operates a mesh network in SF. They're not community owned but they are very much a local business.
lyall··on A monoid is a category, a category is a monad, a monad is a monoid
For those want a great intro and overview of category theory aimed at programmers, Bartosz Milewski's lecture series on YouTube [0] is worth the time investment. It covers the topics this post discusses and more, but crucially with plenty of context to help understand why any of it matters.

0: http://www.youtube.com/playlist?list=PLbgaMIhjbmEnaH_LTkxLI7...

lyall··on Things I hate about Git (2012)
It's been discussed on HN before, but gitless[1] is worth checking out. They've taken a structured approach[2] to finding git's most confusing UX "idiosyncrasies" and tried to address them. As a user of regular old git I can't personally speak to how successful they've actually been but it's interesting nonetheless.

[1]: http://gitless.com/

[2]: https://people.csail.mit.edu/sperezde/oopsla16.pdf

lyall··on Use Atom to edit in Chrome
A similar behavior is available with edit-server[1] and the accompanying Chrome plugin[2] in Emacs.

[1]: http://melpa.org/#/edit-server [2]: https://chrome.google.com/webstore/detail/edit-with-emacs/lj...

lyall··on Can the blockchain make Uber, Spotify and Airbnb obsolete?
Obligatory https://en.wikipedia.org/wiki/Betteridge%27s_law_of_headline...
lyall··on Uber shakes up real estate market with massive lease in Oakland
Heroin, like pretty much all opioids, is actually the exact opposite of a laxative. Imodium (Loperamide), a common anti-diarrheal, is actually an opioid like heroin, and works by binding to and activating your body's opioid receptors. It just only binds to receptors in your large intestine, so it doesn't get you "high" like other opioids.
lyall··on YubiKey – Making secure login easy
If you have to get an OTP multiple times a day—say to ssh into a prod server—you quickly learn how laborious it is having to take your phone out of your pocket, unlock it, find the Google auth app, find which OTP you're looking for then finally transcribe it without any errors. Pressing a key combo/tapping the yubikey (depends on the model you have and its settings) is much faster.

To me, not having a yubikey would be like not being able to use cmd-C/V to copy/paste and having to use the system menu every time instead.

lyall··on The Quantum Mechanics of Fate (2014)
It's just comparing time and space by analogy. Instead of two related events separated in time, we have the two ends of the popsicle stick separated in space. Obviously if an event A causes an event B to happen, then changing A will have an effect on B. In the same way, pushing on end A of the popsicle stick will affect end B. But with the Popsicle stick things also work the other way around; pushing on end B affects end A too. The jump is made here: if pushing on end B of the popsicle stick affects end A, then couldn't we imagine changing event B to have an effect on event A (even though A occurs before B)?
← PreviousPage 2 of 2