HNHacker News
TopNewBestAskShowJobs

mjhoy

705 karma · joined July 30, 2010

twitter.com/mjhoy

[ my public key: https://keybase.io/mjhoy; my proof: https://keybase.io/mjhoy/sigs/Lgv777O017C9VdFcAMn_DooZSPw1v0MuFNN95Ws-J_w ]

submissionscomments
mjhoy··on 2017 Chevrolet Bolt EV
With big theta you strictly have to talk about best and worst cases, because for e.g. insertion sort, what's true of worst case is not true of best case (and vice versa). For big-O, what's true of worst case is also true of best case, so talking about worst case suffices. Big-O is less precise and therefore more useful, because average case usually = worst case anyway.
mjhoy··on NixOS 16.09 released
> its way too hard to create new packages

Perhaps it is hard to discover how to, but I was about to post here and say one of the best things about nix is how easy it is to hack and add packages. It does require a bit of learning about how it works, but once you do the whole system is quite understandable. It's also very easy to test out things locally, overriding and extending the nix package collection. It is fairly straightforward to set up, build and install your own local projects as nix packages. Even I -- a mere web developer, who mostly uses OS X -- got a package definition merged into the main repository, it was that simple.

One series of blog posts that is good in this regard is the Nix pill series: http://lethalman.blogspot.com/2014/07/nix-pill-1-why-you-sho...

mjhoy··on Homebrew 1.0.0
An argument for this approach is that it keeps the ecosystem healthy. Instead of a lot upper version bounds to keep track of and conflicting dependencies, broken dependents are fixed upstream if they don't build. As I understand it nixpkgs, in general, works this way.
mjhoy··on Emacs 25.1 released
Simple HTML emails look fine, more complex ones don't. I think now you can use Webkit to render them, but I haven't set that up yet. It isn't much of an issue for me, though.

I use it with both fastmail and gmail accounts.

mjhoy··on Emacs 25.1 released
That's true. Beyond links to email, I also include links to a specific line in a file, links to a commit, links to a remote file (e.g., an apache config file), maybe some snippets of code, links to other TODOs, all in one TODO. So it's really having all of those together which is important for me.

If I wasn't using org, I don't think I would find it that useful. I'm not really a power user of mu4e. I don't have any complicated email workflows. I like that the search is very fast (for me, anyway -- I only have 100k emails), and, obviously, that my email is stored locally. I like that I can compose in Emacs. I also use two computers and I like that I can easily share configuration. My config, which doesn't do anything too fancy, is here: https://github.com/mjhoy/dotfiles/blob/master/emacs.d/lisp/i...

mjhoy··on Emacs 25.1 released
The emacs ecosystem has really changed how I work.

I manage all of my email now in `mu4e`. I manage all of my notes, writing, TODOs, time tracking, invoicing in `org-mode`. For interacting with git, `magit` is simply amazing.

The most important thing is how everything works together. There is the obvious window, frame and buffer management, the kill ring, the searching across all open buffers. Less obvious is that while looking at email I can hit a few keys to create a TODO, schedule it for a particular date that will show up in my agenda, and will link back to that same email (which I can now move out of my inbox). Or, in my programming notes file, I can link to a specific commit for a project I'd like to come back to later.

And, the best part, which I've only barely scratched the surface of: everything is programmable. I can write an emacs lisp function to automate almost any part of my workflow.

mjhoy··on Emacs 25.1 released
I do something very, very simple with my .emacs.d: https://github.com/mjhoy/dotfiles/blob/master/emacs.d/lisp/i...

A bunch of (mjhoy/require-package 'package-name) are run on init, and if the package isn't present it's installed. This has worked pretty well for me for keeping my mac and my linux emacs in sync.

Look into use-package for a lot more control over how packages are loaded, as mentioned in another comment.

mjhoy··on Planet Found in Habitable Zone Around Nearest Star
Indeed. This is one of my favorite Wikipedia articles: https://en.wikipedia.org/wiki/Rare_Earth_hypothesis
mjhoy··on Planet Found in Habitable Zone Around Nearest Star
The fun stuff is buried in footnote [4]:

> The actual suitability of this kind of planet to support water and Earth-like life is a matter of intense but mostly theoretical debate. Major concerns that count against the presence of life are related to the closeness of the star. For example gravitational forces probably lock the same side of the planet in perpetual daylight, while the other side is in perpetual night. The planet's atmosphere might also slowly be evaporating or have more complex chemistry than Earth’s due to stronger ultraviolet and X-ray radiation, especially during the first billion years of the star’s life. However, none of the arguments has been proven conclusively and they are unlikely to be settled without direct observational evidence and characterisation of the planet’s atmosphere. Similar factors apply to the planets recently found around TRAPPIST-1.

mjhoy··on Pinker: “News is a misleading way to understand the world”
I agree with you. And yes, in my travels I have met, for instance, racist cops who are quite nice to me. (I am white.)

Still. I see that the people who are the most afraid, the most angry, the most surprised that I would trust strangers not to kill me, are the people that watch the most news. They simply do not trust strangers, at all.

The answer, I think, is somewhere in the middle.

mjhoy··on Pinker: “News is a misleading way to understand the world”
I've found, for myself, traveling a good portion of the US by bicycle tempers my pessimism about the world.

Bad things happen, to be sure, and it is good (I think) to stay informed of the news, but it is also good to see how kind, generous and caring most people are, and also how people not of your political, religious, or cultural ilk are not exactly the ignorant or immoral monsters you may have thought.

mjhoy··on World’s Biggest Indoor Vertical Farm Near NYC to Use 95% Less Water
It's a crazy building in the middle of nowhere, central Maine, about file miles away from where I grew up. I bike by it when visiting home and it's wonderfully strange.

There have been pests, though: http://www.pressherald.com/2013/07/10/whiteflies-force-backy...

mjhoy··on Benefits of 1 Minute of All-Out Effort during Exercise
It always surprises me how easy people take it at the gym, on bikes or the elliptical or the treadmill. Many read the newspaper or a book, hardly break a sweat, and seem to go for around an hour. I push myself pretty hard on the treadmill (I find it enjoyable with the right playlist) for at most 20 minutes, and I've never felt healthier.
mjhoy··on NixOS 16.03 Released
The subreddit is pretty quiet. Did you try asking on #nixos? People are pretty helpful there.
mjhoy··on Is this prime?

    window.is_prime = function () { return "prime"; }
mjhoy··on Ask HN: Favorite Email Client?
Emacs + mu4e: http://www.djcbsoftware.nl/code/mu/mu4e.html
mjhoy··on BloomFilter Experiments
This is a great video that introduces the concept: https://www.youtube.com/watch?v=-SuTGoFYjZs
mjhoy··on Linux 4.5-rc5: efivarfs fixed to avoid “rm -rf /” bricking UEFI
I still am not convinced it is a leaky abstraction because of this. Perhaps it is a surprising one, it certainly took me a while to learn about it, I don't think I really appreciated universal file I/O until I worked through a bit of The Linux Programming Interface (recommended!). I see the filesystem now as a standard interface to many parts of the system (including hardware, processes, kernel state, etc) through the kernel. I don't think that /proc/1 is a process, it is an interface to information about a process. It makes sense to me UEFI variables are exposed this way. In fact if anything I'd say the abstraction is not leaky enough here: deleting the files deletes information on firmware, isn't that the promise of a "regular" file? :) Again, I am not defending the current behavior! There's nothing about the abstraction that says such a file must obey to `rm` in this way.

I recently ran into a funny bug, however, that makes me more sympathetic to your point. In Emacs a version of TRAMP mode (which is used to connect to remote servers or to connect locally as a different user) would try to cleanup itself by deleting some sort of tramp history file after a session. And if the history file didn't exist to begin with (or if a setting disabled it, I'm not sure exactly) someone thought it appropriate to simply open up "/dev/null", throwing away all writes to the file -- OK, makes sense so far.

But in TRAMP I often connect as root to my own machine -- it makes it easy to edit files as root, or run a shell in root. And as root you have the power to delete /dev/null! So, TRAMP would delete it without my knowledge... what's odd is that it quickly gets created again (perhaps by Emacs) so that it appears to exist, except that suddenly a) it's a regular file and b) it's owned as root without world write/read permission, so that suddenly all sorts of things start to fail because they can't open /dev/null. Fun.

mjhoy··on Linux 4.5-rc5: efivarfs fixed to avoid “rm -rf /” bricking UEFI
Where does Linux promise that files are bits on a disk? As a user I certainly don't expect that. Perhaps you have a problem with the name "file" but the abstraction itself still seems useful. (And yet I do find it quite odd when I have to do something like `echo "TPAD" > /proc/acpi/wakeup` to disable wake-on-trackpad.) That said I don't disagree with you that UEFI variables should not be delete-able, but there are many files on Linux that you can't delete.
mjhoy··on Linux Mint downloads (briefly) compromised
If you track 'unstable' you generally don't need to build from source as that branch (or channel as Nix calls it) is updated only after everything has been successfully built on Hydra. There are sets of packages excluded from the build but I think those are mostly interpreted languages (emacs packages, etc).
mjhoy··on Linux Mint downloads (briefly) compromised
It's worth playing with to see if it could fit into your work; for instance, the Haskell ecosystem is very well supported, while Ruby seems to have issues. I am now using it for work on some of my projects. Generally you won't have to compile from source; that said I did recompile glibc when that last bug hit. (Security updates for core packages are not a great story now.) It's not perfect, but it's very hackable.
mjhoy··on The Leica Q: A six month field test
I was also surprised about the cropping! For my own photographs I never crop, I don't really see the point. But perhaps he is publishing photos, in which case I understand it.
mjhoy··on The Leica Q: A six month field test
Craig Mod's reviews convinced me to get the GF1 many years ago, and I am still very happy with that camera. Though it has interchangeable lenses I often use it with a prime 20mm (film equivalent of 40mm) which, I discovered, are simply a joy to use: the lack of the "feature" of a zoom can free your mind in the moment of exploration.
mjhoy··on Emacs vs. WebStorm for Node.js Development
I was a heavy Vim user for about 4 years, and also did not understand Emacs though I tried it from time to time. The thing that changed my mind was using Org mode, and sticking with it for about two weeks. Once I felt comfortable in elisp and writing my own config, Emacs began to feel like a development environment that I had total control over. Everything that I bring from my life into Emacs -- task management, email, programming -- I now feel free to do them how I would like to do them. (Also, Org mode is great.)

edit: And there's nothing wrong with key bindings being 30 years old, Vim for instance has an incredibly efficient interface. Also, I find knowing basic emacs bindings quite useful around the OS X interface (many of them work).

mjhoy··on Why London Underground stopped people walking up the escalators
I believe that is specific to how rocket engines work. I once thought it applied to bicycles, but that must be some other phenomenon...
mjhoy··on Ask HN: Books you read in 2015?
My reading slowed to a crawl this year. Here were a few:

- Chronicles Vol 1, Bob Dylan. Inspiring, I felt very open to the world after. I loved his descriptions of Dave Van Ronk: "No puppet strings on him ever. He was big, sky high, and I looked up to him. He came from the land of giants."

- Peregrine, J.A. Baker. Intense, spiritual, like some sort of modern Moby Dick, but sparse, focused, elemental.

Next year I hope to read more Roberto Bolaño and start Elena Ferrante.

mjhoy··on New Emacs maintainer
If look for John on Youtube you'll find some great demonstrations of Emacs that he did along with Sacha Chua. I find his enthusiasm infectious. Excited to see what directions Emacs takes in the next few years.
mjhoy··on 100M games played
I am thoroughly addicted to watching John Bartholomew's lichess bullet tournaments: https://www.youtube.com/watch?v=wIdP7iIsGOU&list=PLl9uuRYQ-6...
mjhoy··on Same-Sex Marriage Is a Right, Supreme Court Rules
The oral arguments are worth a listen, from back in April.

http://www.oyez.org/cases/2010-2019/2014/2014_14_556

Mary Bonauto argued it perfectly, I thought.

mjhoy··on Ask HN: Which book are you reading these days?
> Do any movies do it justice?

I have not seen any, my guess is no! Sometimes I think Monty Python comes close.

← PreviousPage 3 of 6Next →