HN user

danielparks

362 karma

[ my public key: https://keybase.io/danielparks; my proof: https://keybase.io/danielparks/sigs/BAJADmasofogpAm0wjgJvLcXa7d3XZl_4D1CkSMY1Us ]

Posts0
Comments125
View on HN
No posts found.

Yeah, I’ve wondered about that. Apparently it works for her, but… everybody’s different.

I actually know a number of people with CIs, but everyone else is at ASL club, so we’re not doing a lot of speaking. I’ll have to ask folks what they’ve tried, if only for my own curiosity.

Have you tried the non-over-the-ear cochlear devices? The kind that have everything built into the part that sticks magnetically to your implant — I don’t know what the term is; I don’t use them myself.

I know somebody who really dislikes the over-the-ear type devices and swears by the all-in-one kind.

She seems to get a full day of battery out of hers, but I don’t know what kind they are and I imagine usage patterns make a big difference.

I’ve been surprised how infrequently I need to explain this — definitely fewer than 10 times in the last 20 years of doing some variation if this consistently.

I keep expecting to have to explain, but the vast majority of the time people don’t ask.

Similarly, I used to stress about loading the dishwasher when I was a teen. I would spend so much time loading it that I have myself a neck ache from leaning over and I could have saved time by washing the dishes by hand.

I still try to be somewhat efficient about loading the dishwasher, but… if I notice myself stressing I just say “screw it”, run it, and wash the rest by hand.

The other thing I’ve realized is that sometimes things don’t get clean if you load them properly. For example, tall glasses that had smoothies in them. It’s a little gross if you don’t notice it until you’re about to use it, but… you can just look at them and wash them by hand when you unload the dishwasher.

I guess this is all to say that sometimes the best optimization is to not think about it too much.

This is a matter of operator precedence and tokenization. Tokens are single characters in this language, and there is an invisible operator between them.

If the operator were explicit (let’s call it ~), the example would look like this:

    $ echo 'cat' | trre 'c:d~a:o~t:g'
    dog
With unnecessary parentheses:
    $ echo 'cat' | trre '(c:d)~(a:o)~(t:g)'
    dog

Cool, I’m interested to see where you go with this.

I found the operator precedence unnatural, and it looks like a lot of other folks in this thread did too. I would naturally assume `cat:dog` would be equivalent to `(cat):(dog)` rather than `ca(t:d)og`.

I just sent a feature request[1] to Signal with the following text:

    I understand that Signal does not consider this
    https://gist.github.com/hackermondev/45a3cdfa52246f1d1201c1e8cdef6117 to be
    a valid security bug, but it would be helpful to at least be able to
    mitigate it.

    Please add an option in settings to disable automatically downloading
    attachments.

    That should be enough to change the attack from 0-click (just opening the
    conversation) to 1-click (click the attachment). Most people won’t care
    about this, but for some every little bit of privacy is important.
[1]: https://support.signal.org/hc/en-us/requests/new

Given the number of services that turned out to use plaintext or trivial password hashing (e.g. MD5), I would bet there are a bunch of services out there that do not effectively limit OTP attempts.

It’s been a long time since I did any work on a real authentication system — since before TOTP was common, anyway. I appreciated the post and found it interesting.

Looking into Zig 5 years ago

Yeah, it’s weird. I tried stripping the key= parameter from the link when I commented, but it’s required.

The author posted the link in the comments of the original post.

Looking into Zig 5 years ago

He posted a follow up about error handling in Zig that I thought was interesting: https://ayende.com/blog/194466-A/looking-into-odin-and-zig-m...

I’ve seen the “clean up errors yourself” argument before, but, like the author, I don’t think it holds water. Often the correct response to errors is to panic() or pass it up the stack so the caller can deal with it or—more likely—panic() itself.

Postfix, Dovecot, Amavis/Spamassassin, Bind, NGINX.

So, mail, DNS, and a few web sites. I’ve been running something like this for more than 15 years now.

oarsinsync is correct.

The standard on most UNIX-like OSes is that long options, e.g. --long, have two dashes, and short options, e.g. -l, have one.

It allows you to combine multiple options into one. For example, the following two commands are equivalent:

    $ ls -laF
    $ ls -l -a -F

I use my iPhone X regularly at contactless terminals at stores and on the bus. The trick is to double click the lock button first, select a card if you want, then hold it by the reader.

I don’t have any problems with FaceID — it’s more reliable and easier than TouchID for me. I live in a rainy place, though. Obviously a YMMV situation.

With TouchID do you just put your finger on the home button and hold it by the reader?

The change is unnecessary. You can just rebuild.

If you’ve built once using the standard go module functionality then you will be able to rebuild as long as you don’t pull in more dependencies. Naturally you can move the cache around.

Check out your code into some random directory. Copy the directory to a USB drive and walk it over to an air gapped machine (no wi-fi, no ethernet, clean dev environment installed). Copy the directory to the box, make some small code change and try to build your binary.

I don’t follow. Why is the code change important?

Why not just use the go module cache? Seems like a much cleaner solution with very little overhead.

This is basically parallel-make as a service.

This has been an increasingly difficult problem as more and more pipelines move to containers for testing and building. What other solutions have folks come up with?

I’m having a hard time imagining what value putting code names in the crossword would have. Did they suspect the compiler was encoding information in the position of the words or something?

Seems like an unnecessarily hard way to exfiltrate data.