In theory, they do. In practice, I have only seen one codebase — ONE — in all my years of programming that was using tabs and yet did not end up with spaces getting mixed in with those tabs at some point along the way. (In the indentation, I mean: obviously once the non-indentation part of the line starts, you want spaces there). And that codebase had precisely two people committing regularly to it. Occasional PRs from other contributors, but only two primary maintainers.
Every other tab-using codebase I've seen (of non-trivial size and complexity, that is), someone, somewhere, had been lazy, or had a misconfigured editor, or something, and spaces snuck into the tabs. The worst offender I ever saw was a file that had been edited by multiple people over the years, who must have had different tab settings in their editors. There was one section where they had tried to line up a bunch of variable assignments and values. (Yes, I know, bad idea, but stick with me for a minute, I'm getting to the punchline). None of the pieces of code that were supposed to line up were actually lined up. (This was C# code, so indentation didn't truly matter like it would in F#, or Python, or ... well, I won't list all of them since I'm trying to get to the point). Here's the really hilarious part. I tried all sorts of tab settings to see if I could get that file to line up. I tried 8. I tried 4. I tried 2. I even tried 3, the setting for the people who can't make their minds up between 4 and 2. Then I tried really oddball settings like 16, 5, or even 7. Nothing worked. There was no tab-size setting I could use that would make the code line up.
That was the day I said "Forget about tabs, just use spaces, you won't have that problem with spaces." Tabs have great promise, but in practice, in my experience at least, you end up having to tell your colleagues "hey, you need to set your tabs to 4" (or 8) "before editing this file". Which almost negates the promise of tabs. They're great in theory, but I've only seen ONE codebase that made them work in practice.
My teammates hit the generate PR button. I'm not reading that, it's a summary of the changes that I am _already_ going to be looking at, wrapped in some flowery language about being "better architecture, cleaner code" etc.
So those PRs may as well not have a description at all as far as I'm concerned.
> so much easier to destroy things than it is to build them, so the builders are always at a distinct disadvantage
Tangentially related, there was a local property nearby that had these large, aesthetic trees in the yard. The house was sold, a developer cut them all and flipped the house for sale.
> For example the washing machine. You dont need real time information because you know how long it takes since you've done it 1000s of times and it beeps. All these things are just managed in our heads subconsciously.
Actually, this is one example of home automation that works very well. My washer will remind me that wash is ready to move to the dryer, and stops reminding me once the washer door opens.
It means that a) I don't have to put it on my mental reminders, b) it works very well with anybody else in the family that does a wash and _they_ forget to move it to the dryer.
A long time ago I was taking flight lessons and I was going through the takeoff checklist. I was going through each item, but my instructor had to remind me that I am not just reading the checklist - I need understand/verify each checklist item before moving on. Always stuck with me.
A few times a year I have to remind my co-workers that reading & understanding error messages is a critical part of being in the IT business. I'm not perfect in that regard, but the number of times the error message explaining exactly what's wrong and how to solve it is included in the screenshot they share is a little depressing.
> how do we get large text to scale at a lower rate than body text. It's great that the body text can scale up from 16px to 32px, but does heading text need to scale up from 32px to 64px? It's already huge. If you have any thoughts, please do let me know!
Android 14 has this in non-linear text scaling -
> To prevent large text elements on screen from scaling too large, the system applies a nonlinear scaling curve.
I wish Android apps were better citizens when it comes to accessibility. My friend has very poor eyesight and I set his phone up to make things bigger for him, but most of the apps are a horrible janky mess of overlapping everything.
(Also "light mode" apps are painful for him to view, and most of the major apps have skipped out on offering dark mode)
reply