HNHacker News
TopNewBestAskShowJobs

lewiscollard

728 karma · joined August 28, 2015

Django by day, petrolhead by night, cat BFF all the time - root@lewiscollard.com - https://exhaust.lewiscollard.com/
submissionscomments
lewiscollard··on Don't use your phone while you poop
Right! If you spend enough time in there to be reading you didn't actually need a shit.
lewiscollard··on GrapheneOS recommended for domestic abuse victims
> God, I hate techno-solutionism.

I don't hate it nearly as much as this weird genre of accelerationism where any attempt to improve one's immediate circumstances is just a distraction from the real work that needs to be done.

lewiscollard··on GrapheneOS recommended for domestic abuse victims
> The article mentions that an abuser could put spyware on your phone? Is that a realistic scenario?

Yes, stalkerware is an entire genre of software and it is designed for exactly this purpose.

How “stalkerware” apps are letting abusive partners spy on their victims https://www.technologyreview.com/2019/07/10/134249/stalkerwa...

The Abuser in Your Pocket: How Stalkerware Threatens Women’s Privacy https://safeescape.org/stalkerware-threatens-womens-privacy/

'I thought I'd been microchipped': How abusers spy on partners with 'parental control' apps https://news.sky.com/story/i-thought-id-been-microchipped-ho...

A web search for the term will turn up many more results. Graphene OS's hardening against exploits, compared to the abysmal record of Android vendors, gives much better odds against any of these apps being able to run with elevated privileges, which means Android's sandboxing is effective.

(Happy Graphene OS user of many years here.)

lewiscollard··on I’ve built a virtual museum with nearly every operating system you can think of
> but I guess there is at least this precedent for using the word like that.

In Windows 3.1, the SYSTEM.INI had a setting called "shell" for overriding the default program started after Windows had loaded. Use of the word "shell" in this sense to describe a graphical interface dates back at least this far.

There was also a crude character-mode graphical interface called MS-DOS Shell, in 1988.

"shell" might be best generalised as "the first interactive program to run after boot" rather than "command line interface".

lewiscollard··on Clicks Communicator
> Thanks, I saw that, but I never can make heads or tails of just MP. Feel like some phones have much lower MP but the quality of the photo is much higher.

It does not merely feel that way; it often is. That is because megapixels measure the dimensions of the files the camera generates (this is not the same as resolution) and as such are almost the worst measure of camera quality.

Boring tech websites like comparing megapixels, because that is a number, and that allows people who do not know how cameras work to review products and have opinions without actually using them. Truth is that pixels, a measure of resolution, have been irrelevant for years when one is not printing them huge or looking at them full-size on gigantic computer monitors. More or less nobody is doing that these days; they're looking at them a few inches wide on their phones or tablets, usually via [insert social app] that downsizes and compresses the shit out of them to save on bandwidth & storage.

Things like

* colour rendition * contrast rendition * low-light ability * speed of operation (allows you to get a photo in the first place) * and more things I could name

...are all far more important to what makes a good camera on a phone. If more people were like you and actually LOOKED AT THE PHOTOS we might have ended up with much better cameras than we have now.

lewiscollard··on Microsoft kills official way to activate Windows 11/10 without internet
My old man has been running Linux for nearly 20 years now. I PROMISE not only that he has never once opened a console, but would spontaneously combust if you suggested it. (I have used a command line on his computer a few times in those two-ish decades, when doing my very rare tech support, but that's just because that's the fastest way for me to get anything done.)

Maybe Windows back in e.g. Windows 2000 days would have some sort of claim to user interface discoverability and predictability which no Linux distribution would have. That ship has sailed; Windows today is a shitshow.

lewiscollard··on Ask HN: What skills do you want to develop or improve in 2026?
I am going to get good at TIG welding. This is mostly because there's a lot of subprojects of my car that would really benefit from me doing TIG - stainless, aluminium, etc (I already got pretty good at MIG for mild steel).

But also, AI. Previously my worry was "AI is not going to be good enough to replace me, but the people who make the decisions might think it is". After actually using a code assistant myself lately that turned into "AI is going to replace me". No, it's not that good _yet_ (it still needs lots of nudging and shepherding) but I don't think the odds are good of my job title existing in a decade.

LLMs can't wield a TIG torch yet and the work pays well. Being good at it is a good hedge against this industry being eaten by AI.

lewiscollard··on I got hacked: My Hetzner server started mining Monero
> I tried handwriting https://blog.jakesaunders.dev/schemaless-search-in-postgres/ bit I thought it came off as rambling.

There is nothing wrong with this article. Please continue to write as you; it's what people came for.

LLMs have their place. I find it useful to prompt an LLM to fix typos and outright errors and also prompt them to NOT alter the character or tone of the text; they are extraordinarily good at that.

lewiscollard··on I failed to recreate the 1996 Space Jam website with Claude
That's a fun trick, but please consider adding ARIA roles (e.g. role="presentation" to <table>, role="heading" aria-level="[number]" to the <font> elements used for headings) to make your site understandable by screen readers.
lewiscollard··on 10 years of writing a blog nobody reads
I fed the text of John F Kennedy's 1962 speech "We choose to go to the Moon" into ZeroGPT and it is rated as 72.02% AI generated.
lewiscollard··on McDonald's is losing its low-income customers
I think that merits an apology from me, then: what I said was wrong and I'm sorry. If I'd thought about that sentence for more than ten seconds, it'd be clear that it's all better explained not by indifference from the staff doing the actual work, but because (as you said) they are asked to work under impossible conditions, and as long as some line on a chart representing "money" goes in the right direction it's the people that set the conditions of the job who don't give a shit.

Some part of me understood this already, because...

> You are a statistic until you walk up to the front counter and make it personal.

Aside from the fact that the "front counter" is apparently deprecated these days...given what I know about my personality flaws, I am sure I'd not want to do this. It's not like they could make the food appear 20 minutes ago, and they're not responsible for the conditions that made it take 20 minutes in the first place, so what would it accomplish other than making their day worse? Maybe some warm feeling of "well I fuckin showed 'em" followed by "oh damnit, I was an arsehole" 15 seconds later which would hang over me for a LOT longer than 15 seconds. Walking out was a better outcome for everyone, including me.

lewiscollard··on McDonald's is losing its low-income customers
From the UK too, and your experience is matched by mine. The last time I was in one (I mean "the last time" in both senses of the words) I waited over 20 minutes for my food; I do not know how long it would have actually taken because at that point I got bored, wrote it off as a loss and walked out. No sense in complaining to anyone because that would have consumed even more of my time.

McDonalds is not food and it is not even fast anymore.

I cannot blame their staff for any of this anyway; if I was being paid that little to be treated like garbage I wouldn't give a shit either.

lewiscollard··on Gymkhana's 1978 Subaru Brat with 9,500-RPM Redline, Active Aero
(I don't know why your comment got flagged. I vouched for it; whatever we might argue about here, I don't think you're out of line in any way.)

I actually feel everything you have said apart from this P5 being "nice" (it was fucked). Like turbo delays - I had that on my other project, and going from "I need a new turbo" to "I have a new turbo and things adjacent to the turbo" took damn near a year by itself. I know how this goes!

So I hope I did not appear to say that it's EASY. I've put in enough hours to know that it's not, and if it was everyone would be doing it anyway. It does in fact take a lot of time, and willingness to learn, and plain old determination, and money. I will say it's something that IS possible, and that I still agree with this:

> Honestly, just learn it like anything else.

But...I suppose we'll know that for sure once I have an actual working car, right? :)

lewiscollard··on Gymkhana's 1978 Subaru Brat with 9,500-RPM Redline, Active Aero
As someone building a particularly stupid car in a genre almost but not entirely unlike the OP (a turbo LS1-swapped Rover P5), I am not totally making stuff up when I say that this:

> You have to be prepared to spend potentially years on it and huge amount of money, even on relatively simple projects.

is not at all mutually exclusive to this:

> Honestly, just learn it like anything else.

I didn't really know what I was doing when I started my project. I had an idea and the desire to make it happen. I barely knew how to use a MIG to do the fab work, so I got good (enough) at it. I knew nothing about LS engines, so I learned enough about them at each point I needed to know something about them. I only have a vague idea of how I'm going to do the next phase of it; I know that I can figure it out with enough thinking and by making all the mistakes I need to make. I don't know how to TIG, and it'll be really useful if I do, so I am learning how to TIG.

Start somewhere, and the more you do, the more you can do.

lewiscollard··on We cut our Mongo DB costs by 90% by moving to Hetzner
Yes, any time someone says "I'm going to make a thing more reliable by adding more things to it" I either want to buy them a copy of Normal Accidents or hit them over the head with mine.
lewiscollard··on Unix v4 Tape Found
> They were more or less just rewriting what you wrote.

The literal opposite of what I wrote, actually, because "that" refers to "celebrating the murder of Charlie Kirk", an activity not much associated with fans of Charlie Kirk.

lewiscollard··on Unix v4 Tape Found
If this is intended to accuse me of being a Charlie Kirk fan I can only conclude that you either did not read what I wrote (in which case, you should refrain from replying to it), or you are being dishonest on purpose.
lewiscollard··on Unix v4 Tape Found
> I'm on mathstodon.xyz (mastodon for maths) and haven't seen any of that. So I guess it's the people you subscribe to.

I was on an automotive-focused instance. I did see a lot of that.

> But I have the freedom to decide what I want to consume.

As do I; I had the freedom to delete my account, thus avoiding the need for any active measures to make my life free of schizoposting.

lewiscollard··on Unix v4 Tape Found
I was on Mastodon for three years. I deleted my account. When I found out that Charlie Kirk was murdered, my second thought was "well, best create yet another filter on Mastodon so I don't have to watch people celebrate Charlie Kirk being murdered" and when I caught myself having that thought I realised that being on Mastodon was a net negative for my wellbeing.

(I didn't like the guy either, by the way, or at least I knew enough about him that I knew I have much better things to do than listen to him. There are more than a few people like that, all of whom I wish find some peace in their hearts, and none of whom I wish to come to any harm.)

Mastodon is packed to the brim with literal psychopaths and people pretending to be psychopaths for imaginary Internet points. It is not an experience I suggest for anyone who is neither of those things.

lewiscollard··on Just use a button
No, it is because a significant subset of React developers do not know how to write HTML.
lewiscollard··on Public trust demands open-source voting systems
> There's really no good practical solution to this problem.

Remote attestation via trusted execution environments is a thing. It is not a theoretical one either. See, for example, Graphene OS's Auditor app[0]. Solving this for voting machines in particular would be a matter of good design, not of solving fundamentally hard problems.

[0] https://attestation.app/

lewiscollard··on Apple Vision Pro upgraded with M5 chip
You removed some words just now, which changes the meaning of the sentence.

> but the base $3.5k spec with only 256 GB is extreme.

The plain meaning of this sentence is "I expect more than 256 GB of storage when paying $3.5K for a device". You can argue for or against that if you like (I don't give a shit, because I would not buy it at any price), but not against something they did not say.

lewiscollard··on Why Self-Host?
> The main thing that gives me anxiety about this is the security surface area associated with "managing" a whole OS— kernel, userland, all of it. Like did I get the firewall configured correctly, am I staying on top of the latest CVEs, etc.

I've had a VPS facing the Internet for over a decade. It's fine.

  $ $ ls -l /etc/protocols 
  -rw-r--r-- 1 root root 2932 Dec 30  2013 /etc/protocols
I would worry more about security problems in whatever application you're running on the operating system than I would the operating system.
lewiscollard··on I'm spoiled by Apple Silicon but still love Framework
I know it's poor form to speak ill of the dead in general and of St Jobs in particular, but I do not see how anyone gets much more from stories like this than "Steve Jobs was an ill-tempered dick of a bully" and "power made Steve Jobs immune to getting his head kicked in which is absolutely what happens if you behave that way outside of an air-conditioned Silicon Valley office".
lewiscollard··on A teen was suicidal. ChatGPT was the friend he confided in
At every step there is human agency involved. People came up with the idea, people wrote the code, people deployed the code, people saw the consequences and were like "this is fine".

This is why people hate us. It's like Schrodinger's Code: we don't want responsibility for the code we write, except we very much do want to make a pile of money from it as if we were responsible for it, and which of those you get depends on whether the observer is one who notices that code has bad consequences or whether it's our bank account.

This is more like building an autonomous vehicle "MEGA MASHERBOT 5000" with a dozen twenty-feet-wide spinning razor-sharp blades weighing fifty tons each, setting it down a city street, watching it obliterate people into bloody chunks and houses into rubble and being like "well, nobody could have seen that coming" - two seconds before we go collect piles of notes from the smashed ATMs.

lewiscollard··on Epson MX-80 Fonts
> What about the alternating green bars?

    body {
        background-image: linear-gradient(to bottom, white 0%, white 1em, #7cb8a6 1em, #7cb8a6 calc(1em + 1px), #dbfcf5 calc(1em + 1px), #dbfcf5 calc(2em + 1px), #7cb8a6 calc(2em + 1px), #7cb8a6 calc(2em + 2px));
        background-size: 100% calc(2em + 2px);
    }
adjust colours to taste :) extra credit if you implement dark mode!
lewiscollard··on Ask HN: How did the internet discover my subdomain?
Depending on the web server's configuration, you very much _can_ find the domain which is configured on an IP address, by attempting to connect to that IP address via HTTPS and seeing what certificate gets served. Here's an example:

https://138.68.161.203/

> Web sites prove their identity via certificates. Firefox does not trust this site because it uses a certificate that is not valid for 138.68.161.203. The certificate is only valid for the following names: exhaust.lewiscollard.com, www.exhaust.lewiscollard.com

lewiscollard··on You probably don't need query builders
The push-to-left doesn't matter. Most people will read one thing on the site so they're not navigating between pages anyway, most of the remainder aren't clicking through pages fast enough to even notice the jump, most of those that do notice it know how scrollbars work, and the remainder is you :)

I guarantee nobody will complain about the jump, but they will (did) complain about disabling basic browser functionality.

If the jump really bothers you, you can replace your rule with

    html {
        overflow-y: scroll
    }
which should force scrollbars to appear on every page whether they're needed or not. But you don't need it.
lewiscollard··on Show HN: I made a service to convert WordPress blogs to Hugo
Yep, that works too. I wrote the shortcode because I didn't want to have to manually resize pictures. That's effort and it means if I change my layout to require wider pictures I have to go find the originals.

I think you could do this with a render hook if you want to get fancy (with the benefit that the Markdown for your posts stays as plain Markdown): https://werat.dev/blog/automatic-image-size-attributes-in-hu...

lewiscollard··on Show HN: I made a service to convert WordPress blogs to Hugo
> so I wound up putting some JS in my index page template that checks for that kind of thing.

If we are going to use JS, then you might as well put the redirects themselves in JS. Have a tiny stub of JS that detects the "/?p=xxx" case, which can then load the (presumably very large) list of redirects from a separate file and do the redirecting. That'll save you maintaining the extra service.

As for me, I moved from a Django app I made to a Hugo site, but it's pretty much the same deal. Because my Hugo site is on a "real" server (rather than e.g. GitHub Pages) I just have a giant pile of 500+ redirects in the nginx config file for the site (which is checked into the same repo as my Hugo site). It works for me.

Page 1 of 7Next →