HNHacker News
TopNewBestAskShowJobs

michaelhoffman

5,334 karma · joined December 13, 2011

https://hoffmanlab.org/

https://twitter.com/michaelhoffman

https://github.com/michaelmhoffman

https://hnbadges.netlify.app/?user=michaelhoffman

submissionscomments
michaelhoffman··on John Roach has died
Looks like a Tandy 1000 SX.
michaelhoffman··on The day Steve Jobs dissed me in a keynote (2010)
Quite a story and the kicker is the most amazing part.
michaelhoffman··on Ask HN: How to raise funds for rare disease research?
Ethan Perlstein uses ethnic stereotypes to market his company. He opportunistically uses rare disease kids to shield against complaints. I would steer clear.
michaelhoffman··on Tell HN: Replace the X with a 5 in arXiv.org to display a paper in HTML
bioRxiv converts PDFs to full-text already. They're right there on the bioRxiv web site—just click the "Full text" tab. For example, our most recent bioRxiv preprint:

https://www.biorxiv.org/content/10.1101/2022.01.07.475366v1....

If you want to do URL munging instead of using the UI, just add `.full` to the end of the URL ;)

This doesn't require that the manuscript be submitted in any particular format either. There are humans involved in making sure the full text formatting from PDF is good.

michaelhoffman··on Show HN: Looptap – A minimal game to waste your time
Without a "share" button that creates an emoji summary of your results, this will never get as viral as Wordle
michaelhoffman··on Firefox 96
I figured. My first draft of that comment was "you probably meant", but decided it would be better to do it without making inferences about your state of mind ;)
michaelhoffman··on Firefox 96
XMLHttpRequest led to the Ajax paradigm, not REST.
michaelhoffman··on Secret Military Telephone Buttons
As far as I know, anyone could do busy line interruption in the U.S. with the help of the telephone operator:

https://en.wikipedia.org/wiki/Busy_line_interrupt

michaelhoffman··on Does Visual Studio rot the mind? (2005)
> I don’t speak to user groups or developer groups very often, partially because of a bad experience I had a number of years ago… I decided to talk about something that people could not read about in my book… Well, people went berserk. I suppose they had been expecting me to tell them everything they needed to know about Windows programming in the space of a few hours, and that’s certainly not what I was interested in doing.

> That was a very traumatic experience for me, and since that time, I have been reticent about speaking before groups like this…

This is bizarre! It's hard for me to imagine an audience reacting this way to a talk. Maybe it's because I haven't been to any user group or developer group meetings. What does "went berserk" in a way that was traumatic for him mean? Did people start heckling him in the middle of his talk? Even harder to imagine!

michaelhoffman··on Cool, but Obscure X11 Tools
I use xsel for the same purpose. And clip.exe on Windows/WSL.
michaelhoffman··on CCPA Scam – Human subject research study conducted by Princeton University
As a research group leader, I find it unfortunate that the grad student seems to be the public face of this and is therefore attracting most of the ire. Feels like the student is being thrown under the bus, and responsibility for ensuring the study is conducted ethically should ultimately be that of the principal investigator.
michaelhoffman··on CCPA Scam – Human subject research study conducted by Princeton University
Well if you have informed consent, it's not going to be a problem. If you don't, then you need to do a more careful analysis of ill effects might ensue when someone gets the letter (feel distress, spend money on a lawyer).
michaelhoffman··on CCPA Scam – Human subject research study conducted by Princeton University
Howdy Paul!

I definitely see a problem in that some people think that if the IRB doesn't object to what they're doing, it's OK. But ethics is a responsibility of the entire research team, and the research team is usually far better placed to understand the implications of their research strategy than the IRB.

The following are big problems here:

  - lack of informed consent
  - deception
Researchers should be trained that those are only allowed in exceptional cases where the benefits outweigh the harms.
michaelhoffman··on Proof of Steak
It has "Comments: This is a silly article". Was that not there initially?
michaelhoffman··on BibTeX Tidy
My allmytexs script package has a texlint script which runs fotlatexmk, chktex, hunspell, and linkchecker. The next updates will also run biblint.

https://github.com/hoffmangroup/allmytexs/

michaelhoffman··on BibTeX Tidy
I've started using biblint which is nice although can be pretty aggressive in auto-cleaning:

https://github.com/Kingsford-Group/biblint

michaelhoffman··on End of Support for Firefox Lockwise
Wanting to update titles is so out of my usage scenario for Pocket that I wouldn't even think about it.
michaelhoffman··on End of Support for Firefox Lockwise
Personally I like Pocket although there are certainly places where it could use improvement.
michaelhoffman··on Bash patterns I use weekly
I have something like this in my bashrc:

   preexec ()
   {
       # shellcheck disable=2034
       _CMD_START="$(date +%s)"
   }

   trap 'preexec; trap - DEBUG' DEBUG

   PROMPT_COMMAND="_CMD_STOP=\$(date +%s)
       let _CMD_ELAPSED=_CMD_STOP-_CMD_START

       if [ \$_CMD_ELAPSED -gt 5 ]; then
           _TIME_STR=\" (\${_CMD_ELAPSED}s)\"
       else
           _TIME_STR=''
       fi; "

    PS1="\n\u@\h \w\$_TIME_STR\n\\$ "

    PROMPT_COMMAND+="trap 'preexec; trap - DEBUG' DEBUG"
Whenever a command takes more than 5 s it tells me exactly how long at the next prompt.

I didn't know about `$SECONDS` so I'm going to change it to use that.

michaelhoffman··on Waterford has Ireland's 2nd highest Covid incidence with 99.7% fully vaccinated
British Columbia Public Health had to walk back some stats calculated the same way when the proportion of vaccinated started to go over 100%.
michaelhoffman··on Rules of static linking: libstdc++, Libc, libgcc (2012)
Would be nice if there were some explanation of why.
michaelhoffman··on Sysexits – preferable exit codes for programs
The sysexits are constants (such as `os.EX_OK`) are in the `os` module. But beware, they are not available on some platforms.

https://docs.python.org/3/library/os.html#os._exit

michaelhoffman··on Sysexits – preferable exit codes for programs
I've used these in Python programs but unfortunately they are only defined on some platforms. Would be nice if there were fallback values for when the platform doesn't define them.
michaelhoffman··on ISO3103 Tea Preparation [pdf]
It's a joke, or it's real, or both.
michaelhoffman··on Builder Pattern in Rust
I don't actually do any Rust programming but am very interested in the language. With that disclaimer, I find it unfortunate that this pattern requires something to be mutable that wouldn't necessarily need to be otherwise.
michaelhoffman··on On Receiving my Certificate of Loss of Nationality
The Foreign Earned Income Exclusion is USD 107,600. If you make less than that, then the forms (Form 2555) are pretty easy.

If you make more, Form 1116 can be a pain to get right but if you have an accountant do it once you can figure out how to modify the form for subsequent years.

michaelhoffman··on Janet – a Lisp-like functional, imperative programming language
What's the advantage of not having lists? How does this affect one's programming style versus Scheme or Common Lisp (or Emacs Lisp, honestly the Lisp I'm most familiar with)?
michaelhoffman··on The Emacs-28 release branch has been created
I'm sure I got this code from someone else, was going to replace it with (emacs-init-time) myself but I suppose it's nice to only have the first two numerals after the decimal point which this code does and (emacs-init-time) doesn't.
michaelhoffman··on The Emacs-28 release branch has been created
If you load a bunch of packages at startup that take several seconds to load that is as good a benchmark as any. I have this at the end of my init.el:

    (run-with-idle-timer
     3 nil
     (lambda ()
       (let ((inhibit-message t))
         (message "Emacs ready in %s with %d garbage collections."
                  (format "%.2f seconds"
                          (float-time
                           (time-subtract after-init-time before-init-time)))
                  gcs-done))))
michaelhoffman··on John Stossel sues Facebook for allegedly defaming him with fact-check
> 4- the difference between this and other view counts on the platform should be enough.

If the only harm is view counts, it's not going to be a very big award.

← PreviousPage 3 of 24Next →