HNHacker News
TopNewBestAskShowJobs

DavidWoof

1,452 karma · joined February 29, 2012

submissionscomments
DavidWoof··on Where did all the public bathrooms go?
That's not true. As with all game theory payouts, it's not saying that a Nash equilibrium is inevitable, it's saying that to avoid it you need incentives outside the game, it's saying that the incentives of the game itself don't suffice.

In terms of "the tragedy of the commons", that outside incentive is usually public shaming in smaller communities, or rules and laws in larger and more anonymous communities. If you look at shared resources across history and cultures, you usually find communities enforce very strong outside incentives against spoiling the commons instead of just relying on the kindness of strangers.

DavidWoof··on Never talk to the police
Under what circumstances a passenger needs to identity themselves differs significantly from state to state. Also, neither Brendlin v. CA or AR v. Johnson talk about identification requirements, so I'm not sure what you're thinking there. Maybe you're confusing it with exiting the car?

And before someone says "but the Supreme Court overrules the states", no it doesn't. Many state courts have found that their state constitutions grant their citizens more rights than the US Constitution in various circumstances.

DavidWoof··on The greatest shot in television: James Burke had one chance to nail this scene (2024)
I loved Connections so much as a kid, but I'm so tired of this clip. There's so many better clips from this show.

So he nailed a 13 second countdown. Who cares? Newscasters do this at every commercial break. Sports announcers do this without a script and they still nail the cut to commercial almost every time. Yes, there's a talent to timing your speech to a countdown in your ear, but it's a talent that people do thousands of times a day around the world on far less preparation than Burke had here.

The fact that this article calls a simple cut a "sleight of hand" just terrifies me. Does the public really not know what editing is?

DavidWoof··on 65% of Hacker News posts have negative sentiment, and they outperform
It's very common the US as well, but primarily in education circles. I honestly have no idea what percent of the general public would recognize it immediately (hard to know for anything, really).
DavidWoof··on The Banished Bottom of the Housing Market
> My understanding was that it was the tenant rights movement that killed SROs and boarding houses by making it practically impossible to keep them orderly

It depends on the time frame you're talking about. Long-term SROs like boarding houses were absolutely affected in the 50s/70s by tenant rights laws. But they adapted. In the 70s/80s, SROs were still widespread in large cities except that they all had occupancy time limits (usually 60s days or so) to avoid tenancy laws. But people who relied on them could just move to a new one when the time limit came, so the market was still viable.

But then in the late 80s/early 90s they all got zoned away in the way this article talks about. It was really more NIMBY than reformer. Note that this time frame corresponds with the height of the US crime wave, and what was once a sketchy urban neighbor became the source of major neighborhood blight, especially as re-urbanization started up in the late 90s

DavidWoof··on Poker fraud used X-ray tables, high-tech glasses and NBA players
I have Sisyphus as my wallpaper. When people ask about it I say he's the patron saint of software development.
DavidWoof··on SQL Anti-Patterns
In OP's defense, "becoming suspicious" doesn't mean it's always wrong. I would definitely suggest an explaining comment if someone is using DISTINCT in a multi-column query.
DavidWoof··on Half of America's Voting Machines Are Now Owned by a MAGA Oligarch
Snopes has this as mixed because Stalin may or may not have expressed this sentiment at some point, but it seems impossibly unlikely to me that this pun works in Russian as it does in English.
DavidWoof··on How functional programming shaped and twisted front end development
It's hard to talk in the abstract because obviously people can abuse any type of code feature, but I generally find chaining array methods, and equivalents like c# linq, much easier to read and understand than their looping equivalents.

The fact that you single out .reduce() here is really telling to me. .reduce() definitely has a learning curve to it, but once you're used to it the resulting code is generally much simpler and the immutability of it is much less error-prone. I personally expect JS devs to be on the far side of that learning curve, but there's always a debate about what it's reasonable to expect.

DavidWoof··on The Theatre of Pull Requests and Code Review
> “nobody reads intermediate commit messages one by one on a PR”

I clean my history so that intermediate commits make sense. Nobody reads these messages in a pull request, but when I run git blame on a bug six months later I want the commit message to tell me something other than "stopping for lunch".

> pedantically apply DRY to every situation or forcing others to TDD basic app

Sure, pedantically doing or forcing anything is bad, but in my experience, copy-paste coding with long methods and a lack of good testing is a far more common problem.

You may be 100% correct in your particular case, but in general if senior devs are complaining that your code is sloppy and under-tested, maybe they aren't just being pedantic.

DavidWoof··on You’re a slow thinker. Now what?
JoelOnSoftware had a great piece back in the day where he mentioned that while he consciously knew what a short sale on an option was, in practice he had to stop and think about how to calculate it, while his financial friends just knew the answer immediately. He drew a comparison to pointers in C, where if you're going to be a C programmer, then pointers should just be intuitively obvious to you and not something you need to think about.

IAW, there are no pure fast or slow thinkers, a lot of this is just how well have you internalized the background material. Having quick repartee in conversation has absolutely no relationship to immediately seeing what the loop variable should be in a programming problem. FizzBuzz isn't quickly solved by decent devs because they think faster, it's quickly solved because it's a trivial problem that doesn't require serious thinking for experienced devs.

When I'm programming for finance or medical, I often have to tell the PM "let's stop here and let me think about this for a day". Because it's not my field, it takes me a while to get my head around it. OTOH, there's very often algorithm conversations where I have to wait for others to catch up.

DavidWoof··on Code Is Debt
One of the aphorisms I repeat a lot is that in this age where everybody programs a little, including analysts, devops, QA, researchers, etc., the thing that separates all of them from actual software developers is that developers know that "code is bad. Code is where I find all my bugs.

And I do wear these other hats sometimes. I think nothing of scripting a useful utility or cranking something out in R or VBA for a presentation. But when it comes to production code, I'll spend a lot of time trying to think of ways to reduce the amount of code required.

But it's two completely different philosophies regarding code, and unfortunately in some organizations AI is starting to blur the lines.

DavidWoof··on Try and
That's absolutely not what the article is about. Did you even read it?

People don't really have that debate anymore outside of twitter casuals, and it's dismissed with a wave almost immediately in this article, which then goes on to examine the complex grammar of "try and".

DavidWoof··on Job-seekers are dodging AI interviewers
Give me an AI chatbot over someone with poor English skills reading a script any day of the week. My problem probably isn't unique, it's probably something fairly obvious that was vague in the instructions.

Now, the important thing is offer a way to upgrade to a human. But I have no problem at all starting with AI, in fact I honestly prefer it.

DavidWoof··on Async Queue – One of my favorite programming interview questions
I think the "sendOnce" question is fine. Software development is just different than other professions, and you get a lot of candidates who talk a good show but can't actually program at all. For a decent dev, this isn't programming, it's typing.

But all the "ok, now add this feature..." stuff is just a sign that the interviewer is an insecure asshole. And you get insecure asshole interviewers in other professions as well, asking about obscure laws or diagnoses.

Software is still a bit of a craft, and it's perfectly reasonable to ask a job seeker on a construction site to go hammer a nail. But nobody is going to follow that up with a bunch of "OK, now do an L-joint" just to show off their own knowledge.

DavidWoof··on Ask HN: What is a common PR review time at your company?
I've always established the team rule that most PRs must be reviewed within a day. At the very least, devs should be reviewing any open PRs before they leave or when they first get in.

Obviously, there's going to be exceptions for large changes or big rewrites on the one hand, or for tiny label changes on the other hand.

PS. Reading the comments here, people seem to work in some pretty dysfunctional environments. Get the team together and establish some guidelines that everyone agrees on. Review time should be predictable, and the work should be reasonably shared.

DavidWoof··on School did nothing wrong when it punished student for using AI, court rules
In the midst of the perennial "woe the kids today" rant, it's worth considering that this generation is the first generation in the 300,000 year history of homo sapiens sapiens to widely utilize reading and writing as a primary means of daily communication.

Ob XKCD: https://xkcd.com/1414/

DavidWoof··on Is the Q source the origin of the Gospels?
You're greatly overestimating how much an oral tradition leads to fixed wording. This is a pretty well-studied field at this point in time, and non-poetry oral traditions just don't generate the kind of long word-for-word identical passages that we see in Luke and Matthew.

There's a lot of debate over the synoptic problem in the academy, but almost nobody doubts that the solution involves a literary source instead of an oral one.

DavidWoof··on Sublime text started adding a “.s” to new files
No, macOS will just put quotes in the name. I just saved file from vscode as "testfile.sql", including the quotes, and wound up with a file named "testfile.sql".s.
DavidWoof··on Learn Git Branching
One of my biggest pet peeves about modern development is just how many people don't know jack about git even though they use it every day. It really annoys me when I see a pull request with 20 random commits (with messages like "temp" or "checkpoint") or when people merge main into their personal feature branch instead of just rebasing their branch (yes, sometimes that's not right, but I'm not talking about the corner cases).

I always think about using "clean up a pull request" as a fizzbuzz-ish screen in interviews. It just seems like a decent proxy for "do you care at all?".

DavidWoof··on A bunch of programming advice I'd give to myself 15 years ago
I don't think this point is about configuring your editor/environment as much as just knowing it. There's certain features that come up all the time: find file, find class, go to implementation, find references, rename var, etc.

It stuns me how many devs do this stuff manually, when virtually all editors/ides have ways of doing these things.

DavidWoof··on You almost never see a clock at the mall
If you follow through to the study, they displayed products on a screen to people in an MRI scanner, and asked them to evaluate the offers they were seeing. Unsurprisingly, after about 40 minutes their minds start to wander. Because in some warped researchers mind, being in the dark staring at a screen for an hour is exactly like being walking through a supermarket.

Sociology studies are such a joke.

DavidWoof··on Plastic bag bans work
> Commissioned by the American Recyclable Plastic Bag Alliance

AKA the lobbying group for plastic bag manufacturers, a group whose entire purpose is opposing plastic bag bans, quoted by the WSJ editorial board.

This is about as bad a source as one could possibly imagine.

DavidWoof··on The immediate victims of a con would rather act as if the con never happened
Did anyone notice that the author talks about scams and cons, but when it actually comes to a list of examples the majority are actually about plagiarism?

Which... I largely don't care about. I understand why it's super important for academics, but in my book it's not a con or scam. It's accurate information. If somebody is giving me accurate information, the fact that they don't have correct citations isn't really a concern to me as a consumer of the data, and I absolutely don't put it in the same category as faking data or lying about results.

DavidWoof··on The big TDD misunderstanding (2022)
> I also wasn't aware that "unit" referred to an isolated test

It never did. "Unit test" in programming has always had the meaning it does now: it's a test of a unit of code.

But "unit test" was originally used in electronics, and the meaning in electronics was a bit closer to what the author suggests. The author is being a bit fanciful (aka lying) by excluding this context and pretending that we all don't really understand what Kent Beck et. al. were talking about.

DavidWoof··on George Carlin's "Soft Language" (2019)
> Car crash -> automobile accident --- a softening

It's not. Accident is actually the older term. Cars have had accidents since their inception. Using the "crash" sound to refer to the accident itself didn't catch on until the 1940s (might be a war thing, I'm not sure).

DavidWoof··on What Makes Music Sound Good? (2010) [pdf]
This statement appears in the section on naming intervals. Does "Greensleeves" start with a minor third or an augmented second?

Strictly speaking, you can't actually know the name of the interval until you see the written notes, although obviously you can make some educated guesses based on the standard practice of the music style.

DavidWoof··on What Makes Music Sound Good? (2010) [pdf]
> We cannot identify the interval between two notes just by listening

He's being (purposely?)confusing here, but in context what he's saying is that you can't determine the names of intervals just by listening: i.e., you can't distinguish between an augmented fifth and a minor sixth just by listening to the two pitches.

> If you did this with any group of musicians

I think you mean any group of musicians in the modern western tradition. Not all traditions count the same way, or even treat numbers as a standard way of marking rhythm. I suspect that if you counted 1-2-3-4 to Sappho she'd just look at you funny and throw her lyre at you or something.

I'd like to be gracious and assume the author is using this weird phrasing to emphasize this universality of his points, but I honestly suspect he's being purposely obscure to emphasize his professorship.

DavidWoof··on Am I the Unethical One?
I feel like you're missing something basic. The professor classifies this as a "cheating site", and his entire article assumes this classification, but the site portrays itself as a study aid. If we skip the editorializing, what the professor actually did was seed misinformation on the Internet to see who would fall for it.

Would you feel differently if he had edited the Wikipedia page for his subject to see which students used it as a study aid?

The equation of "you found this info on the Internet instead of in the approved course material and therefore you're cheating" doesn't seem completely solid to me.

DavidWoof··on How I survived a year in ‘the hole’ without losing my mind
Are you considering penitence to be a subset of rehabilitation? There's a reason they're called penitentiaries, after all.

Also, this is a nit but deterrence is usually considered to be about both the incarcerated individual and other citizens. Deterrence against re-committing the crime is an important part of incarceration, and I don't think it reasonably fits under rehabilitation.

Page 1 of 7Next →