Back to writing

Cyborgs on HN (¶)

This page collects comments which make unnecessary or tenuous analogies to computers, programming, dollar-sign $variables, sed's/replace/syntax/g, mathematics, AI/machine learning, and cryptography in discussions that aren't about those things.

We refinanced during the pandemic with $MEGABANK, and they almost exclusively used third parties and email for the entire transaction.

I also called the office number I found at $MEGABANK's website to make sure they'd heard of me.

Beyond that, I had no reason to think $TOTALLY_LEGIT_ESCROW.com was not a phishing front.

At $WORK, we run a lot of 1000s of php servers with 10-20 processes each using nginx.

A 5-story building in China 'walks' to new location (cnn.com)

City refactoring

People intruding the private email? No problem. Politely refuse, and offer private consultancy at $very_high_price, with alternative, to open a bug in the bug tracker, making explicit that there is no commitment.

Watch and listen to pilots as they complete checklists. They point and callout each item, switch setting, etc.

Came here for this.

A: "Passing control"

B: "Taking control"

A: "You have control"

B: "I have control"

This is how I remember it (6174, UH-1Y).

The TCP handshake IRL

Some reporter finds out that $government is doing $bad_thing. They pack up the evidence, rush out the door to talk to their editor. A slick, self-driving car pulls up as they exit the building, they enter and pull away.

> personally never understood why one would pick this over date/hour

Providing a timestamp gives you the same information with higher precision provided you know when now is. I can tell you what day of the week it is, but not what the day of the month it is. Sometimes day of the week even takes extra cycles.

> I am trying to be a good novelist, and hoping that people will forgive me for being a bad correspondent.

%s/novelist/coder

%s/a bad correspondent/unresponsive on slack

Unacademy focuses on test prep and thier anthem while sappy and gung ho, doesn't really have any references to gaming the system. Crack it is in the same vein as Cracking the Coding Interview.

Which is gaming the system, if you ask me.

Cracking coding interviews would be considered "overfitting" in statistical learning parlance.

I own a business. If I was to do a full inventory, I would probably find I'm in the possession of tens of thousands of items. I'm currently in the situation where something breaks daily. It has forced me into being very picky. I no longer buy things, if I can avoid it. Every thing I buy has the potential of being a problem down the line that will require time and attention. Even disposing of broken things can be a big hassle.

This advice applies directly to software. Bring in more dependencies, bring in more custom tooling, and you're bringing in more maintenance burden. There will be bugs. Make sure you really need that shiny new framework.

He wrote an OS project that runs all the infrastructure for your very own dictionary website.

For the confused reader: s/OS/OSS/

Who else has an install base like Amazon in their Alexas and Rings?

a company like Arris that sells DOCSIS3/3.1 cablemodems and GPON end user CPEs to big ISPs like Shaw, Comcast, Charter, Wave/RCN, etc. The main problem with that concept is that if a manufacturer of residential CPEs such as Arris made a unilateral decision to incorporate the tech into their cablemodems and other devices, their $BIGISP customers might not be pleased about it and would buy elsewhere.

Never attribute to malice that which is adequately explained by stupidity"

-Hanlon's razor

Advanced malicious actors often feign incompetence when caught, to take advantage of the naive and forgiving.

This is a basic part of the human OS.

Years ago for my sister's 30th birthday, I did a fun project involving the USPS.

I wanted to send her the message "Happy Belated Thirtieth Birthday!", which is 30 characters, via postcards, one character per postcard.

...

You've reinvented TCP using paper packets.

Because Alibaba, and now Amazon require tracking numbers from sellers.

From time to time they take these tracking numbers, and check them with APIs of shipping companies, and postal services. If a seller has too many invalid tracking numbers, or shipments that don't match the address, they rm -rf him.

If you are at $BigCorp there's probably only a rough correlation between what you are paid and what you are worth.

"Ping me" really threw me for a loop the first time I heard a non-tech say it in an obvious non-tech way. It literally has no other meaning outside of the ICMP echo utility; and the onomatopoeia of hitting glass.

How did it enter the Business world?

Ping comes from submarine sonar - not the networking world.

Writing clearly is like playing Tetris. Sentences should be presented with clauses that drop down and slot together efficiently. At the earliest available opportunity you drop in a block that completes the line and points are won/made.

Don't make your readers hold parts of the sentence in their head. Reorder or split sentences until it can be avoided. In other words, use a really small buffer.

Overflowing that buffer really does feel like a stack overflow, too. Your whole mental state just suddenly disappears in a puff of smoke.

This resplendent sentence in the Vulkan spec did it to me the other day:

The layout of subresources of images on other logical devices that are bound to VkDeviceMemory objects associated with the same underlying memory resources as external memory objects on the lost device becomes VK_IMAGE_LAYOUT_UNDEFINED.

I got about half way through and suddenly discovered I didn't know where I was, what year it was or my name.

That's a lot of qualified noun phrases. This should just be an s-expression. It's already one, honestly, but without the right parenthesis.

(becomes (qualified (layout of subresources of images on other logical devices) (bound . (same-memory-resources (VkDeviceMemory objects) (external memory objects on the lost device)))) VK_IMAGE_LAYOUT_UNDEFINED)

This is how I felt while reading philosophy essays. I'm not even sure half of those are even saying anything. reply

A lot of philosophy essays are written as part of the writer being in the process of trying to figure things out for themselves, without quite having gotten there yet. reply

It really shows, just like docs written by someone who hasn't actually understood what they're writing about yet.

I don't know if it's just me, but I very much prefer easy to skim emails to more dense ones. At one point I got weekly project updates from a team I was working with, and one guy wrote dense, short, emails where I would have to read every sentence carefully to get a hang on what was going on. Another guy would write longer, fluffier emails but with bullet points and paragraphs in the same order:

Just by parsing the number of bulletpoints, and the length of each bullet point (and the first word) I would get a surprisingly good grasp on how things were going, and what was hard/complicated (longer bullet point -> more complex), and very easy to read about exactly I wanted to know.

This is how the so called sutras are written: a page of text gets compressed into one short sentence, so you have to stop after each of them and spend an hour unpacking its meaning, but the entire book is often just 200 sentences.

.zip format in history.

Spotify CEO: musicians can no longer release music only “once every 3-4 years” (thefader.com)

"What's he going to record a song about?"
"Nothing."
"Spotify'll kill him."
"I guess they will."
"He must have got mixed up in something with the music industry."
"I guess so," said Nick.
"It's a hell of a thing."
"It's an awful thing," Nick said.
They did not say anything. George reached down for his mobile phone and wiped the screen.
"I wonder what he did?" Nick said.
"Failed to write enough songs fast enough to generate user engagement. That's what Spotify will kill them for."
"I'm going to cancel my Spotify subscription," Nick said.
"Yes," said George. "That's a good thing to do."
"I can't stand to think about him waiting in the recording room and knowing he's going to get it. It's too damned awful."
"Well," said George, "you better not think about it."
(with apologies to Hemingway!)

God help me, I can't tell if this is GPT-3 or not.

"This writing looks computer-generated" as a compliment is kind of blowing my mind

Roman numerals by and large were not used for calculating, but for recording calculations. Those calculations were done (as the very word “calculate” suggests) using pebbles or other tokens, on some kind of counting board.

The point of Roman numerals is to be as direct as possible a representation of the state of the counting board. They are a serialization format.

Think of it as the JSON (or s-expressions if you like) of the ancient world. You don’t run your algorithm by writing and rewriting JSON literals over and over with pen and paper. They are just a record; your computation is done using a different automatic tool.

Many people assume their manager knows what the employee is doing. They often aren't, meaning they go by what they can see, which is lines of code. The smart thing to do is to regularly keep your manager updated on what you're doing, especially if they don't come by regularly and ask you.

Rather than an integer number of lines of code, how about using a boolean : "it works" or "it does not work"?

Not everyone has good managers.

$JOB-2, admittedly about 4 years ago now, the good manager with a background in software left for a better opportunity and was replaced by someone who's background was management.

My grandfather used to sit with me for an hour every morning and used to teach me maths.

He would focus on basics first. He would make sure I had the basics drilled in to me. Not just understood them, but mastered them. Then we would move on to the next topic.

It was a bit slow at first. But after a while, once the basics were done, I finished the whole year's math book in 2-3 months.

Drilling basics is basically like having the basics in O(1) look up with very reduced space complexity too. It reduces the amount of overhead your brain utilises.

This reminds me of a story I once heard about shipbuilding during WW2. Supposedly, although designs and blueprints were made in great detail, following them today wouldn't give working ships, because the workers implementing them at the time saw where the designs wouldn't work and fixed them of their own initiative.

In a way, the opposite of today's optimizing compilers.

I have a heuristic. A 'code smell' for social science articles,

Why do you think this is specifically a 'western society' thing? Browse Japanese sites and online tools and there is just as much gamification and 'thrilling' graphics and animation - if not more. Github looks like a technical white-paper in comparison.

Modern Japanese culture is considered to be part of "western society", for better or worse.

The converse statement is something like "Japan is not an eastern society" which just sounds... laughably incorrect.

Of course it sounds ridiculous. Boolean algebra says the validity of a statement's converse is independent of the original. P → Q, tells us little about Q → P.

I love a good font (and try to use one on my own blog), but part of me gets really giddy when I discover a site with very little styling. It's like I've found some secret oasis that's going to have a high signal-to-noise ratio, or at least some more "raw" writing than you'd find on ${popularNewsWebsite}.

Remote work has its perks, until you want a promotion (wired.com)

Humans don't have emotional object permanence.

A perhaps more techie way of thinking of it is our relationships are in a mostly-LRU cache. The people we have interacted with most recently are the ones that matter most to us. If you aren't regularly resetting your place within that cache, you get bumped.

The LRU cache analogy might be one of the best comments i have ever read.

We probably wouldn't hesitate to say "I don't believe $NONHUMAN_ANIMAL parents love their children, and vice-versa...." about most animals.

Blogging Is Not Dead (garron.blog)

"X is alive / X is dead" is binary thinking and taking sides on this is pointless and divisive. Better to use a float rather than a boolean to model how popular something is.

What surprised me most is that he presented himself as the biographer of James Bond, as if he were real. I wasn't aware of that history.

It's a writer's technique somewhat similar to method actors who take on the character's persona as their own for the duration of a play or filming. Pretty much as far from "kill your darlings" as one can get, tbh.

Forking your own thinking process to have a secondary personality execute in parallel sounds as close to "killing your darlings" as possible, given that personality would presumably have their own favorite expressions and tropes.

Interesting: whoever edited that article miscorrected "cobble" to the likely more familiar but incorrect "cobblestone".

I've seen a huge increase in such errors over the past decade, both in terms and tense. I don't know how to explain it but it is discouraging. Sometimes the errors are quite confusing until you realize what happened; this one is quite minor.

In Minecraft "cobble" is certainly understood to be short for cobblestone. A "cobblegen" is either an arrangement of materials (lava, water, something heat resistant) so as to cause the game to make and replace cobblestone blocks when you mine them out, so as to obtain unlimited amounts of this building material, or in modded Minecraft it's a more compact machine which makes this material, perhaps in very large quantities indeed, and maybe related materials like sand.

Hey, just a head's up, I was reading your blog and noticed a typo: s/formally/formerly/

eg. go watch a SGM play 30 second hyperbullet chess, I don't think I have either the memory or raw processing speed to do what they do, ever. If those guys exist a lot of other people have way higher ceilings. Also realize that chess (and by extension must be a lot of other activities) rely on both a crazy cpu, an amazing memory and an insanely built-out internal database of positions and ideas, and since my cpu is good but not unbelievable, my memory is nothing special and my time is limited there must be a lot of activities I'll never really be good at. Also just getting older and staying unsuccessful relative to your ego, you just start to compromise I think.

My response to picking up a number is to answer the call and say nothing. Auto-dial systems will route the call to a person when they get a "live" response. I don't know the criteria but I'm pretty sure it's them detecting noise on the call (which could be voicemail).

A human calling will wonder what is happening and fill the silence by saying something. A machine will not.

I've encountered robots in the last 6 months that have started with "Hello?" when I didn't say anthing. It tripped up my Turing Test at first, but eventually hit an ALICEBot-like moment that crashed the whole thing down.

Real wages haven't increased since 1970.

We only feel richer because:

* Most households have two wage earners now.

* We use lines of credit to borrow for discretionary purchases, we lease cars, pay by subscription for things more.

* We have more gadgets. (Note that this has been proven to make people any happier.)

> Note that this has been proven to make people any happier.

s/Note/Not/? Or are you missing a "not" somewhere else?

In my former life as a consultant I came to very much dislike personas as implemented by ux designers.

Personas are a magnet for prejudice: they are based on the idea that clusters of people all behave the same (old people, young people, professionals, stay-at-home mothers, what have you).

Yes, the very idea that customers can be bucketed is flawed. We are all unique people.

I think GP is fine with bucketing, but they're saying that f(age, gender, interests, ...) is not a good hashing function.

Is it possible that people simply continue to think about what they were trying to learn, consciously or not, when given no tasks? Why is the control comparing people who tried to learn information and then took a break to people who tried to learn even more information? Would a more insightful control be to look at how people who took a break compared to people who continued studying the material during the break time?

I agree with you entirely. I want to make a few points though. First is that even when I am actively listening to someone speaking, my brain will make associations with the new information (coming from my auditory sensory registers), so I context-switch involuntarily every second. Think of process preemption.

Roughly like this:

t0: hear the word "dog";
    my auditory registers record it

t1: my brain processes the word "dog";
    I imagine what "dog" looks like
    hear the word "cat" concurrently, goes into registers

t2: my brain processes the word "cat"
    I imagine what "cat" looks like
    hear the word "lamb" concurrently, goes into registers

I've timed it in actual play: it's quicker to google for a monster stat block (one from the SRD, obviously) than it is to look it up in the Monster Manual sitting right next to the laptop.

Sure, but from experience in play, sticky notes in the Monster Manual are much faster for switching back and forth than browser tabs are.

That's a cache, though, when the use case at hand is random access.

Brain is very active when you sleep, a lot is happening. Imagine sleep is just a mutex on big set of data on which computation needs to be made, compression, data reorganization, index optimizing. Data that you received that day is segregated , decisions are made which data to keep and which to delete. After that lock is freed and you wake up. If you don't sleep your system will run slower and slower over time and will timeout more and more queries until it will start to return corrupted data. You need to sleep to keep the system healthy.

tl;dr: It's not because the cardboard boxes are significantly better than cribs and other sleeping methods, it's the fact that the box comes with almost everything a new parent needs to look after kids, which means they don't have to shell out $foo-money to be able to take care of the children properly, and aren't left worried that they left something out.

English pronunciation <-> writing is so far from a mapping, it causes a lot of resource waste.

Even if there are dialects that pronounce the same word differently, you could still find a lot of common ground.

Finding that common ground would mean switching from our current system of somewhat-arbitrary spelling to a different but very similar system of mostly-arbitrary spelling. It imposes the same memorization burden on everyone and the benefit is slightly more predictable pronunciation within each of a set of officially-blessed dialects. That ground gets lost over time regardless; there is a reason predictable pronunciation is a feature of spelling systems that either (1) are new, or (2) have just undergone reform.

If your biggest problem lies in a circumstance you rarely encounter, arguably fixing it is not a priority.

> for example I always mess up the words study and student, it's infuriating

This is a funny example to use, since it fully conforms to the rules I described above — study uses the STRUT vowel, and student uses the GOOSE vowel. It would be a better example for the complaint that we have more sounds than symbols.

Good points, but I disagree. Decoding and encoding becomes a lot harder, if vowels change depending on consonants coming after them, or something else even further down the line. (I'm not a linguist.)

It's like a config file specification that supports gotos.

Because there's a bit of a feedback loop with success. If others see you as being successful or impressive (on whatever axis they care about), this attracts them to you, and having a more admirers increases your social power and influence, which gives you more opportunities and better chances of success in your future efforts.

This also explains [redacted]'s formula for career success, which is basically:

10 Make something awesome

20 Tell people about it

30 GOTO 10

English suffers from the same problem as UNIX: they're both good enough.

Or you know, just look away from the monitor, in the physical space of your office/whatever instead of a flat surface, which would have similar benefits.

So many office spaces are rectilinear and planar. I find the fractal real world to be so much more restful to look at. It refreshes my mind in a way unlike any manufactured surface.

There are few things in life more important than choosing one's peer group well. The Internet gives you many more options than we had available prior to the existence of it. Choose wisely and re-evaluate that choice periodically to see whether your peer group continues to represent your goals and values.

Why? Your peer group literally gets arbitrary code execution on your brain. (It's a flaw in MonkeyBrainOS 1.01 which we haven't patched yet.)

It's common amoung US companies as well. How many tech companies aren't available in !USA? How much "streaming TV shows" aren't available in !USA?

Walking Through a Doorway Makes You Forget (2011) (scientificamerican.com)

Not entirely unlike running a garbage collection cycle (or freeing a pool) after each HTTP request...

Great read. Somewhat of an off-topic question, but here goes:

> Watkins wanted her pen name to be spelled in lowercase to shift the attention from her identity to her ideas.

I’m sure what I’m about to say has been discussed before — but wouldn’t this accomplish the opposite effect? I feel her “unconventional” name makes me focus more on it, not less (especially when her name is used at the beginning of a sentence, where we are trained to expect a capital letter no matter what). Do other people with lowercase names have similar justifications?

To me it's a small pattern breaking annoyance, like a linter warning I can't turn off that triggers every time I see it.

Mobile app stores handle a lot of hassle like distribution and billing. I would avoid complex backend at all cost if you don't want to be on 24/7 devops duty. Maybe periodically updated CVS at basic webhosting would be enough.

s/CVS/CSV/

Slight note about Dan Wang picking 2005: That was the peak of CS degrees awarded because it's 4/5 years after the height of the dot-com bubble. So the upward bump in the mid-2000's is somewhat explainable as an anomaly.

Re: the choice of 2005 as origin, if you rebase on 2009, then CS degree growth looks on par with other STEM fields.


View this document's history