HNHacker News
TopNewBestAskShowJobs

chrisshroba

1,577 karma · joined October 15, 2014

submissionscomments
chrisshroba··on AWS Tape Gateway
Tangent: What's the cheapest way to backup a few TB of personal data these days, pricing based on the premise that I probably will never need to retrieve it (due to local backups as well), but I don't want to pay thousands if I do have to (hundreds would be okay). Glacier Deep Archive?
chrisshroba··on Some insects I found inside dried Turkish figs from Trader Joe’s
Excuse my naive question, but is this something I should worry about at all in buying figs? I don’t mind the idea of eating insects but I’m trying to understand how noticeable this would be from a textural/visual/taste perspective.
chrisshroba··on DetectGPT: Zero-Shot Machine-Generated Text Detection
If an AI can be trained on the internet, it can be trained on a textbook or lecture notes. I think it’s shortsighted to insist that AI won’t replace experts based on the training sets that AIs are currently being trained on.
chrisshroba··on Grid Beam
Wow, I made an account to download the BoM and that coffee table’s total price of materials is $1108 and the end table is $1378. I was expecting less than half that.
chrisshroba··on The Schwarzschild Defence
This was a fun short read!
chrisshroba··on Show HN: Names
https://gist.githubusercontent.com/chrisshroba/6c37c650668f4...
chrisshroba··on Show HN: Names
Here's a fun one that's too long to print in this comment: https://gist.githubusercontent.com/chrisshroba/6c37c650668f4...

And the code used to generate it:

First some python to create a qr code from the link and output it as a json list of booleans:

    import qrcode, json
    code = qrcode.QRCode()
    code.add_data('https://youtu.be/dQw4w9WgXcQ')
    code.make()
    json.dumps(code.modules)
Copy and paste the out into the browser console and assign it to a variable called `qr`. Then run the following code to generate and display the string in the viewer:

    (function(qr) {
        let start = '  L   L   L   L   K    L   L   L   L   K'
        let draw = val => {$('.names').value = val; main() };
        let decode = val => val.replaceAll('d','a   ').replaceAll('r',' a  ').replaceAll('u','  a ').replaceAll('l','   a');
        let size = 4
        let on = (s) => {
            let ret = ''
            let line = 'r'.repeat(s-1)+'l'.repeat(s-1)
            for (let i=0; i<s-1; i++) ret += line + 'd';
            ret += line
            ret += 'u'.repeat(s-1)
            return ret
        }
        let right_cell = (s) => 'r'.repeat(s)
        let left_cell = (s) => 'l'.repeat(s)
        let down_cell = (s) => 'd'.repeat(s)

        // draw(decode(on(3)+next_cell(3)+on(3)+next_cell(3)+next_cell(3)+on(3)+next_cell(3)))
        let str = start
        for (line of qr) {
            for (val of line) {
                str += val ? (on(size) + right_cell(size)) : right_cell(size)
            }
            console.debug(`A ${left_cell(size).repeat(line.length)}, ${size}, ${line.length} line ${line}`)
            str += left_cell(size).repeat(line.length)
            str += down_cell(size)
        }
        console.log(str);
        draw(decode(str))
    })(qr)
chrisshroba··on Rapid-fire laser diverts lightning strikes
> A high-speed camera clearly showed one strike following the straight line of the laser beam, rather than taking a branching path.

Why isn't the picture posted!

chrisshroba··on A formula for the nth digit of 𝜋 and 𝜋^n
I believe it can be used to verify calculations of new digits of pi. For example, if you tell me you just computed five trillion digits of pi, I can ask you for specific digits near the end and check that they match what this formula produces
chrisshroba··on [dead]
This site added about 25 entries to my browser history :/
chrisshroba··on The Yaml document from hell
Call me naive or quote xkcd, but whenever I read about the shortcomings of YAML, I daydream about a new standard that's mostly a subset of YAML, that looks like this:

    rules:
     - "All strings must be quoted and are parsed identically to JSON strings"
     - "true and false are the only boolean values"
     - """multiline strings
    are allowed"""
     - """|
       there can even be special multiline string types
       to indicate things like "dedent every line and 
       trim the beginning and end lines if empty
       """
     # Comments are allowed!
     - Number syntax just like JSON
    
    better_than_yaml: true
    "a number with multiword key": 1e9
    nesting:
      present: true
      difficult: false
It has the ease of coding of yaml, maps 1:1 with json (so can easily be re-serialized to json or yaml if needed), is familiar to folks who know yaml, and supports comments. And it eliminates ambiguous parses and gotchas, references, tags/directives, and other complexities.
chrisshroba··on A Curious Integral
Any chance I could get in on this? Sounds like a lot of fun and I love chatting about interesting math problems and meeting like-minded folks!
chrisshroba··on The quest for a family-friendly password manager
I love Chrome's password manager but the flow is not good at all for iOS (because other dedicated password manager apps integrate with the os)
chrisshroba··on Can Doom Run It? An Adding Machine in Doom
We have a brainfuck interpreter in brainfuck. We have Conway’s game of life in Conway’s game of life. When will we get doom in doom?
chrisshroba··on Show HN: Portable Secret – How I store my secrets and communicate privately
My main hesitation is that I like being able to drop my vimrc anywhere and have an (almost) identical editor experience, rather than having to maintain one config for vim and one for neovim. Been meaning to try neovim out though!
chrisshroba··on Show HN: Portable Secret – How I store my secrets and communicate privately
What does “time limited” mean here?
chrisshroba··on Okta says its GitHub account hacked, source code stolen
Just wondering - would this meaningfully impact productivity beyond causing engineers to have to learn how to sign a commit (which would presumable take less than an hour, once)?
chrisshroba··on Disputing a Parking Fine with ChatGPT
Still, I think it could be a powerful tool for people who struggle to word correspondence like this.
chrisshroba··on Show HN: Chrome extension to display ChatGPT response besides Google Search
> it is non-trivial to predict which searches GPT will be good for

Since pricing is roughly proportional to response length (and maybe prompt length?), it seems like ChatGPT could use itself to determine if the search is a good fit or not. Give it a prompt like "I want to know if you are likely to generate more immediately useful and actionable results than my web search. The query I am searching is <query>. Should I run you on this query?"

I tried running that on some sample queries to see its output, and compiled its responses in this table (note the last one is incorrect in my opinion):

    | Query                              | Yes or No |
    |------------------------------------|-----------|
    | "starbucks near me"                | No        |
    | "twitter"                          | No        |
    | "python requests get json"         | Yes       |
    | "peach and mango cocktail recipe"  | Yes       |
    | "hn"                               | No        |
    | "image of versaille"               | Yes       |
Btw, incredibly, ChatGPT actually made that table for me when I said "Please compile all the queries I just asked you about into an ascii table, where the first column is my query, and the second column is your Yes or No answer." The table it printed was correct but formatted as an HTML table, so I asked it to put it in a code block and I got almost exactly what I pasted above (just had to remove two extraneous spaces that made the lines not line up)
chrisshroba··on The Wyoming corner crossing case
Yes, and this is one of the more clear cut yeses!
chrisshroba··on How to arrange any number of stars on the U.S. flag (2016)
I believe you, but do you have a source so I can read more?
chrisshroba··on Hacker News Parody Thread (2013)
A comment praising HN and attributing its success to dang's amazing moderation (which is 1000% deserved!)
chrisshroba··on Earth now weighs six ronnagrams: New metric prefixes voted in
Agreed, I can think of lots of use cases that come up in day to day life:

- decade

- century

- decagon

- centimeter

- decimal system

- decathlon

- centipede

edit: admittedly, hecto is pretty rare and centi is often used for both 1/100 and 100

chrisshroba··on Ask HN: What made you finally grok Git?
I just ran into this problem last night... if you shouldn't rebase after pushing to remote, how do you update a PR days after you originally created it to be on top of the latest origin/master and be able to resolve merge conflicts locally?
chrisshroba··on Emergency SOS via satellite
Yeah, if we conservatively say 1% of InReach users will need to send an SOS message, then looking at the math:

Today, 100 InReach subscribers nets Garmin around $144/yr * 100 people = $14,400

If the InReach were free except for when activating the SOS, the SOS would have to cost $14,000 to make that same revenue from the same number of users. This would surely lead to more deaths due to folks waiting way longer to send an SOS.

Numbers are estimates but the order of magnitude shouldn't be too far off.

chrisshroba··on 'Be' is nice, end of story
Same here
chrisshroba··on What do numbers look like?
Numbers that have similar prime factors are closer together.
chrisshroba··on How stdbuf works
FYI Fira Code is one example of a very popular programming font that supports ligatures (67k stars on GitHub) [1]. But totally get the frustration of seeing ligatures on the web and not understanding what was going on!

[1] https://github.com/tonsky/FiraCode

chrisshroba··on Resolving the great undo-redo quandary
I think what vim has is different and better than what OP describes - it's two separate change logs, one for undo/redo and one for time-based jumping. Trying to fit both of those constructs into one list gets messy.
chrisshroba··on Resolving the great undo-redo quandary
I disagree that undo and redo are the only two actions needed to support this behavior. For example, if I’m performing the following three actions:

- insert A

- insert B

- insert C

And then I undo, I would expect to be be back at having AB. If I then undo, I would be undoing my undo and have ABC. Then undoing again would get me back to AB. And I remain in this 2-cycle.

Instead I propose the best solution is to be able to “step out” of the editing experience and see your history in a separate UI, and be able to choose a specific past version to revert to. This revert would be an atomic operation that could then be undone.

This is how most versioned consumer systems I know of work today (e.g. Google Docs, Figma, MS Office) and it feels intuitive to me as a user.

← PreviousPage 4 of 14Next →