Ask HN: Software That Insults You?
58 comments
MPW C compiler error messages: https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html
"a typedef name was a complete surprise to me at this point in your program"
"'Volatile' and 'Register' are not miscible"
"You can't modify a constant, float upstream, win an argument with the IRS, or satisfy this compiler"
"This struct already has a perfectly good definition"
"type in (cast) must be scalar; ANSI 3.3.4; page 39, lines 10-11 (I know you don't care, I'm just trying to annoy you)"
"can't go mucking with a 'void *'"
"we already did this function"
"This label is the target of a goto from outside of the block containing this label AND this block has an automatic variable with an initializer AND your window wasn't wide enough to read this whole error message"
"Too many errors on one line (make fewer)"
"Symbol table full - fatal heap error; please go buy a RAM upgrade from your local Apple dealer"I really wish software development still had some fun like in the 80s and 90s. All the "professionalism" is taking the soul out of the job.
In FrameMaker's "Book" functionality, where you can stitch together a bunch of individual chapter files into a larger document, there's a very edge-case possibility of hitting a situation where there's no solution to the pagination (say that Chapter One has a forward reference to "(See page 57.xiv)" but added text puts the tagged info on page 57.xv, so the reference gets automatically changed to "(See page 57.xv)", but that text is shorter, so there's a slim chance that the reference has to change back to 57.xiv, but that makes the text longer again, which pushes the tagged info back to page 57.xv, ad infinitum).
Clearly, though it never happens in the real world, my code had to detect if a document seemed to be looping this way, and since I never expected anyone to see it, it just issued the one-word error message "Degenerate", with the intended meaning that "this document has hit a degenerate case".
Well, of course some customer found a bug that triggered the message, and called tech support, irate that our software had called him a degenerate.
Clearly, though it never happens in the real world, my code had to detect if a document seemed to be looping this way, and since I never expected anyone to see it, it just issued the one-word error message "Degenerate", with the intended meaning that "this document has hit a degenerate case".
Well, of course some customer found a bug that triggered the message, and called tech support, irate that our software had called him a degenerate.
Wow, that was you? I've heard the anecdote decades ago (probably read it on Usenet or in a book) but never thought I'd learn more nor find the person responsible for it...
Thanks -- and you might be interested to know that the example has been used in many lectures/presentations.
Thanks -- and you might be interested to know that the example has been used in many lectures/presentations.
Well! Yup, "Book" internal design and implementation was all me. I don't think anybody else at Frame even knew the message existed, until that fateful day. The bug that caused it to come up was also mine.
Any pointers to lectures/presentations? That was news to me!
So as to not leave the wrong impression: The entire user-visible document model and feature set of FrameMaker were ultimately the responsibility of one person (V.P. Engineering David Murray), who kept all the features mutually consistent, and the product as a whole "just right" as far as being not too complex or confusing while still being powerful enough for users to be able to do what they needed to do, and have an accurate mental picture of how everything worked. I believe that this approach was essential to the success we had; I'm always astonished when hearing in passing how things go in some other places, along the lines of "so programmer X decided to put in feature Y, got a quick OK from management, and then went off and designed the UX/UI all by themselves, implemented the whole thing, and merged it on in..."
Any pointers to lectures/presentations? That was news to me!
So as to not leave the wrong impression: The entire user-visible document model and feature set of FrameMaker were ultimately the responsibility of one person (V.P. Engineering David Murray), who kept all the features mutually consistent, and the product as a whole "just right" as far as being not too complex or confusing while still being powerful enough for users to be able to do what they needed to do, and have an accurate mental picture of how everything worked. I believe that this approach was essential to the success we had; I'm always astonished when hearing in passing how things go in some other places, along the lines of "so programmer X decided to put in feature Y, got a quick OK from management, and then went off and designed the UX/UI all by themselves, implemented the whole thing, and merged it on in..."
golang (from pjmlp's comment here[0])
--------------------------------------
"The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt. – Rob Pike 1"
"It must be familiar, roughly C-like. Programmers working at Google are early in their careers and are most familiar with procedural languages, particularly from the C family. The need to get programmers productive quickly in a new language means that the language cannot be too radical. – Rob Pike 2"
Sources:
https://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Pa...
https://talks.golang.org/2012/splash.article
------------------------------------------
[0] https://news.ycombinator.com/item?id=30696562
--------------------------------------
"The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt. – Rob Pike 1"
"It must be familiar, roughly C-like. Programmers working at Google are early in their careers and are most familiar with procedural languages, particularly from the C family. The need to get programmers productive quickly in a new language means that the language cannot be too radical. – Rob Pike 2"
Sources:
https://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Pa...
https://talks.golang.org/2012/splash.article
------------------------------------------
[0] https://news.ycombinator.com/item?id=30696562
[deleted]
Does forced to use electron apps count as an insult?
It should.
No, that's injury. We're looking for something that adds insult to injury.
Every time my software does something I didn't ask or expect it to I am insulted.
I used it for about 30 minutes years and years ago and didn’t really like it but Carrot Weather for iOS fits this bill. I believe it insults the user and generally uses snarky language. That’s pretty much its whole schtick, so it’s not really a hidden feature or easter egg. I don’t even know if it provides any more accurate weather information than other apps; I think people use it mostly for its ‘character’.
Again, not really my thing but it’s featured on the App Store a lot and has won numerous awards.
Again, not really my thing but it’s featured on the App Store a lot and has won numerous awards.
What The Forecast does the same thing. It is quite amusing, especially in the depths of a Canadian winter.
It's also a super configurable weather app with a lot of options for data backends. Generally just a good app, with the sass and insults being a nice cherry on top.
You can configure what kind of messaging you want from Carrot Weather. The reason it has won so many awards is that it's really a great weather app. It's very configurable, and its Apple Watch complications are fantastic.
The other Carrot apps were mostly fun because of the CARROT personality, but Weather is genuinely an exceptional entry in its category.
The other Carrot apps were mostly fun because of the CARROT personality, but Weather is genuinely an exceptional entry in its category.
A long time ago I got an account on an old Unix machine (Irix? HP?), my first, I'd heard that you could get help by typing "man", so did so. The response was
Apropos what?
which I thought so snooty that I laughed out-loud, and everyone in the room looked at me as if I were some kind of nut. $ man
What manual page do you want?
For example, try 'man man'.
$ apropos
apropos what?
Apropos tries to find manual pages that may be relevant to the search string (which should go after "apropos").Back in the day, man(1), apropos(1) and whatis(1) were all links to the same executable, IIRC.
Cleo[0] is a financial chatbot that roasts you for your spending among other things.
Example:
[0] https://web.meetcleo.com
Example:
12 trips to McDonalds this month
Any more and I’ll start listing it as a bill
(Disclosure, I work for Cleo, and it's not open source, but you didn't specify that as a requirement)[0] https://web.meetcleo.com
Oh man this looks great! Wish I could use it but I'm outside the U.S.
Every forced UI animation is an insult, because its message is "I believe you are too stupid to remember the command you issued approximately 0 seconds ago, so sit and waste your time while I remind you."
And worse still are delays added solely to trick you into thinking the task requires more CPU time than it really does.
And worse still are delays added solely to trick you into thinking the task requires more CPU time than it really does.
Thanks to Electron, it's not a trick anymore!!! :) That button click now actually needs 0.1s on your 2.6Ghz CPU while it is wasting 260 million logic operations ^_^
Windows 10/11 insults me regularly. My mistake seems to be installing it.
Windows 11 is driving me crazy. Sometimes clicking icons in the taskbar to bring something that is already open doesn’t work! Come on Microsoft! That’s the most basic and common functionality in Windows!! Don’t break it!!!
Or the software on my Smart TV insulting me by showing ads on a device I bought...
Windows 11. Breaking the taskbar was insulting to me. I left Windows because of this. I don't think I'll ever go back at this point, Valve, through Steam and Proton, have sealed that door for me.
Also, the fact that they decided to no longer support my ancient CPU from 2015, which I also find insulting considering that, as part of the Windows developer preview, they had no problems automatically upgrading me to a Windows 11 preview build.
Teams is also insulting for more reasons than I have time to enumerate.
Also, the fact that they decided to no longer support my ancient CPU from 2015, which I also find insulting considering that, as part of the Windows developer preview, they had no problems automatically upgrading me to a Windows 11 preview build.
Teams is also insulting for more reasons than I have time to enumerate.
Hijacking this to ask, can anyone suggest a Windows Explorer alternative? I don't need tabs or panes, I just want it to be fast again. (Using WinXP in a VM inside Win10 is significantly more responsive. I tried running XP explorer.exe on 10 but no luck!)
KDE Dolphin.
Or Total Commander on Windows.
Or Total Commander on Windows.
Thanks for the tip, I didn't realize so much KDE software had Windows versions! (At first I thought you meant to run it via WSL2's graphical mode ;)
Here is was hoping for a venue to vent my anger with how using Microsoft’s recent products around Office kind of insults any sane person using it.
OneDrive syncing away files, created on that very same machine just to be not available anymore while you are working on a business trip with sketchy network connections?
Word just outright freezing to death on trying to create a OneDrive link to the current file?
OneDrive syncing away files, created on that very same machine just to be not available anymore while you are working on a business trip with sketchy network connections?
Word just outright freezing to death on trying to create a OneDrive link to the current file?
Apple Music. I can’t understand how you can develop such an slow and laggy app in your own OS, even in an iPhone 11 Pro. I stayed on Spotify but would have love to be able to enjoy the lossless audio
Have you tried Deezer or Qobuz?
I recommend Tidal if you are ok with Spotify. Higher quality, app works fine, lets you download the quality tier you pay for to your device (useful for me since I get no signal at work).
I also noticed that Apple Music on macOS always opens on its own whenever you connect bluetooth headphones and afaik there’s no way to change that behavior or turn it off. I dont even use apple music and wont consider it on principle now lol.
This isn't what you asked for, but the insult and disrespect radiating from my Samsung device when it refuses to uninstall forced jankware...
It fuels my conviction to train free and open source developers and built a world where humans are in charge again
Running `feh` in an ssh session (or other terminal session without a graphical display) will print
"Can't open X display. It *is* running, yeah?"
That's not quite an insult, but seems to be the in the same spiritLong ago a friend had an Atari 520ST computer, with a graphical interface. When it displayed an error dialog, you had to click on "Sorry" to continue. I remember being insulted but also amused by having to apologize.
Have you seen the “sl” command?
It's a shame it's not installed by default on most distros. Intentionally installing reduces the humor/surprise/terror.
The non-response to SIGINT makes it a more serious impediment if you get it wrong in a tight situation, though. It's not like a short joke message or something. (Yes, I know you can SIGQUIT instead.)
Not sure if it qualifies, but I find humorous the mysql --i-am-a-dummy flag.
> Allow only those UPDATE and DELETE statements that specify which rows to modify by using key values.
> Allow only those UPDATE and DELETE statements that specify which rows to modify by using key values.
I'm fairly sure that many long-time db admins wished that was the default setting.
I will to my dying day start writing these statements in the console like
I've long since forgotten what I originally fat-fingered to make this seem a habit worth having, but it must've really ruined my day - in any context where one or two errant keystrokes would be enough to execute the query, I never don't do it this way. Don't even have to think about it, it's just what my hands do.
UPDATE whatever_table SET WHERE condition;
or DELETE FROM WHERE condition;
and then go back and fill in the rest.I've long since forgotten what I originally fat-fingered to make this seem a habit worth having, but it must've really ruined my day - in any context where one or two errant keystrokes would be enough to execute the query, I never don't do it this way. Don't even have to think about it, it's just what my hands do.
> `Defaults insults` setting in `sudo` that will add a insult every time you get your password wrong.
IIRC on OpenBSD it was not a setting and there was no way to turn it off. It did it by default in the true OpenBSD "like it or lump it" ethos.
However OpenBSD has now defaulted to `doas` and has subsequently had its mouth washed out with soap.
IIRC on OpenBSD it was not a setting and there was no way to turn it off. It did it by default in the true OpenBSD "like it or lump it" ethos.
However OpenBSD has now defaulted to `doas` and has subsequently had its mouth washed out with soap.
Instagram. I fee like such a dweeb using a platform that will tell me "Whoops, suspicious activity" when I use the correct username/password. Like how dare you think I want to use this dumb shit so bad I'm willing to tolerate a spit in my face.
I’m insulted every time an app has one of those forced tutorials I have to click through.
Every time when an app throws me a “Are you sure you want to do xyz?” dialog.
Carrot offers a whole suite of apps (todo, alarm, weather, etc) where this is the main feature:
https://www.meetcarrot.com/
https://www.meetcarrot.com/
The Spotify iOS app. It's simply unusable. I can't navigate it. It's buggy as hell. I am astonished how crappy the UX is for a service as popular and technical as Spotify.
Not sure if videogames count as they tend to contain a lot more snark by their nature, but I like how the easiest mode in the Wolfenstein series is called "Can I play, Daddy?".
I find GitHub 404 page (“this is not the page you’re looking for”) insulting, as:
1. They suggest arriving at this address is my fault
2. They try to play Jedi mind tricks on me
1. They suggest arriving at this address is my fault
2. They try to play Jedi mind tricks on me
Yeah Google search does it all the time. I always type in specific phrases like "Who was XZY ?" and Google automatically assumes I wanted to search for XYZ and shows me result for XYZ. With a small link which asks "Search instead for who was XZY ?" Just show me exactly what I asked for google goddamnit.
I agree it's annoying (and I don't use Google search but it's not alone in this) but honestly I'm sure it catches my typos more often than it 'corrects' my intended query.
Similar with spelling suggestions while typing - I find that a bit more annoying, so I actually have autocorrect off, but I do have (and frequently use) the autocorrect/suggestion bar.
Similar with spelling suggestions while typing - I find that a bit more annoying, so I actually have autocorrect off, but I do have (and frequently use) the autocorrect/suggestion bar.
The „proceed with slow shipping“ angle when ordering without amazon prime and similar.
I find Slack to be insulting whenever it tells me my browser or OS is too old.
Ski or Die, snowboard halfpipe: "I don't know you or your dog"
As a side-tool, there is the classic wowbagger:
https://www.wowbagger.com/manual6.htm
right now it is focused on Putin, however.
https://www.wowbagger.com/manual6.htm
right now it is focused on Putin, however.
One example is the `Defaults insults` setting in `sudo` that will add a insult every time you get your password wrong. This has made me smile a couple of times when the insult is really good.
Is there other examples of software that insults you when you get something wrong/do something incorrect?
This list can serve a double-purpose: first as a recommendation list for us who like to get insulted for fun, and second as a list of software to avoid for the ones that don't like it.