Pay attention to what you are staging. Generally this means `git add -p` or similar.
Pay attention to what you are committing. Generally this means looking at what you have staged before writing your commit log message.
Pay attention to what is in your pull request. Generally this means looking at your commits / draft pull request before you ask for code review.
If anybody other than you sees crap in your pull request that should obviously have been ignored, it means you have failed to pay attention to what you are doing three separate times.
> You clearly haven't seen the people who are lazy and so just do `git add . && git commit -m ... && git push -f origin` every time.
I’ve worked with and managed plenty of people like that and those are the people I least want doing something like this. Seeing the flotsam and jetsam of .DS_Store etc. are an early warning sign they aren’t paying any attention to what they push and the sooner that gets caught and addressed the better.
I have experienced this in person with a developer who was failing to debug something. An error message was popping up on screen and he was reflexively clicking it away faster than anybody could read it. Even after being told “an error message is popping up, don’t dismiss it”, even after being told “[do the thing that triggers the bug] and then completely stop without doing anything else”, and a whole bunch of other ways of phrasing it, he was unable to understand that the error message contained useful information that we needed to see. I’m not even sure he was consciously aware it existed or that he was doing it. After many failed attempts at getting him to stop I literally had to take the mouse away from him and do it myself. I was shocked that apparently nothing anybody could say would stop him from dismissing the error message without even looking at it.
I think this comes from the same problem as notifications on iPhones: if you dismiss them accidentally then it is very difficult to find out what it was.
It is missing the equivalent of the "history" in e.g. browsers and YouTube.
If a user dismisses an alertbox on desktop, why isn't there an history menu item that shows the previous 100 alert messages?
That may be an issue for messages from people but almost anything that pops up because the computer wants to tell you is useless and certainly doesn't need to be findable later. If you want to work on the problem, you can do that when you're ready, at your own initiative, not in the middle of what you're actually trying to do. Programmers wouldn't stand for a language that pops up a modal dialog when you type incorrect code but we think users are somehow less deserving of respect and ready to drop everything to deal with some stupid notification telling them they did it wrong or the software is broken like a crying child demanding his mother knows that he hurt his finger.
Reflexively dismissing error message popups is reasonable behavior because they're almost always unhelpful. It is often easier to mindlessly trial-and-error your way around obstacles than waste your attention on them.
> If you want to work on the problem, you can do that when you're ready, at your own initiative, not in the middle of what you're actually trying to do.
As I explained earlier, what we were actually trying to do was debug the problem, and reading the error message was a necessary part of that.
It’s weird you’ve cooked up this little fantasy that the error message was getting in the way when it was the most important thing in the whole process and that was the entire point of the anecdote.
> Reflexively dismissing error message popups is reasonable behavior because they're almost always unhelpful.
Not when you’re trying to debug the problem the error message is telling you about!
I'm justifying (via spleen venting) why someone would have the habit of reflexively closing popups without reading them. That that habit carries on even in the rare case where it would help is separate but shows how strong it can be.
By the way, I've seen the exact same thing in a student I was teaching how to use computers. He was asking me what's wrong and demonstrated that an error popped up, which he immediately closed - several times in a row! At the time I thought he wasn't really trying to solve it himself so he didn't bother with the message but now I realize it's just how people have reasonably adapted to the obnoxious way computers keep jumping in front of you screaming for attention.
> Programmers wouldn't stand for a language that pops up a modal dialog when you type incorrect code
I have no idea why you think this. The only reason I wouldn't like it is because I might be doing something that requires incorrect code as a placeholder, but if the modal didn't come back after being dismissed (and just sat in a history) I'd be pleased as punch. It's why I moved to rust - I wanted the compiler to stop me.
Not only do you think this, but you think it's somehow a sign of being egotistical and disrespectful that anyone would like to know when they're screwing up. Weird.
I don't agree with much of the above but I do agree that we should endeavor to minimize error notifications and the like because people don't read them. We (as programmers) should endeavor to make things "self-heal" or work in such a way that most people don't have these kinds of notifications interrupt them. E.g. if "error X" happens a lot find a way to make the action that causes "error X" work without an error. Easier said than done though.
As an aside I really like video games that have a running log of everything characters have said. Persona 5 does this. It's a rare feature from my experience!
It's so weird to me that this kind of thing wasn't a day-1 kind of thing. Android's has loads of issues too[1], not least of which is that you need to manually enable it.
1: you can't get access to actions or details in the history (e.g. no long-press to change settings), nor does it show you ones you didn't dismiss by hand afaict (I've been having Discord notifications disappearing almost immediately after making a noise, but there's nothing in history even though I saw it for its whole half-second existence because it popped over my screen).
Almost everyone has this popup dismissal reflex. People don't read them and click or tap them away instinctively. I think software creators should know this by now and stop using popups in their software.
Sometimes the reflex is so strong, it is extremely hard to stop it, even when you're aware of it. Something like that has happened to me once. There was some kind of password form, where it said DO NOT PRESS ENTER after typing the password. I pressed enter. It took me several attempts to get through it.
I'm guilty of dismissing useful messages sometimes, so I'm running a program, RetroClip for macOS, that records the last 30/60 seconds of screen capture into a ring buffer in RAM (with compression, but the CPU/GPU/power usage seems to be almost negligible). It writes out a file when you press a hotkey. Very helpful in these "wait, wtf did just happen" situations.
The person I replied to described their frustration with a colleague dismissing an error message without reading, not a user. I'm not shaming users not providing clear actionable feedback with stack traces and reproduction steps. I've known fellow software engineers throw their hands up and ask for help because they're 'getting an error', that's what's annoying (because they should know better, ok what have you done before asking me, etc.) not users.
You can usually safely dismiss sentences that start with “It’s widely accepted that…” because if it were actually true, they wouldn’t need to hedge like that. The usual reason to start a sentence like that is when it isn’t as widely accepted as they claim, but they would like the reader to believe that it is. When something is widely accepted, you can just say it without the weasel words.
Requests has been dead for over a decade. It doesn’t support HTTP/2, it doesn’t support HTTP/3, it doesn’t support async, and they ignore security vulnerabilities for months.
Nobody should use requests. If you are still using it, the quickest way to get off it is to switch to niquests, which is actively developed, supports all the things I mentioned above, and API-compatible with requests - you can just do `import niquests as requests` for an instant upgrade.
Claude Code’s been doing this for at least a year already and I assume Claude Cowork does it too as a result. That’s already millions of users, so it’s not “just a neat idea with no adoption”.
I haven’t kept up to date on Gastown, but I’m familiar with the mindset.
A lot of people who want to go all-in on AI start with how they currently produce software and they try to add AI everywhere they can until things start going wrong. At this point they’ve found the threshold for “we can automate as much as possible without compromising on quality” and they can expand their AI use when models improve.
A minority of people like Yegge start by automating absolutely everything possible but still trying to get everything to work, even if it’s low quality. At this point they’ve found the threshold for “as automated as possible while still basically working” and they can improve their quality when models improve.
Both sets of people are trying to do the same thing – automate software development as much as possible – but they are approaching it from starting points on the opposite ends of the spectrum. One starts with quality and increases automation; the other starts with automation and increases quality. The latter approach is insane if you have to ship and maintain production quality software, but it’s also where some of the ideas that will be eventually used by the people taking the former approach come from.
em is a generic "font-size" without regard to the axis. ch is specifically related to the font width, and ex is specifically related to the font height. So if you want things like padding and margins to be proportionate to the font size, then using em will be suboptimal for fonts that happen to be tall or short. And as a web developer, you generally don’t know which font will be used (content management systems, designers making different choices in the future, users overriding fonts for accessibility reasons, etc.)
For lengths that you specifically want to be axis-independent and related to the font size, e.g. border-radius, then you should still use ems.
> Her objections run from the immediate to the apocalyptic: the water and power consumed by data centres, what the technology is doing to people’s capacity to think, and research suggesting advanced AI could pose a risk of human extinction.
> Boyle is an outlier, and knows it. She no longer owns a smartphone, has deleted her social media accounts and now lives in a converted Toyota 4WD.
> She followed up in writing to Haagsma, setting out research on AI’s labour market and extinction risks and asking the league to pause its adoption.
> By mid-June, Boyle had told her managers she would not have Copilot on her laptop, would not put her work through AI systems and would not direct her team to use it. She wrote that the change was causing her significant distress and that she felt unsafe at work.
> Boyle is now living in a 1986 Toyota Troop Carrier with her cat, carrying a flip phone and handing cards to strangers on their screens that read: “I’m open to talk, want to have a conversation?”
She’s a kook who thinks she’s Sarah Connor. Your employer using Copilot is not a threat to your safety, you don’t get to tell your employer what they can install on their laptop, you don’t get to stop your colleagues from using AI, and if you write to the general manager warning them about the apocalypse you aren’t going to find them very responsive.
There are thousands and thousands of people who have been pulling shit like this for every topic under the sun, from contrails to fluoride in the water for generations. We don’t give them publicity because we understand the proportionality of their grievances and react accordingly. This is only making the news because the topic of this person’s fixation happens to be AI.
To be fair, she's not wrong about feeding children's data into llms. You can trust MS policies about isolated tenants all you want , but in practice frontline staff regularly copy-paste sensitive info past all the guidelines just because it's faster
I don't think it's fair to call her a "kook", though I share her views on AI so I'm biased. Comparisons with contrails or concerns over fluoridation aren't applicable as there are real measurable problems with AI and the resources that it consumes.
For me, the biggest issue with AI is the consolidation of power into the hands of the billionaires, or possibly the likelihood of another financial collapse.
Her actions don't come across as those of a conspiracy theorist. The article actually doesn't go much into her personal situation or life story.
Her job was getting kids involved in a sport. Is that an area we really need to force AI onto workers? Are we really going to see big efficiency gains doing that? In software it makes sense to spend on AI if it gets you to market faster, your competitors will be doing the same. A football league participation manager doesn't really have the same pressures.
This definitely smells like the uppers at AFL jumping on the bandwagon without really thinking things through. And they aren't the ones who pay the price of their games.
It’s even worse than that! There is no delete all feature! So if you have 100k photos and make the mistake of saying yes to Google Photos just once, it will fill up all your storage space, block your email until you pay for extra storage, then force you to delete all your photos manually, one page at a time, before you can stop using it. I think that trap is the sleaziest thing I’ve seen Google do.
They actually did build a way to undo enabling backup that removed all the photos added from the enabled device. I guess that's a tacit acknowledgement that people are likely to enable this accidentally.
I remember there being a mini scandal about this feature being limited to 3 uses or something, but can't seem to find the story right now.
This was even more annoying when they started including whatsapp backups in your quota and sent a load of people over quota. And as far as I know there's no alternative for whatsapp backups apart from plugging in a USB cable and hoping Whatsapp don't change the method between now and when you need to restore it
It is possible to back up the WhatsApp folder if using Android, with the likes of total commander or any other file browser.
It can then be decrypted with a simple access to the _sim card_, i.e. a way to receive a message, meaning that anything backed up to Google drive should not considered safe from a dedicated state actor (even if the other party did it). It is quite easy to demonstrate with a new phone or an emulator.
I have doubts on how much the US gov needs to break the Whisper protocol when they have such easy to get side attacks.
I was under the impression that to backup the encrypted whatsapp you need to enable your own encryption key, which presumably makes it more secure but of course that's trusting Meta's implementation
The Whatsapp's restore process if you're not on Google Drive is unreliable too. I keep a separate backup but also have to keep the Google Drive backup on because it's too risky now I've seen it fail to restore and was only able to rescue it using the Google Drive backup I had also. If it just had my backup I'd have lost the lot.
Are Google Photos stored in Google Drive? Because Google Collab has access to Google Drive so you can write some nifty Python scripts to move your data between Drive accounts and do mass renames/deletes etc.
No, I've never seen Google Photos reflected in any Google Drive interface (web, OS integration, etc.) which on the one hand makes sense (think of Google Photos more like a database-driven black box app than a hierarchical filesystem) but on the other hand Google Drive does show gdocs, gsheets, etc. (which is also sort of a black box app, as the "files" seen in GDrive are merely lightweight stubs).
Only in storage quota views do Photos and Drive (and Gmail, etc.) commingle.
I guess the hopeful one, "Google always kills its products", suggesting that the bad product in this thread is also doomed. I hold this same hope, almost entirely unironically, about so many things.
Pay attention to what you are committing. Generally this means looking at what you have staged before writing your commit log message.
Pay attention to what is in your pull request. Generally this means looking at your commits / draft pull request before you ask for code review.
If anybody other than you sees crap in your pull request that should obviously have been ignored, it means you have failed to pay attention to what you are doing three separate times.
reply