HNHacker News
TopNewBestAskShowJobs

xamuel

3,488 karma · joined March 30, 2012

samuelallenalexander gmaildotcom
submissionscomments
xamuel··on I've acquired a new superpower
No need for the Mac Plus program, you can make these in any text editor. Use a fixed-width font and fill a line with a repeating word eg

WORDWORDWORDWORDWORDWORDWORDWORDWORDWORDWORDWORDWORD

Then copy that and paste it a bunch of times to make it multi-line.

Cross your eyes so that the WORD's overlap (all except the leftmost and rightmost). You now see two cursors instead of one. Position your two cursors anywhere you want and then insert a space in order to make the corresponding WORD (or ORDW or RDWO or ORDW) sink into the screen. (Or rise if you parallel-view.)

We used to do this in the computer labs back in 6th grade.

xamuel··on I've acquired a new superpower
I wrote a paper about doing this using human eyes as the "repeating pattern" (either someone else's, or your own in a mirror): https://philpapers.org/archive/ALEDSK.pdf ...You can use this trick to make boring meetings or conversations mildly more amusing (but be careful not to look like a clown crossing your eyes).

If you're an expert at this, you can even do it to your own hands. Hold both hands in front of you but with one of them palm-away and one of them palm-toward you, so that they have the same shape, then cross- or parallel-view them to get an illusionary middle third hand. Walk around while focusing on the third hand and it's a seriously trippy effect.

Another "super power" application similar to OP: the ability to confirm whether or not two distant digital clocks' seconds-digits are perfectly in sync. Since they're distant, it takes time to shift one's gaze from one to the other, making it hard to confirm whether they're in sync. But cross your eyes so as to reduce the distance, and voila.

Yet another application: quickly assume the same head-tilt angle as your conversation partner. Suppose they tilt their head to the left by N degrees and you want to tilt yours the same way, how can you be sure you have the exact correct tilt? Easy: parallel-view their eyes (as described in the aforementioned paper). You will HAVE to tilt your head the same as them in order to see their "third eye" (and once you've locked on to their third eye, you can effortlessly adjust your head tilt as they do by using their third eye as the necessary guide)

xamuel··on Ask HN: What's the most creative 'useless' program you've ever written?
My Library of Ordinal Notation Systems shows a way you can systematically write more and more complex code, with no end---even if you had access to strong AGIs, they could never "finish" the exercise. https://github.com/semitrivial/IONs
xamuel··on Playing Sudoku in TypeScript while the type checker highlights mistakes
Compile error messages in a classical typed language: "Error: Object of type 'StructA' cannot be assigned to variable of type 'StructB'"

Compile error messages in TypeScript when you use a library like React: "Error: Cannot reconcile <5 pages of arcane gibberish> with <5 pages of different arcane gibberish>"

xamuel··on Dependencies and resilience
I wonder how much dependencies could be reduced by systematically searching low-hanging fruit and addressing it ad hoc. For example, if commonly-used library A uses one minor thing from (and thus imports all of) library B, which in turn imports hundreds of other libraries, then someone should add the minor thing in question to A and remove the dependency on B there.

It's interesting to think of how this sort of "neighborhood watch" could be incentivized, since it's probably way too big of a task for purely volunteer work. It's tricky though because any incentive to remove dependencies would automatically be a perverse incentive to ADD dependencies (so that you can later remove them and get the credit for it).

xamuel··on World's Smallest CSV Parser (C#)
Funny story re "nobody should be rolling":

When I was switching from academia to industry, I decided, based on HN comments like this, that I should un-publish my CSV parser.

I was worried potential employers would tsk-tsk me for self-rolling.

I promptly got an email from the creator of Ruby asking me why I had un-published my CSV parser, which apparently was being used in Ruby at the time.

(...And then later I landed my current job, a dream job, a large part of which involves handling CSV files in finance!)

xamuel··on World's Smallest CSV Parser (C#)
Linebreaks can be escaped in CSV, so splitting a file into rows is actually ~1/3 the complexity of parsing a whole row.

See: https://github.com/semitrivial/csv_parser/blob/master/split....

Though I suppose that's the naive approach. You could combine the two into a single file by, like you say, wrapping the row-parser in a (clever, non-trivial) outer loop, and it probably wouldn't take anywhere near 1000 characters to do that...

xamuel··on World's Smallest CSV Parser (C#)
Very nice. The submission's main file (SmallestCSVParser.cs) is 3851 characters (of which 657 are commentary).

Mine, in C, is only 2807 characters (of which 198 are commentary):

https://github.com/semitrivial/csv_parser/blob/master/csv.c

Ahh, but the submission's main file is for parsing an entire .csv, whereas mine is only for parsing a single "line" (possibly including quote-escaped newlines). So the submission wins :)

xamuel··on Among the A.I. doomsayers
>The hour before the Kitty Hawk flight, the two most informed people in the world on the topic of heavier than air flight were a pair of bicycle retailers and manufacturers named Wilbur and Orville.

Actually, this is quite false. There were many people working on flight with massive credentials and massive funding. That the Wright brothers beat them is part of what makes the story of the Wright brothers so interesting.

xamuel··on This Is Knuth 3:16 (2002)
For those who enjoy Knuth's religious humor, his "Surreal Numbers" is a must-read. It's a novel/dialogue in which two characters discover an ancient stone tablet containing the Law which defines surreal numbers. "In the beginning, everything was void, and J.H.W.H. Conway began to create numbers..."
xamuel··on Things I don't know about AI
>Suppose these models are found to be reliable enough for certain mission critical work (healthcare, defense, etc.) and they lead a user down a path that results in harm or death? Who's at fault? Suppose it becomes a liability of the company offering the model? How does the insurance market respond?

So much this. I think a lot of people overlook this aspect so much. I wonder if we'll see a corporate push to make people think of individual instantiations of LLMs as being their own entities, for scapegoating purposes. It's completely ludicrous, but you know they'd just love to point a finger at Machine #73583 and make that take all the blame.

xamuel··on Dr Strangelove at 60
Some observations I've made about the film and haven't seen anyone else make:

* "Strangelove" = "Strangle" + "Glove"

* In many war room scenes, if you squint, the table looks like a mushroom cloud. The circular light above the table is the "halo" of the mushroom cloud.

* When Mandrake first learns what General Ripper is up to, at one point the camera angle makes it look like Mandrake is a tiny doll of a man standing on General Ripper's desk.

* The film features many nested levels of self-destruct systems interfering with each other. The Doomsday Device, the decision to help the USSR shoot down the bombers, even the bomber's own self-destruct system (which ironically blows itself up, not the plane, and in the process destroys the decoder system so the crew can't receive the recall code). For example, if the president hadn't helped the USSR attack the bombers, then said decoder wouldn't have been destroyed, and Armageddon would've been avoided.

* The closing scenes feature real atomic blast footage, some with ships nearby. Some analysts incorrectly think this is a continuity error, as the Doomsday Device was landlocked. But in fact it's perfectly consistent with the last lines of dialog: even post-Doomsday Device, mankind cannot even get along to escape into the mineshafts peacefully, instead entering a full-scale nuclear conflict despite the futility of it all.

xamuel··on On Leibniz Notation
One can make a very good argument that in elementary calculus, we actually use what logicians would call "terms", but refer to them as "functions". For example, if f is a unary function symbol and x is a variable then f(x) is a term, different from f(y) if y is a different variable. It's possible to develop everything quite rigorously using this machinery and when the dust clears, you get a rigorous version of what is actually done in practice in the elementary calculus classroom. As an advantage, certain things become much clearer, for instance, there's a very nice abstract multivariable chain rule which I describe in this paper: https://philpapers.org/archive/ALEFDV.pdf
xamuel··on First word discovered in unopened Herculaneum scroll by CS student
I wouldn't recommend the Parmenides as one's first step into Plato, it's one of his hardest dialogues. I'd suggest the Alcibiades as the best Plato intro. It's lighthearted to the point of pleasure reading, yet at the same time deep and profound. https://www.gutenberg.org/ebooks/1676
xamuel··on The midwit home
Incorrectly titled. The "smart" devices from the first part of the article ARE the midwit solution. The better devices in the rest of the article are the actual right-end-of-the-bell-curve solutions.
xamuel··on GCC Preparing to Introduce “-Fhardened” Security Hardening Option
>The correct thing is that "I didn't initialize it" won't compile

Flawless detection of uninitialized reads would require solving the halting problem, which is impossible. So requiring initialization does prevent optimal efficiency of some theoretical programs. Of course, this would only matter in cases where performance was extremely critical (and the whole point becomes moot if the alternative is to automatically zero the memory, which is even worse in this pedantic optimal-performance sense).

xamuel··on Intermediate sci knowledge associated with overconfidence and negative attitudes
I feel like this has been part of the latent background memetic knowledgebase for many years now: https://knowyourmeme.com/memes/iq-bell-curve-midwit/photos/
xamuel··on You (maybe?) have thousands of ancestors from the 1600s
>I know the names to the 1600s and further

That is, assuming the officially recorded parents are the actual biological parents. It's not nice to talk about in polite society, but sometimes people are mistaken about biological parenthood, most often fatherhood but sometimes motherhood too (think: babies swapped at the hospital). All it takes is one error to invalidate the whole line behind it (though, eventually the line will hit your ancestors again anyway).

xamuel··on You (maybe?) have thousands of ancestors from the 1600s
You do not necessarily have 4 grandparents. Try to think of ways in which you can have fewer than 4 (hint: it's a little bit impolite to talk about). Neither do you necessarily have 8 great-grandparents, for the same reason.
xamuel··on You (maybe?) have thousands of ancestors from the 1600s
It's not enough that they "had any children". For example, if they had exactly one child, and that child was childless, then they are not your ancestor.

Biologists define the "identical ancestor point" to be the most recent time X in the past such that every person alive at time X is either an ancestor of everyone alive today, or of no-one alive today. Computer simulations suggest that the identical ancestor point is quite recent in geological terms, e.g., it's probably within the past few thousand years (it would be even more recent if we ignored remote places like Tanzania). See: Rohde et al (2004), "Modelling the recent common ancestry of all living humans", Nature. https://www.math.arizona.edu/~bhallmark/TMRCA/naturerohde.pd...

xamuel··on Apple Maps Gradually Winning over Google Maps Users, Report Suggests
Apple Maps is great, one thing they could improve though (on iPhone) would be to nail down the location of the input boxes. Currently they jump around when content finishes loading, which often leads to the user pressing the wrong button.

Google Maps when you're driving in Brooklyn: Instead of "Take a right on Avenue Q", it'll say something like: "Take a right on Thomas L. Jefferson Remembrance Honorary Memorial Boulevard Avenue Q"

xamuel··on Threads: The BBC drama which affected a generation of viewers
Part of the subtle brilliance of Threads is how it deliberately withholds information from you. You do NOT learn the fate of many of the characters. Including---spoiler alert---the character you initially THINK is the main protagonist, until halfway through the film when he disappears with never another trace. You do NOT learn the fate of the rest of the world besides the UK. All of this is brilliant because the characters themselves would also never learn those things.
xamuel··on Everything must be paid for twice (2022)
You might be short-changing yourself more than you realize. I was similar for most my life, but this year I decided to learn about fashion and actually dress nice. Not only do I look a million times better, but---surprisingly---it actually physically feels better when your clothes fit just right. It's like they're hugging you throughout your day as you wear them. Can't believe I went so many years without ever realizing this. Probably a lot here on HN who grew up poor and became "new money" through software dev are short-changing themselves like this.
xamuel··on Solaris movie review and film summary (1976)
Yeah, that film is Stalker (and boy is it boring)
xamuel··on Solaris movie review and film summary (1976)
>Trouble is I know I'm going to be bored crapless

You're certainly right. All Tarkovsky's films are astonishingly boring. It takes a lot to be able to appreciate that sort of film. Learning to enjoy boredom is one of the greatest things I've developed in my life. It's like a superpower, it enables me to read vast quantities of dry but wonderful nonfiction, for example. I wish I had developed this power decades ago, but maybe that wouldn't have been possible without the necessary life experience.

xamuel··on Solaris movie review and film summary (1976)
Solaris is my favorite Tarkovsky film. Some observations:

* When they assist the exhausted Kelvin to his room near the end, his body blocks the light but occasionally his body moves so the light can come through and blind the camera. This parallels the discussion about destroying the visitors with a burst of light.

* Burton's extended unexplained car ride is (in my opinion) a nod to the 2001 star-gate. It's quite brilliant how Tarkovsky shows that what Kubrick achieves with exotic special effects can be achieved with everyday footage if we just look from the right angles and play the right soundtrack.

* In the old footage they watch near the start of the film, we see stylistic artwork of important figures in the background. These would certainly be informed by Tarkovsky's expertise on Orthodox Iconography (see his "Andrei Rublev").

* Interesting to compare and contrast the visitors with Kubrick's "HAL". The visitors are purely physical and totally unaware of where they are/what's going on. HAL is purely mental and totally omniscient. Both raise all kinds of interesting metaphysical questions about personality and the soul.

* The swirling water-plants at the beginning and end of the film are evoked by the paper strips the crew hang up on their ventilators.

* Near the beginning, Kelvin stands outside in pouring rain, as if not noticing it, when he could escape it by walking just a few feet. This becomes very meaningful with part of the twist in the ending.

* Young Burton talks about how gigantic the child he saw in Solaris's ocean was. Later, when the visitor is frozen from the dry-ice suicide attempt, we briefly catch a glimpse of her face reflected in a concave mirror which makes it seem monstrously gigantic.

Right now the entire film is available free on YouTube: https://www.youtube.com/watch?v=LutMHAeCfLU&t=5193s (turn on closed captions unless you speak Russian)

xamuel··on Writing the Most Boring Quine
No reason to stop at print("print()"), you can nest further, print('print("print()")'). And then you can short-circuit the process, write a single program which first does print(), then print("print()"), then print('print("print()")'), then the next level, then the next level, etc. And no need to stop there: once you have that program, you can print IT. And then continue the process.

I've done this up to level omega^omega at my Library of Intuitive Ordinal Notations: https://github.com/semitrivial/ions/

xamuel··on The unknown language and letters of Hildegard von Bingen (2015)
In addition to her writings, von Bingen was also an interesting musical composer. There's a learning curve when you listen to her music because it's so incredibly stripped down. But once you get past that, it can be mind-altering. Performances are available on YouTube and elsewhere.
xamuel··on The Making of Dr. Strangelove (2013) [video]
Kubrick films often have "once-you-see-it-you-can't-unsee-it" easter eggs. In Strangelove there's an amazing one: the big circular table in the war room (with the circular lights above it) looks like a mushroom cloud if you squint at it right.

Bonus "can't-unsee-it" in the title itself: Strangelove = Strangle + Glove

xamuel··on Moon Illusion
Your covering-one-eye thing works particularly nicely if you use it in a place where you can see the tops of lots of trees at various distances overlapping each other. Cover one eye and suddenly all those canopies become one depthless blob, like it's one gigantic treetop.

It sounds like you might be interested in experiments with deliberately redirecting your eyes. There's lots of interesting phenomena you can achieve by pointing one eye at one thing and another eye at another thing. Here's a paper of mine which can serve as a sort of stepping stone into this wide unexplored field: https://philpapers.org/archive/ALEDSK.pdf

← PreviousPage 2 of 34Next →