HNHacker News
TopNewBestAskShowJobs

lisper

57,863 karma · joined January 13, 2008

https://rongarret.info/
submissionscomments
lisper··on When I say “alphabetical order”, I mean “alphabetical order”
> You can say that about every single design decision made about every product.

No, that's not true. Many aspects of my computer's UI are user-configurable.

lisper··on When I say “alphabetical order”, I mean “alphabetical order”
Yeah, exactly. The behavior described is actually very useful. The problem is imposing it on the user with no warning or option to turn it off.
lisper··on AI model trapped in a Raspberry Pi
> if we're allowed to peek under the hood

Peek under the hood all you want, where do you find motivation in the human brain?

lisper··on AI model trapped in a Raspberry Pi
> They are going to act despairing -- but that's not the same thing as despairing.

But how can you tell the difference between "real" despair and a sufficiently high-quality simulation?

lisper··on US airlines are pushing to remove protections for passengers and add more fees
I know that "me too" comments are frowned upon, but I really feel the need to chime in here. Brazil is my favorite movie of all time. It is eerily prescient. It's important to keep in mind while watching it today that it was made forty years ago.

And yes, the director's cut. Absolutely the director's cut.

lisper··on A webshell and a normal file that have the same MD5
> Is there any way to use HN karma?

Nothing other than vanity AFAIK.

It's actually a bit of a scam because karma accumulates and never expires. I've been on the leaderboard for a long time, not because I'm making particularly valuable contributions (I only post a few times a week) but just because I've been on HN since it launched.

lisper··on A webshell and a normal file that have the same MD5
If you don't know, then you aren't the target audience.

But there are two applications: the first is breaking in to a system under some very obscure set of circumstances that you are very unlikely to encounter in the real world. The second is to bump up your karma on HN.

lisper··on After 50 years, The Magic Circle finally inducts Penn and Teller
Yep. I am blown away not just by Dani's execution of this routine, but also by its design. It is a true thing of beauty, with layer upon layer of subtlety that most audience members will never appreciate because they don't know it's there. It is deliberately hidden. It has to be. Being hidden is an essential part of its function. Which is why I always try to seize the opportunity to raise awareness of this sort of thing among muggles.

BTW, if you are a Castle member, Carl Hein is currently doing a routine in the Library Bar that is IMHO in the same league Dani's Fool Us routine. We took some friends of ours to the Castle a week ago and Karl absolutely melted their brains. They're still talking about it. :-)

(And if you're not a Castle member but are in the LA area, contact me privately and I can set you up with a guest pass.)

lisper··on We are starting a company to rethink email
Rethinking email is great, but IMHO you are not taking full advantage of the opportunities that arise from building a new client. When you build a new client, you can not only process incoming emails in new ways, but you can also change the way outgoing emails are handled. You can build a new protocol on top of SMTP that will solve many of the extant problems with email, including authentication and spam. You don't have to put up with the current standards and their historical baggage. You can build a new one.

For example: one of the biggest problems with email is that SMTP is not stateful. It handles all incoming messages in the same way. In particular, SMTP does not and cannot distinguish between spam. Spam detection is invariably relegated to a downstream heuristic system that generally looks at message content to detect spam. But this cannot possibly be reliable because one man's spam is another man's newsletter subscription.

What if instead we moved spam detection into the protocol. What if (say) we replaced the single-step process of sending an email into a two-step process, where the first step involves some kind of hand-shake to establish a connection between the sender and the receiver. This simple change would make it literally impossible to send any kind of spam other than a connection request. Those would still happen, of course (think LinkedIn "I want to connect" messages) but they would be a lot less frequent. And there are ways to eliminate even those annoyances.

A new client could become to email what iMessage is to SMS. You could have "blue bubble" messages that are authenticated as having come from the same client, which insures that the user has gone through some some level of vetting (comparable to an iPhone user signing in to their iCloud account). You could even layer new protocols on top of SMTP that were unique to your client's ecosystem, like sending money.

This idea is conceptually simple but very hard to implement because it has to be done in the client and it has to be backwards-compatible with SMTP. But since you're building a new client anyway, I thought I'd pitch this idea to you. The result could potentially be an entirely new email ecosystem.

If you want to discuss this in more detail, contact me privately. My contact info is in my profile.

You're welcome :-)

lisper··on After 50 years, The Magic Circle finally inducts Penn and Teller
> so much of it boils down to “I practiced for years and developed a seemingly superhuman ability to manipulate this object”.

Amateur magician here (but a magician member of the Magic Castle, so I know a few things). Manual dexterity is certainly a useful skill, but it's just a tiny part of the art of magic. You can be a consummate sleight-of-hand artist and still be a mediocre magician, and conversely, some of the best magicians don't use particularly difficult sleights. The best example of that I know of is Dani Da Ortiz's routine on Penn and Teller Fool Us:

https://www.youtube.com/watch?v=5_KcQt0z-eE

Now, Dani is in fact a master at sleight-of-hand, and so one would think that you are watching a masterclass in sleights, but no. There are a few sleights, but they are not particularly difficult, beginner-level. I could do them, and I'm not particularly skilled. The trick is based almost entirely on timing and misdirection and psychological subtleties.

The degree of psychological subtlety in top-level magic continually blows my mind. The best magicians make it look like magic even when you know how the trick is done. Dani's trick is a consummate example. The performance looks like chaos, but in fact every detail is meticulously crafted and serves a purpose. It's almost like watching a dance.

lisper··on A Generalized Algebraic Theory of Directed Equality
> Programming languages, like all languages, exist for communication between humans.

That is manifestly false. Machine language and Brainfuck are both programming languages, and they are not designed for communication between humans. To the contrary, Brainfuck is deliberately designed to confuse humans.

Programming languages exist to describe processes with sufficient precision that they may be carried out by a machine. You might want a programming language to also serve the secondary purpose of communicating something to a human that reads it, but the vast majority of extant languages are not designed with this goal in mind.

> The power of modern languages come from us quickly being able to understand programs.

Again, no. The power of modern languages comes from providing higher-level abstractions that are closer to human thought processes. Modern programming languages allow you to think directly in terms of things like numbers, arrays, strings, etc. rather than forcing you to think of everything in terms of raw bits. There are many languages that are notorious for making code much easier to write than to read.

> The vast majority of bugs don't come from under-specification, but rather poor/miscommunication.

No, the vast majority of bugs come from a mismatch between the code and the programmer's mental model of what the code does, i.e. the process that the code describes. You can have bugs in code written by a single human. There is no possibility of miscommunication because there is no communication. There is just the code and the programmer's brain.

lisper··on Ultrasonic Chef's Knife
"Please sign in to confirm you're not a bot. This helps protect our community."

Um, no.

lisper··on Perceived Age (2024)
> A study asked different age groups to mentally count 120 seconds. People under 30 averaged 115 seconds; those over 50 just 87.

This can be interpreted in two ways, which lead to diametrically opposite conclusions.

1. I say "start" and you say "stop" when you think 120 seconds have passed, and the result (115 or 87) is the actual elapsed time.

2. I say "start" and some time later (which happens to be 120 seconds, but you don't know that) I say "stop" and ask you how much time you think has passed. The result is your response.

On the first interpretations, everyone's internal clock runs fast (everyone gets to 120 ahead of the actual time), and an old person's run faster than a young person's. On the second interpretation, everyone's mental clock runs slow and an old person's run slower than a young person's.

lisper··on Japan sets record of nearly 100k people aged over 100
> This is about those aged over 100, not 110 which is a completely different ballpark

Is this some kind of new math? 100 and 110 are within 10% of each other, which seems very much in the same ballpark to me.

lisper··on I don't like curved displays
Once upon a time there were these places called “retail stores” where you could go look at actual products and even try them out before buying them.

Alas.

lisper··on A polyglot's guide to multiple-dispatch (2016)
Cue the smug Common Lisp weenies...

Oh, wait, that's me :-)

lisper··on Formatting code should be unnecessary
It is uncommon because it turns out that text diff is good enough 99% of the time, especially if you follow normal formatting and indentation conventions.

Also, structural diff is actually a very hard problem.

lisper··on Formatting code should be unnecessary
> In actual Common Lisp development, code is stored in text files and edited and diffed as text in source controlled repositories.

That's true, but there is a very big difference between S-expressions stored as text and other programming languages stored as text because there is a standard representation of S-expressions as text, and Common Lisp provides functions that implement that standard in both directions (READ and PRINT) as part of its standard library. Furthermore, the standard ensures READ-PRINT equivalency, i.e. if you READ the result of PRINTing an object the result is an equivalent object. So there is a one-to-one mapping (modulo copying) between the text form and the internal representation. And, most importantly, the semantics of the language are defined on the internal representation and not the textual form. So if you wanted to store S-expressions in, say, a relational database rather than a text file, that would be an elementary exercise. This is why many CL implementations provide alternative serializations that can be rendered and parsed more efficiently than the standard one, which is designed to be human-readable.

This is in very stark contrast to nearly every other programming language, where the semantics are defined directly on the textual form. The language standard typically doesn't even require that an AST exist, let alone define a canonical form for it. Parsers for other languages are typically embedded deep inside compilers, and not provided as part of the standard library. Every one is bespoke, and they are often byzantine. There are no standard operations for manipulating an AST. If you want to write code that generates code, the output must be text, and the only way to run that code is to parse and compile it using the bespoke parser that is an opaque part of the language compiler. (Note that Python is a notable exception.)

lisper··on Formatting code should be unnecessary
It never ceases to amaze me how many times people can essentially re-invent S-expressions without realizing that's what they are doing.
lisper··on SQLite's File Format
> The database page size in bytes. Must be a power of two between 512 and 32768 inclusive, or the value 1 representing a page size of 65536.

What an odd design choice. Why not just have the value be the base 2 logarithm of the page size, i.e. a value between 9 and 16?

lisper··on Almost anything you give sustained attention to will begin to loop on itself
> You can't rip apart that word into "auf" and "passen" and then individually translate them literally.

Sure, just like you can't separate "pay attention". Both are idiomatic. But you can separate "aufpassen" into "Paß auf". (For the benefit of non-German lurkers, "Paß auf" is a command to pay attention.)

lisper··on Almost anything you give sustained attention to will begin to loop on itself
What German phrase did you have in mind? Because the idiomatic translation of "to pay attention" is "aufpassen", which literally translates to something like "pass on" or "fit on".
lisper··on Almost anything you give sustained attention to will begin to loop on itself
> In Spanish, you “lend” attention. In Swedish, you “are” attention.

In Hebrew you "place [your] heart" (lasim lev).

lisper··on Google can keep its Chrome browser but will be barred from exclusive contracts
Ah.

For years I have been submitting links through a bookmarklet that goes to /submitlink rather than submit, so I don't get the text box.

I wonder why this feature isn't used more often.

lisper··on Google can keep its Chrome browser but will be barred from exclusive contracts
This story has something I've never seen on HN before: underneath the title and the subsequent "X points by colesantiago N hours ago | flag | hide ..." line, there is a link to https://storage.courtlistener.com/recap/gov.uscourts.dcd.223...

No other story on the front page has this, and I've never seen it before. How did that link get there? It is not the link to the story itself. That is on cnbc.com.

lisper··on Quirks of Common Lisp Types
No idea, sorry.

[UPDATE] There is a clue in section 3.3.1 Minimal Declaration Processing Requirements:

"A safety declaration that increases the current safety level must always be recognized. An implementation that always processes code as if safety were high may safely ignore this declaration."

To me this seems to imply that the default value of SAFETY is implementation-dependent.

lisper··on Why haven't quantum computers factored 21 yet?
Yes, of course that is true. When I said that QC is "just an engineering problem" I did not mean to imply that it was straightforward. It's not. It's a Really Really Hard engineering problem with a lot of unknowns. It might turn out to be like fusion, perpetually 10-20 years away. Or it might turn out to be like the blue LED, seemingly impossible until someone figured out how to do it. I think you'd be foolish to bet your life savings on it either way.
lisper··on Quirks of Common Lisp Types
> it allows for undefined behavior, but UB is (mostly, as far as I know, I'm sure someone will jump in and correct me ;) ) off by default.

It's actually much more sophisticated than that. See:

https://www.lispworks.com/documentation/HyperSpec/Body/01_db...

lisper··on Why haven't quantum computers factored 21 yet?
It's certainly possible that computers will suffer from all the same foibles that humans do, but we have a lot of evolutionary baggage that computers don't, so I don't see any fundamental reason why AGIs could not transcend those limitations. The only way to know is to do the experiment.
lisper··on Why haven't quantum computers factored 21 yet?
It's not really about "steps", it's about getting the architecture right. LLMs by themselves are missing two crucial ingredients: embodiment and feedback. The reason they hallucinate is that they have no idea what the words they are saying mean. They are like children mimicking other people. They need to be able to associate the words with some kind of external reality. This could be either the real world, or a virtual world, but they need something that establishes an objective reality. And then they need to be able to interact with that world, poke at it and see what it does and how it behaves, and get feedback regarding whether their actions were appropriate or not.

If I were doing this work, I'd look at a rich virtual environment like Minecraft or simcity or something like that. But it could also be coq or a code development environment.

← PreviousPage 8 of 34Next →