HNHacker News
TopNewBestAskShowJobs

mholt

11,919 karma · joined May 8, 2013

I'm the author of the Caddy web server. https://caddyserver.com

Twitter: https://twitter.com/mholt6

Personal: https://matt.life

[ my public key: https://keybase.io/mholt; my proof: https://keybase.io/mholt/sigs/X_pNtQp3_Et_7qwkBKVjmZv4dl7vP8bX83hu4N9lyz8 ]

(I do not use Keybase)

submissionscomments
mholt··on Tengine: Open-source web server, originated by Taobao, based on Nginx
We have many large integrators who rely on the JSON format and the JSON API quite heavily.

I also understand the burden of moving to a new server stack. It's a lot to swallow and a new way of thinking about things!

Anyway, we only mention config adapters in a few places in our docs: we automate our JSON docs, which are at the heart of Caddy, and we try to invest considerable effort to document the only official config adapter format: the Caddyfile.

mholt··on Show HN: A Demo for a Strategy Game
Yeah, that doesn't make sense. Players will pay for your game.
mholt··on Juno for YouTube has been removed from the App Store
Christian, you really don't get a break do you :( Thanks for the great apps you have made.
mholt··on Show HN: OpenFreeMap – Open-Source Map Hosting
Ah, wonderful -- thank you
mholt··on Show HN: OpenFreeMap – Open-Source Map Hosting
Something I'd be willing to pay for is historical tiles/data.

I'm writing an application that lets you view historical data, and the problem is that most/all map services show only current data. It would be nice if the map reflected the year of the data we're layering on top.

So if you want to make some money, there's an option for you!

mholt··on Show HN: OpenFreeMap – Open-Source Map Hosting
That's something that most tile viewers let you customize in the code. Sometimes you want to disable scroll wheel zoom so as to not interrupt page scrolling, like when the map takes up a large portion of the width of the page.
mholt··on How to Make HTTPS Verifiable
FYI: The story title should be "Opensourcing Reclaim Protocol" not "How to make HTTPS verifiable"

> All data is routed through an HTTPS Proxy, which records the direction of data transfer without reading the encrypted content.

squints

> Certain parts of the request and response that are publicly known are revealed: For responses: HTTP response code and Date headers. For requests: Domain, Path, and Connection headers.

Um, domain (the Host header after establishing the connection), path, and headers (including Connection) are all encrypted. They claim this is public information but it's not.

I need more time to read into things but I'm skeptical thus far.

mholt··on Synthetic diamonds are now purer, more beautiful, and cheaper than mined
Howard Tracy Hall's descendant is my sister-in-law. They have lots of his stories in their family history, and she wrote a book for children about the process of inventing his process for the artificial diamond [0]. An uplifting and inspiring story that simplifies things for a child to understand.

[0]: https://www.amazon.com/Diamond-Boy-Creation-Diamonds-Tracy/d...

mholt··on QUIC is not quick enough over fast internet
I don't have access to the paper but based on the abstract and a quick scan of the presentation, I can confirm that I have seen results like this in Caddy, which enables HTTP/3 out of the box.

HTTP/3 implementations vary widely at the moment, and will likely take another decade to optimize to homogeneity. But even then, QUIC requires a lot of state management that TCP doesn't have to worry about (even in the kernel). There's a ton of processing involved with every UDP packet, and small MTUs, still engrained into many middle boxes and even end-user machines these days, don't make it any better.

So, yeah, as I felt about QUIC ... oh, about 6 years ago or so... HTTP/2 is actually really quite good enough for most use cases. The far reaches of the world and those without fast connections will benefit, but the majority of global transmissions will likely be best served with HTTP/2.

Intuitively, I consider each HTTP major version an increased order of magnitude in complexity. From 1 to 2 the main complexities are binary (that's debatable, since it's technically simpler from an encoding standpoint), compression, and streams; then with HTTP/3 there's _so, so much_ it does to make it work. It _can_ be faster -- that's proven -- but only when networks are slow.

TCP congestion control is its own worst enemy, but when networks aren't congested (and with the right algorithm)... guess what. It's fast! And the in-order packet transmissions (head-of-line blocking) makes endpoint code so much simpler and faster. It's no wonder TCP is faster these days when networks are fast.

I think servers should offer HTTP/3 but clients should be choosy when to use it, for the sake of their own experience/performance.

mholt··on The Decline of Usability (2020)
I was just setting up new phones for my parents last week. And seriously, y'all (making the software) have ruined computers.

Modern apps are so obnoxious and distracting and unusable it’s getting ridiculous. Tapping a verify link in an email would slide the email screen out, then slide in a browser, wait a second or two, then slide out the browser, then slide in the play store, then wait a moment, then slide in the app itself, which then had to update the screen after another second or two. Multiple screen changes flashing before my eyes made even me feel dizzy and confused. My mother had raised eyebrows and shook her head like she just got lost.

Then once you get in the apps, there's so many distractions that make the UI unusuable. "Hey did you know about this?" "Tap this to do this thing!" "Look over here!" not to mention various notification and permission prompts. The permission prompts are especially concerning because now there's so many of them to even start using a messaging app, for example, that you train yourself to just click through them instead of scrutinize them.

We've essentially gotten rid of text labels on icons, making it anyone's guess as to what the icon with the 3 colored circles does, or an icon with a shape, two lines, and another shape that I can't even describe succinctly. So many gestures make navigating the software a guessing game. My poor mother was like, "So to go to the last app I do this" only to gesture "back" in the same app, "Oh, I meant this", only to bring up the app selector. Nothing is discoverable anymore. Those little "learn how to use your phone" tutorials do nothing for you in "the real world." My father, who used to teach Commodore computers to his community, could no more figure out how to use a phone than his students could a Commodore.

We were in much better times when computers came with 100 page manuals and you had to go to a class or ask a techie how to use them.

I'm not even going to talk about the privacy problems in all this software.

I had to keep apologizing to my parents for my industry making the experience so bad and downright confusing.

mholt··on As cars and trucks get bigger and taller, lawmakers look to protect pedestrians
It boggles my mind that driver attentiveness nags are being required when driver assist features are _enabled_ instead of _disabled_. When you are most likely to commit manslaughter, the car (and the regulatory bodies making the policies) don't care if you're paying attention or not.
mholt··on Go 1.23 Released
> Opt-in telemetry. A very rare sight these days.

Because it doesn't work. o:-)

(Introduces a slant/bias to the data.)

https://twi.github.io/blog/making-go-telemetry-opt-in-is-a-m...

mholt··on Hydrothermal explosion at Yellowstone National Park
Agreed.

Jurassic Park keeps coming to mind. It must be safe as long as you observe the signs, because it's an institutionalized park, right?

I don't know at what point I, as a first-time visitor to such a park, would start to question whether what I was witnessing was unusual or just part of the show.

mholt··on Show HN: Doggo – A powerful, human-friendly DNS client for the command line
Love this, thank you!

Is there a way to query all DNS records? (I was surprised to learn that isn't the default.) This would be really helpful for troubleshooting people's Caddy questions (which are actually DNS problems).

mholt··on Virtually Hawaii
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 mod_wsgi/4.9.0 Python/3.6 PHP/7.4.33
mholt··on Virtually Hawaii
Where is that link from? I get an actual HTML page when I go to virtual field trips.

Anyway, it looks like an image map.

mholt··on Ultrasonic investigations in shopping centres
Those are probably vole deterrents.
mholt··on Software MVPs can no longer be low quality
There may be something to this.

I've been letting people use semi-supervised development previews of Timelinize[0] for a little over a year now -- it is unfinished, unpolished, buggy software, but I wanted to get it in people's hands while I stand by in real-time ready for feedback, to prove out the concept and see if I am even on the right track. I let users know it is in the very early, rough stages, and to really just follow the instructions and do the happy path for now.

The feedback is lukewarm, and most users are disinterested at this point. Which is unfortunate, since I believe that a fully functional application would actually draw them in, because a few testers did actually express amazement at the basic idea of what they saw the software do for them in an initial trial run. Most feedback got lost in the weeds of the known bugs and unfinished aspects, though, which didn't really tell me anything I didn't already know, and it just discouraged testers from trying more/again.

Could be a did it wrong. But at this point I'm having to forge ahead in my nights/weekends and basically finish writing this very complicated piece of software in the hopes it'll be something great, even though it doesn't exactly have direct competition that I know of. (Ultimately, though, I just need it to be great for me and my family. I am just hoping others will find it useful too.) When I finally do release a public beta, it had better be good. That's what I know now.

PS. Looking for a different name that doesn't sound like Tylenol -- according to repeated user feedback.

[0] https://x.com/timelinize and https://timelinize.com

mholt··on Nginx Unit: open-source, lightweight and versatile application runtime
What was the config? It should never override explicit configuration...
mholt··on Encryption at Rest: Whose Threat Model Is It Anyway?
> What benefit does encryption at rest solve for something which is never intended to actually rest?

That's the point of the article, luckily enough. "Disk Encryption is important for disk disposal and mitigating hardware theft, not preventing data leakage to online attackers."

> So what benefit does encryption at rest bring? Won't a hacker be attempting to take data when it's online (and therefore not resting)?

Yes (again, illustrated in the article).

mholt··on Comparison of OSS photo management tools
Surprised Ente isn't on here: https://github.com/ente-io/ente

(AGPL is open source right? ducks)

mholt··on Repairing my mug with Kintsugi
What's food-unsafe about cured urushi?
mholt··on The messy quest to replace drugs with electricity
I know some families that swear by their Healy, a MLM-marketed device that claims it can help ease muscle tension and a whole swath of other health problems, using electric diodes or even just resonate frequencies over the air.

While I think there's something to it, after seeing the app, though, I question its legitimacy. It claims to scan your biosignals by placing your thumb on the phone screen and it has a progress bar that variably increases at the exact same bezier curve rate every time, and then it computes the optimal vibration program for you. But phones don't have hardware or at least the APIs to do that, I'm pretty sure?

But I can't argue that it has seemed to help tame migraines, placebo or not.

mholt··on Repairing my mug with Kintsugi
I'm also looking. The University of Utah has a random one-off kintsugi course this fall but I think it's full already.
mholt··on Repairing my mug with Kintsugi
My wife recently got into kintsugi. She's learning the traditional method described here. I'm reading these comments with great interest and will be passing this onto her!

Most of the methods taught in the US are "gold relief" methods, which is basically glue with golden pigment mixed in. It doesn't look great but is modern and quick. "Gold flush" methods take a bit more time and are more authentic, but still don't use the traditional materials shown in this article.

Does anyone know where to get these traditional materials for use in classroom settings (i.e. in bulk, preferably discounted)? Not massive scale, just enough for a few classes. The kits have such a tiny amount and are so expensive, even a bulk discount of ~10-20% would be ideal.

mholt··on Ticketmaster confirms data breach with a SEC filing
They recently got sued for being a monopoly. They have no incentive to do better. And unfortunately this probably won’t change anything. https://www.justice.gov/opa/pr/justice-department-sues-live-...
mholt··on Ticketmaster confirms data breach with a SEC filing
Ticketmaster has recently been sued by the DoJ for monopolizing: https://www.justice.gov/opa/pr/justice-department-sues-live-...

Too bad nothing will improve because of this.

mholt··on Caddy 2.8
Yeah, HTTP3 should be quite a bit more efficient now thanks to upgrades in quic-go.
mholt··on Caddy 2.8
Yes, it has for years. https://github.com/lucaslorentz/caddy-docker-proxy
mholt··on Caddy 2.8
That’s a great point. Thank you for that.
← PreviousPage 7 of 34Next →