It makes me wonder how many 'no longer with the company' replies to mobs are similarly a technicality. Like, giving an employee unpaid leave until the mob dies down.
> Like, giving an employee unpaid leave until the mob dies down.
All the time. But, usually, that's not a laughable or desirable outcome. This is how bad cops who commit civil liberty violations or use excessive force continue to work for decades, or are eventually sidelined but continue to receive a salary.
While in this specific case we can excuse an intern who definitely didn't know better, and ultimately nobody was harmed, we shouldn't minimize or normalize administrative technicalities as a way to get away from outrage.
Angry mobs are a signal of our justice system either having a gap or otherwise not working. The whole point of having a justice system at all is to transform mob rule into a dialog so when mobs form it’s usually because justice isn’t being served. You don’t see people showing up at a murderer’s house with pitchforks or workers breaking down the doors of factory owners because we have laws that (roughly) enforce the outcomes the people want.
Angry mobs produce fantastic outcomes at identifying when the justice system’s outcomes fall outside of the norms they’re supposed to be enforcing but they’re terrible at functioning as judge and jury in individual cases.
Angry mobs are a signal of our justice system either having a gap or otherwise not working.
Lately, most angry mobs start on twitter/facebook, and often are based upon exaggerations or lies, and have the aide of twitter/facebook amplification effects, which purposefully try to fan anger to drive more engagement.
My threshold for whether a mob is legitimate is looting, I have no tolerance for your cause if your mob starts looting. Note however that police stations and capital buildings are a fair target.
So Twitter mobs are 100% legitimate as they have no opportunity to loot, but you make no allowance for mobs of mixed idealists and opportunists, or for attacking critical infrastructure? Fascinating.
If your twitter mob stays on twitter, that is free speech, stupid, but that is your right to be stupid. when your twitter mob starts to take action(swatting, doxing, physical attack) is when it starts to matter.
First note that mobs are ugly stupid irrational things in the first place.
Now ask your self. agree or disagree with the message, who is this mob attacking are they attacking their enemies? if so this is a legitimize mob, they have goals, objectives and are acting on them. you may be on the other side, they may be your enemy but the attacks are valid. leave the fight to them and the people they are attacking, or take a side.
however if the mob is targeting civilians, random people, causing willful destruction for the sake of destruction, that is, are they looting? This is an illegitimate mob, their message has no value, they have no right to exist and should be actively suppressed by all.
Not every dispute in our society involves the justice system. Far from it. Especially inside private companies.
But when it comes to police, the problem is even worse. The justice system there is charged with enforcing itself, and the conflict of interest is apparent.
Dealing with police brutality is no different than dealing with bullying or harassment at work - it usually involves some form of "internal affairs" or "human resources", whose primary job is to minimize damage to the company, not bring justice to the aggrieved party.
Angry mob doesn't work in case of bad cops(and many more) because it's not that angry and definitely not that big. And there is also a very happy mob that is happy about bad cops and think they work as intended. Because sacrificing few people from minority groups is a price they are wiling to pay for their safety.
Because upholding status quo is something people are willing other people to die for.
Any time you have power over the public (e.g., a cop), or present yourself as an expert in a way the affects the public (e.g., a medical doctor, civil engineer, politician) then by default you should be held to a much higher standard than the general public. There should be very little room for error or mistake and all errors/mistakes should be scrutinized for malpractice. The burden should be on the expert to prove they are qualified and should be allowed ("licensed") to hold the position.
If you can't handle that then find another profession.
In one of them, people who do bad things or even crimes, may be forbidden to do certain kinds of jobs, but the generally agreed-upon ethical framework says that discrimination is only permissible when the crime or malfeasance directly relates to job responsibilities.
For instance, it might be considered too risky to hire someone with a history of DWIs as a driver, or someone convicted of embezzlement to work in finance.
In that universe, there are even laws against discrimination that is unconnected to the offense.
That'd be a clever attempt at damage control, but in today's world the truth would probably would get leaked. Then the company would have to deal with the fallout from that.
I'd rather have the people who run companies grow a spine and stand up to the mob. They should put out a message like "We will investigate this incident. We take the decision to fire people seriously and will make a decision that is best for this company." In essence, "We hear all you loud-mouths, but we get to decide whether to fire people, not you."
> That'd be a clever attempt at damage control, but in today's world the truth would probably would get leaked. Then the company would have to deal with the fallout from that.
The mob is loud, but it has a short attention span. The truth probably would get leaked, but (depending on the issue) the mob would likely have moved on to the next thing by then.
> I'd rather have the people who run companies grow a spine and stand up to the mob. They should put out a message like "We will investigate this incident. We take the decision to fire people seriously and will make a decision that is best for this company."
That's probably an all around better response, too. Just "investigate" and give no updates until the controversy is old news.
I don't know, it's pretty on topic, isn't it? This is the problem other big companies, e.g. banks and oil companies etc who get caught with the hand in the cookie jar. There's clearly a line where the company _shouldn't_ get to perform its own investigation.
Maybe not for flipping some customers the bird, but I'm not sure whether or not it's legal cuts it either as a line. There are a lot of things you can do which are not illegal but which might warrant a mob.
Obviously, again, not for some intern prank.
I feel the police is the perfect example for when you don't want the "team" to decide if they did something wrong.
in today's world the truth would probably would get leaked
Today's world causes us to overestimate how much information is, or will become, public. Much is still confined to small groups. Only the people who worked with this intern would know the plan, other people at Microsoft could maybe check in version control to see who introduced the bug, but they'd have to be fairly obsessive to check if he got re-employed.
eh, the names of computer programmers don't really leak. We know a lot of programmers because of open source, but who was on the team that released each version of the Microsoft Office Suite...? If they have a blog sure, but otherwise, who knows.
When a random internet citizen directly approaches your company with the explicit request to fire a named employee, this by definition is insane.
The reporter is not interested in reporting a particular offense, instead they are already playing the executioner. They do not want a solution, they want punishment and retaliation. That behavior is both arrogant (not their call to make) and sadistic.
The reporter is not interested in what is best for your company either, as the "request" typically comes with threats. Comply or else...
The very nature of such requests means the reporter is the type of person to dig up personal information or old "offensive" posts, which is unhinged behavior. Likewise, the reporter was unable to come to a resolution with the "offender", so plays the snitch card instead.
It's a pile of red flags. Normal and reasonable people do not go after a person's job, even less so collectively. I wouldn't do that to my biggest enemy. That doesn't mean employees can't screw up, perceived or real. When they do, mob justice does not satisfy the very basic principles of justice. There's no defense, and without defense, there is no justice.
Most companies can safely ignore such requests. The mob has no patience nor are they typically a customer in the first place, so all economical threats are in vain. It's largely a temporary PR threat that is emotionally inflated versus the actual PR impact: close to zero.
Of course, I know, there's exceptions to all of the above.
I'd say it would be a good thing if there's legislation that protects against mob-triggered terminations. The reason I would opt for that is that mob justice goes beyond just the termination of a few. It has a larger societal impact in the sense that those few are to be seen as examples for other people to increasingly feel like they need to walk on egg shells: extreme political correctness, large silent majority, you get what I mean.
> I'd say it would be a good thing if there's legislation that protects against mob-triggered terminations.
You could also say freedom of speech has limits, like shouting "fire" in a crowded theater. If someone starts a mob, knowingly or unknowingly, encourages a mob, or information thereof is found to be incorrect it would make sense if there were consequences.
Doxxing is a very interesting phenomenon. Sometimes it's in the interest of the public (someone who might document mr Epstein, for example), but it's not when someone on a plane, hears someone a seat up say something that upsets them and then they document that person in an act of unilateral vengeance for a real or perceived anonymous transgression. ("I heard this woman say Squaw Valley, I'm sure she knows it was changed and did it with the intention of offending the some members of some tribes that feel offended by the term and I found out this is her, she is the CFO at such and such")
I think making laws to stop a mob from forming would be very hard, complex, and have lots of hairy side effects. My idea instead is to look at it from an employer's side: one should not be able to fire somebody on the spot for fuzzy PR reasons. So the mob can still form, but the ultimate consequence, a termination, in most cases would be impossible.
As to stopping mobs from forming or doing their damage, I strongly believe social networks can do quite a lot too.
In most modern cases (social media triggered requests) the offense is unrelated to the person's employment. Going for one's employment is just the way to do maximum damage as it's almost everyone's weakness. That's insane, cruel and disproportional behavior.
In case the employee did show misbehavior in their official function to somebody in the public, you'd file a complaint at the company. As the company did you wrong. It's then up to the company to correct it. By demanding a termination, you skip about 5 steps in that process.
In case the employee did something truly criminal, you report it to the police. This too is no reason to go for someone's employment. You're not the justice system.
Apparently, this used to be a thing in department stores. If someone complained, the manager would make a deal out of “firing” the scapegoat employee and the customer would be happy.
This is a problem SaaS can solve, scapegoat as a service.
When needed, get a professional scapegoat to fire, less chance to see him again. And you can get the performance you want. Do you want an asshole who deserves it, or maybe you prefer a clueless bootlicker.
Of course, bosses will also be available to do the firing if you can't supply your own.
And while I am imagining things, I am sure that something like that exists in some form.
This is sounding like a Frankenstein's Monster built from a performance art troup and a reputation management company, maybe with a sprinkling of a staffing agency. It...sounds like something that might even have a proper niche if someone wanted to pursue it.
Sound like I should finally do something useful with my scapegoat-consulting.com domain I purchased years ago. I intended to put up a prank site offering basically just that :)
I had that happen at a car dealer. I complained when a salesman told me I owed him an apology for not believing his numbers (this was after I’d caught him lying). The general manager told me they had fired him over it. The next time I was in the dealer, probably six months later, the same salesman came over and started to chat me up. He obviously remembered me but not why he did. I just laughed, I wasn’t surprised in the least. I’d only complained in the first place so I could get a different sales person.
OT but my favorite car dealer story was when I was in for routine maintenance. Some salesman was going around the service area talking to people trying to drum up interest.
So he came to talk to me. Asked if I had looked at the new cars and told me how reliable they were, and I should consider one.
So I asked (not loudly but not quiet conversation volume), “Is my new $model I bought from $this_manufacturer last year not reliable?”
Boy did he backpedal and move on to find something else to do real quick.
What kind of psycho feels satisfied when someone loses their job. Unless the offense was like… spitting in my food or something actually dangerous I would feel bad if my complaint about general negligence or attitude resulted in someone losing their job.
I feel the same way. However, some people are more "eye for an eye" types and nothing makes them feel better than seeing someone punished that "wrongs" them.
There are more than a few people that fetishize punitive actions for evil doers.
I totally agree (with your conclusion), and I even go out of my way to give higher praise than deserved to workers to help shield them from it. Unfortunately, it’s not (always) customers’ fault that this is how it works. Increasingly, it’s not even knowable by customers that they may contribute to someone’s firing (or even be the only input!).
A single mediocre review could end a job, depending on how it’s weighted. A few bad reviews almost guarantees it. Even if the customer has no idea their review is applied to that particular worker—i.e. if they think they’re reviewing the business.
Knowing all this has also just generally helped me to be more patient with people when I’m on the other side of the “counter”. But a lot of people (a) don’t know it and (b) don’t have any other recourse.
A specific example so I don’t sound like I’m just abstracting the whole thing: if I order a meal on Grubhub, when I get asked for a review I get very specific questions about the delivery driver, vague questions about food quality from the vendor, and no prompt about Grubhub’s service itself. When I’ve had poor service (always from Grubhub or a direct consequence of their poor service), there isn’t even a way to give feedback that goes beyond the CS front line. Those poor souls are tasked with issuing refunds as rapidly as possible and moving on to the next chat. The best anyone can do to even register a complaint that might be heard is to call out a driver or restaurant, even if neither did anything wrong.
Customers don’t know they’ll probably get someone fired by taking this tack, they just know it’s the only way to be heard. And that’s not because they’re cruel, it’s because they’re horribly alienated from the thousands of tiny paper cuts they understand as conveniences, and some days their only options.
In fact it can be used as a pressure strategy to customers that do have empathy. Those might complain a bit less loud when you let them know you might have to fire someone.
My wife used to work for a mom and pop shop in New York. Had about 50 employees, and most of the work was talking to customers and contractors in the phone all over the US. One day a customer threw a fit about my wife. The manager assured the customer she would be fired, and that was that. Manager turns to my wife and says “your name is Rachel now”. So that’s how she’d answer the phone from then on.
I think viral PR backlash would scare people away from this in anything but the most benign situations. That, and I’m sure HR would take issue with it (both for legal implications, and meta reasons).
There was a police shooting where the officer that did the shooting was fired, then secretly rehired 2 years later, then retired 42 days later with a pension. The public only found out a year after that.
Ah man, I saw the bodycam footage from that incident. That scarred me, it's NSFL.
I've previously seen many bodycams which to me changed the view on what american LEO (can) meet on a daily basis, and the zero-time switch from a completely docile event to a deadly encounter. This made me change how I look on us leo's often hardball and pseudo-militarian approach to such encounters, because there are so many weapons in everyday society and people willing to use them against leo's.
This Shaver encounter is not one of those. There were multiple rifles pointed at him, who was alone, drunk and terrified. You could clearly hear it from his voice, and he was completely compliant to the best of his abilities.
The officer in charge was going all-in Rambo on him and did nothing to calm the situation. All his commands was balls-to-the-walls aggressive and multiple threats to Shavers life. The commands was confusing, even to me all sober behind a screen, and to drunk Shaver they must've been greek. He was in panic.
Imo the officer giving commands, and the officer shooting, should both be considered guilty of manslaughter. They should not be allowed with guns, much less leo's.
The joke is a reference to the index finger cursor. It doesn't really work unless you're using the middle finger in place of a index-finger-pointing-up gesture.
This title is really misleading, they weren't fired at all, maybe they were almost fired. And it was before they started as a full time employee, but it was for something they did while working as an intern.
I'm surprised they hired him after that. If it was a big enough deal that they had to make a statement saying he was no longer with the company, why would they hire him after that?
To some degree this was a system or process failure. The build should have never become a beta build that gets send to the public. Many years ago I worked on an Android game where on April 1st one of the other devs swapped the game's theme for Never Gonna Give You Up as a similar prank directed at the QA team. If we had shipped this more widely, it would have been a larger organizational failure, similar to this case.
There's an infamous case from Adobe where an engineer added an unauthorized easter egg that caused a runtime problem and was fired for it. The firing spurred widespread shock among the employees, and management quickly rescinded his termination. He quit shortly afterward. The takeaways here are that a rash firing for this sort of thing isn't always the best course of action, and that being fired-then-unfired leaves a bad taste in an employee's mouth. Oh, and test your easter eggs.
"Recently, I was asked if I was going to fire an employee who made a mistake that cost the company $600,000. No, I replied, I just spent $600,000 training him. Why would I want somebody to hire his experience?"
It's more like the PR / social interaction version of this.
That's an example of the sunk cost fallacy. If a business makes a $600k investment sometimes it's better to just cut their losses instead of trying to continue with something they have already invested time and money into.
That's not a sunk cost fallacy. A sunk cost fallacy depends on expected future cost still being higher than future benefit.
In that anecdote, the implication is that the employee gained insight or learned from that mistake. In fact, firing them might not be justified from a business perspective, because you're firing somebody even though they are less likely to make such a mistake in the future. It's not really logical to fire somebody for a mistake unless it's reasonable to assume it indicates ongoing liability. You have to decide and plan for the present and future, not the past.
>A sunk cost fallacy depends on expected future cost still being higher than future benefit.
And that manifests as keeping the employee as opposed to replacing him with a more experienced person who already knows how to not make expensive mistakes.
In the context of SWE, specifically with a blameless culture, these expensive mistakes aren't training for people, but training for the business as new checks and protocol get established to reduce the change of the same thing happening again. Someone making an expensive mistake is independent to whether they get to stick around. In the example this expensive training is a reason to keep the guy around.
Blaming an individual for systemic failures is bad form (even for Microsoft). If you read the post, you'd see the QA org saw that Easter Egg, took it in the right spirit (like they should), and signed it okay for beta release (mistakenly, I'd presume) followed by everyone else in the bureaucratic chain that might have okay'd it as well.
As with most system failures, there is no (one) "root cause":
The intern developer should not have committed the middle finger cursor.
A code reviewer should not have approved the code change. If there was no code review (and there probably wasn't during the Windows 3.1 era), especially of an intern's code, then that's another problem with the system.
QA should not have approved the beta build with a bug that could impact the company's reputation.
A bug report was filed, but whoever triaged the bug report didn't escalate the issue before the beta release.
Finally, the engineering manager probably should not have rehired the intern as a full-time employee.
This was not root cause. This is analysis of contributing factors.
Root cause of middle finger cursor is individual who made middle finger cursor. That review could have caught it does not make the above less of actual root cause.
No, that's backwards. Sloppy qa was the root cause of this getting to the beta testers, the fact that it was a prank rather than a mistake is irrelevant. Microsoft was lucky their sloppy qa was reveled by something so innocuous instead of by a genuinely harmful commit.
>>If you read the post, you'd see the QA org saw that Easter Egg, took it in the right spirit (like they should), and signed it okay for beta release (mistakenly, I'd presume) followed by everyone else in the bureaucratic chain that might have okay'd it as well.<<
As mentioned above, there were a string of failures. Don't just blame QA for finding the bugs that don't get fixed. If it gets signed off, it gets signed off, there are a bunch of departments that can look at the bug database as well. And, in the end, 9/10 of the people who found this people probably loved the fact that Microsoft finally showed a little bit of soul.
Sloppy QA does not causes pranks and bugs. And given that this is forum for developers, developers dont get to blame QA for pranks originating in development. Seriously.
Why should I not hire a person that does pranks (as a general rule)?
For a creative job, like an engineering job, I want creative, humorous, witty, and interesting people. Someone who does funny pranks at the right time gets a pro-hiring indication mark from me.
And another argument for the prankster is that we need fun to stay sane in the gray industrial business world.
I wouldn't necessarily fire an intern for not knowing it, but they should have been more closely watched by someone with more wisdom. Anyone who's been around the block a few times knows it's not a good idea to put potentially offensive or unprofessional things into the product, including in test environments, code comments, or other things that aren't supposed to ever make it out of the company. There's a lot more ways for that sort of thing to end up in front of a customer than you could ever predict, and it's not worth the reputation hit to the company.
I would agree that they should still re-hire him. This poor fellow probably learned the lesson that there's a time and place to joke around plenty well enough now.
> If there was no code review (and there probably wasn't during the Windows 3.1 era)
Just recently an ex MS employee talked about this topic on YouTube in the context of possible backdoors [0]. Some developers were each responsible for a component of the system and would indeed check code changes, which led to an intern not getting a job at MS after he decided to integrate an easter egg.
> Blaming an individual for systemic failures is bad form
I agree if the failure is actually a mistake. The developer in this scenario included the gesture on purpose. Pretty clearly shows they don't have the best judgement imo.
I'm a bit torn. Yea, it's harmless, but making your OS flip people off isn't really funny. I just feel like it would be hard to trust this programmers judgement if they thought this was an appropriate joke to make.
It's not great, but I think the real question is twofold. Is the programmer far enough in their career to have been expected to already learn this lesson and did the programmer in fact learn the lesson.
If they're young and they never do it again, then I think it would be fine to keep the hire. If they keep on doing it, then it's time to go. If they're 25 years into their career, then they should almost definitely have known better.
I expect a new hire to understand that they can't put all their initiatives into the product, certainly not a joke, unless they're explicitly told otherwise. I'd expect a new hire to understand there is a natural pace for everything to grow -- as in all relationships -- so they can't go all out on day 1.
On the other hand, I'd want a senior engineer to use their initiative a lot more often. They would also understand that their job is to contribute confidently to the best of their ability.
Depends what we mean when we say harmless - It’s not harmless to brand image, consumer trust and ultimately sales if those drop.
Intentionally hiding offensive things in the code does show poor judgement to me. If it was a sad face, fair enough, and if it triggers based on an intentional set of actions by the user as an Easter egg that’s another thing, but using a swear symbol in an error check and committing that to the codebase? Pretty poor judgement imo
It doesn’t say QA approved it before it went to beta testers. Just that it went to beta testers. That may well have happened before it completed thorough QA (though it probably went through a quick sanity check).
And yet they _did_ blame the individual, by saying "the individual responsible for this regrettable act is no longer with the company." This is why I'm surprised they hired him.
My surprise that they hired him has nothing to do with whether or not _I_ think they should have hired him. It has everything to do with the fact that they publicly blamed the individual, and that it was Microsoft. I would expect their hiring decision to be informed by whatever corporate higher-ups caused them to publicly blame the individual.
He probably learned a big lesson after that mistake. So if he was a good developer, why not hire him? The chance of him doing the same mistake is probably very tiny.
I can imagine that a junior is not able to assess the risk and consequences involved.
Reminds me of a story from "I Sing The Body Electronic" by Fred Moody where a programmer leaves a playful entry titled "Slayer Sucks Live A Vacuum" in an almost-relase-version of Microsoft Encarta.
Fortunately, the good people at Microsoft knew that Slayer definitely do not suck, but it was too late to remove the entry, so they had to kind of hide it.
Beware of tests and their data. Long ago the consultancy I worked in took on a tobacco company as a client, which a lot of people didn't like. One of the copy writers testing the CMS used text from an anti-tobacco campaign that was very critical of the client. The content accidently got deployed. Not a happy client!
One particular point being the “we” style of communication (https://docs.microsoft.com/en-us/windows/apps/design/style/w...). It only occurs to me now that Microsoft apparently intends “we” to include the user, while in reality it comes across as “we the people behind this software”.
How is that “welcoming and helps the user feel like part of the experience”? It introduces a “you vs. us” dichotomy, with a touch of “we are are a group and you’re just one person”, and more often than not also “we know better what’s good for you”. Since the app is obviously not a “we”, it also suggests that it’s people doing stuff to your device and your data (“we’re setting up some things for you”), which feels intrusive. The user doesn’t want “them” to meddle with his/her stuff, they want a neutral tool that just works and does what it’s told to do.
My feelings exactly. Plus, in some languages "We" can be used in place of "I" by royals (and other people with a high opinion of themselves) - as in the famous "We are not amused" |1]. That's true in my native language too.
Well, perhaps we are not the target audience; I suppose MS and others made UX studies before adopting that style. "We, the computer nerds" have maybe a better idea of what's going on under the hood, so those "user illusion" [2] tricks don't work on us.
I was reading the new Apple app UI guidelines, and under the section about "inclusive language" it basically said "You are not to make jokes. You must speak as if to an idiot. You must write like a PR release.". Horrible stuff. Absolutely not utilitarian to make all software products bland corporate pablum in the name of not offending people.
Google is your friend! "Apple inclusive language guidelines", first result.
Specific quotes:
> Avoid using specialized or technical terms without defining them. Using specialized or technical terms can make your writing more succinct, but doing so excludes people who don’t know what the terms mean.
> Replace colloquial expressions with plain language.
> Consider carefully before including humor. ... Including humor in your app risks confusing people who donʼt understand it, irritating people who tire of repeatedly encountering it, and insulting people who interpret it differently.
This actually seems like solid advice for communicating, generally -- I don't get the feeling that this is overly-sensitive to not offending people.
> Avoid using specialized or technical terms without defining them.
I try to do this even when speaking to technical individuals. It may make things more verbose but I appreciate it when others simplify as much as possible.
> Including humor [risks confusing, irritating or insulting people]
I have definitely seen jokes by myself or others completely fall flat, get misinterpreted or derail conversations.
I could see how the Human Interface Guidelines[1] do feel a bit overboard in trying to be politically correct when you realize these are just suggestions for creating apps. But if app developers used most of the advice more frequently I feel like apps generally would be higher quality. Like, why not try to keep things simple and language as kind as possible?
>> Avoid using specialized or technical terms without defining them.
>I try to do this even when speaking to technical individuals. It may make things more verbose but I appreciate it when others simplify as much as possible.
It's immensely helpful to do this, especially in technical settings. The problem is that a lot of engineers won't ask out of shame of not knowing the jargon.
By using plain language they don't need to be embarrassed and your communication is much more effective.
> If and only if your job is to write tedious corporate pablum
I disagree.
Some background: I am a cloud security engineer (been in a senior security role for approximately six years). In my experience in the security field I have found that the best security engineers specialize in one or a few specific topics (e.g. systems administration, networking, reverse engineering, etc.) and are really valuable at those few things and then have a broad enough understanding of other security concepts that they can be generally useful in other topics they do not specialize in. Some of the most interesting presentations, documentation and conversations I have encountered has been when someone covers a topic I think I know well and breaks it down to such a fundamental level that "an idiot" could understand it. Typically, the intended audience for security content like this are highly technical individuals. Those who can "dumb down" a highly technical concept to any technical skill level are usually experts about that topic in my experience.
But perhaps for genius-level individuals (a group to which I do not belong), maybe it is not useful to break things down. But for me, I know I find it useful when people don't make any assumptions about my knowledge.
This is literally what they’re talking about avoiding. Not surprised at your reaction. And not surprised that the advice they offer is generally quite good.
Somewhere along the way between two companies who were bad at everything we were given access to our customers intranet to use some tools.
An internal website that announced new policies once announced that a product now had a 2 year warranty, not 3. Including products already sold.
Tech support (me) agents were allowed to ask questions via a comment section. So I asked “Is that legal?”
The CEO (a childish man child) saw this and was horrified to find out someone dared ask… and that person was from some outside contractor.
One thing lead to another and I was told I was fired for hacking their intranet (CEO didn’t now we had lawful access), but I should still come in the next day anyway. Supposedly the CEOs of both companies were told I was fired (so I was told to keep a low profile ).
The next day my login was changed to a new name ;). I was a nobody support drone so it wasn’t like anyone would notice.
And yes it was illegal, lawsuits and much expense was wasted on a dumb policy.
CEO of our company did jail for unrelated actions. Man child CEO, I don’t know what happened to him, but he was creepy and supposedly had ties to Epstein.
The prank cursor, switched the index finger pointer to use the middle finger:
Which makes the end of the post hilarious:
> Bonus chatter: A bug was filed in the RAID database to track the problem and its resolution. In the bug, there was some discussion as to how the issue should be classified. Was it an “off-by-one” error? Or maybe it was a “bad pointer”.
Also a lot of people commenting negatively on the whole thing may not even have been born then; Windows 3.1 was released in 1992. Those were still quite early days in the history of computing.
At my job in the '80s and '90s we were on a program that got us the source code for Windows. In the Windows 3.0 C code there was a label, and corresponding goto statement, "goto wearefucked;". When we got in the 3.1 code I immediately went to the same spot in the code, but they had changed it. Cowards.
On a sidenote, it's pretty amazing that a blog like this is allowed to live on the microsoft.com domain - anyone with experience in mega-enterprises will know how hard it is to do anything remotely reputationally risky and out of the ordinary.
150 comments
[ 3.4 ms ] story [ 217 ms ] threadTechnically correct. The best kind of correct.
They hired him a couple of weeks later.
Says that in the article.
It makes me wonder how many 'no longer with the company' replies to mobs are similarly a technicality. Like, giving an employee unpaid leave until the mob dies down.
All the time. But, usually, that's not a laughable or desirable outcome. This is how bad cops who commit civil liberty violations or use excessive force continue to work for decades, or are eventually sidelined but continue to receive a salary.
While in this specific case we can excuse an intern who definitely didn't know better, and ultimately nobody was harmed, we shouldn't minimize or normalize administrative technicalities as a way to get away from outrage.
Angry mobs don't produce good outcomes. That's true even when they're angry about bad cops.
Angry mobs produce fantastic outcomes at identifying when the justice system’s outcomes fall outside of the norms they’re supposed to be enforcing but they’re terrible at functioning as judge and jury in individual cases.
Lately, most angry mobs start on twitter/facebook, and often are based upon exaggerations or lies, and have the aide of twitter/facebook amplification effects, which purposefully try to fan anger to drive more engagement.
Or...radicalized always-online bullies that simply takes joy in taking a political opponent down.
First note that mobs are ugly stupid irrational things in the first place.
Now ask your self. agree or disagree with the message, who is this mob attacking are they attacking their enemies? if so this is a legitimize mob, they have goals, objectives and are acting on them. you may be on the other side, they may be your enemy but the attacks are valid. leave the fight to them and the people they are attacking, or take a side.
however if the mob is targeting civilians, random people, causing willful destruction for the sake of destruction, that is, are they looting? This is an illegitimate mob, their message has no value, they have no right to exist and should be actively suppressed by all.
But when it comes to police, the problem is even worse. The justice system there is charged with enforcing itself, and the conflict of interest is apparent.
Dealing with police brutality is no different than dealing with bullying or harassment at work - it usually involves some form of "internal affairs" or "human resources", whose primary job is to minimize damage to the company, not bring justice to the aggrieved party.
Because upholding status quo is something people are willing other people to die for.
Any time you have power over the public (e.g., a cop), or present yourself as an expert in a way the affects the public (e.g., a medical doctor, civil engineer, politician) then by default you should be held to a much higher standard than the general public. There should be very little room for error or mistake and all errors/mistakes should be scrutinized for malpractice. The burden should be on the expert to prove they are qualified and should be allowed ("licensed") to hold the position.
If you can't handle that then find another profession.
In one of them, people who do bad things or even crimes, may be forbidden to do certain kinds of jobs, but the generally agreed-upon ethical framework says that discrimination is only permissible when the crime or malfeasance directly relates to job responsibilities.
For instance, it might be considered too risky to hire someone with a history of DWIs as a driver, or someone convicted of embezzlement to work in finance.
In that universe, there are even laws against discrimination that is unconnected to the offense.
I'd rather have the people who run companies grow a spine and stand up to the mob. They should put out a message like "We will investigate this incident. We take the decision to fire people seriously and will make a decision that is best for this company." In essence, "We hear all you loud-mouths, but we get to decide whether to fire people, not you."
The mob is loud, but it has a short attention span. The truth probably would get leaked, but (depending on the issue) the mob would likely have moved on to the next thing by then.
> I'd rather have the people who run companies grow a spine and stand up to the mob. They should put out a message like "We will investigate this incident. We take the decision to fire people seriously and will make a decision that is best for this company."
That's probably an all around better response, too. Just "investigate" and give no updates until the controversy is old news.
I feel the police is the perfect example for when you don't want the "team" to decide if they did something wrong.
The reporter is not interested in reporting a particular offense, instead they are already playing the executioner. They do not want a solution, they want punishment and retaliation. That behavior is both arrogant (not their call to make) and sadistic.
The reporter is not interested in what is best for your company either, as the "request" typically comes with threats. Comply or else...
The very nature of such requests means the reporter is the type of person to dig up personal information or old "offensive" posts, which is unhinged behavior. Likewise, the reporter was unable to come to a resolution with the "offender", so plays the snitch card instead.
It's a pile of red flags. Normal and reasonable people do not go after a person's job, even less so collectively. I wouldn't do that to my biggest enemy. That doesn't mean employees can't screw up, perceived or real. When they do, mob justice does not satisfy the very basic principles of justice. There's no defense, and without defense, there is no justice.
Most companies can safely ignore such requests. The mob has no patience nor are they typically a customer in the first place, so all economical threats are in vain. It's largely a temporary PR threat that is emotionally inflated versus the actual PR impact: close to zero.
Of course, I know, there's exceptions to all of the above.
I'd say it would be a good thing if there's legislation that protects against mob-triggered terminations. The reason I would opt for that is that mob justice goes beyond just the termination of a few. It has a larger societal impact in the sense that those few are to be seen as examples for other people to increasingly feel like they need to walk on egg shells: extreme political correctness, large silent majority, you get what I mean.
You could also say freedom of speech has limits, like shouting "fire" in a crowded theater. If someone starts a mob, knowingly or unknowingly, encourages a mob, or information thereof is found to be incorrect it would make sense if there were consequences.
... was an analogy in a Supreme Court case from more than a hundred years ago, that was overturned nearly 50 years ago. Good reading: https://www.theatlantic.com/national/archive/2012/11/its-tim...
I think making laws to stop a mob from forming would be very hard, complex, and have lots of hairy side effects. My idea instead is to look at it from an employer's side: one should not be able to fire somebody on the spot for fuzzy PR reasons. So the mob can still form, but the ultimate consequence, a termination, in most cases would be impossible.
As to stopping mobs from forming or doing their damage, I strongly believe social networks can do quite a lot too.
This is literally not by definition insane. There are plenty of valid reasons to request an employee be fired.
What would be insane is immediately taking the opposite extreme to a perceived extremity.
In most modern cases (social media triggered requests) the offense is unrelated to the person's employment. Going for one's employment is just the way to do maximum damage as it's almost everyone's weakness. That's insane, cruel and disproportional behavior.
In case the employee did show misbehavior in their official function to somebody in the public, you'd file a complaint at the company. As the company did you wrong. It's then up to the company to correct it. By demanding a termination, you skip about 5 steps in that process.
In case the employee did something truly criminal, you report it to the police. This too is no reason to go for someone's employment. You're not the justice system.
When needed, get a professional scapegoat to fire, less chance to see him again. And you can get the performance you want. Do you want an asshole who deserves it, or maybe you prefer a clueless bootlicker.
Of course, bosses will also be available to do the firing if you can't supply your own.
And while I am imagining things, I am sure that something like that exists in some form.
I look forward to the Launch HN.
So he came to talk to me. Asked if I had looked at the new cars and told me how reliable they were, and I should consider one.
So I asked (not loudly but not quiet conversation volume), “Is my new $model I bought from $this_manufacturer last year not reliable?”
Boy did he backpedal and move on to find something else to do real quick.
I found it hilarious.
[1] https://www.complete-review.com/reviews/pennacd/scapeg.htm
There are more than a few people that fetishize punitive actions for evil doers.
A single mediocre review could end a job, depending on how it’s weighted. A few bad reviews almost guarantees it. Even if the customer has no idea their review is applied to that particular worker—i.e. if they think they’re reviewing the business.
Knowing all this has also just generally helped me to be more patient with people when I’m on the other side of the “counter”. But a lot of people (a) don’t know it and (b) don’t have any other recourse.
A specific example so I don’t sound like I’m just abstracting the whole thing: if I order a meal on Grubhub, when I get asked for a review I get very specific questions about the delivery driver, vague questions about food quality from the vendor, and no prompt about Grubhub’s service itself. When I’ve had poor service (always from Grubhub or a direct consequence of their poor service), there isn’t even a way to give feedback that goes beyond the CS front line. Those poor souls are tasked with issuing refunds as rapidly as possible and moving on to the next chat. The best anyone can do to even register a complaint that might be heard is to call out a driver or restaurant, even if neither did anything wrong.
Customers don’t know they’ll probably get someone fired by taking this tack, they just know it’s the only way to be heard. And that’s not because they’re cruel, it’s because they’re horribly alienated from the thousands of tiny paper cuts they understand as conveniences, and some days their only options.
Most of the Twitter mob types calling people out for whatever
https://en.wikipedia.org/wiki/Shooting_of_Daniel_Shaver#Bank...
I've previously seen many bodycams which to me changed the view on what american LEO (can) meet on a daily basis, and the zero-time switch from a completely docile event to a deadly encounter. This made me change how I look on us leo's often hardball and pseudo-militarian approach to such encounters, because there are so many weapons in everyday society and people willing to use them against leo's.
This Shaver encounter is not one of those. There were multiple rifles pointed at him, who was alone, drunk and terrified. You could clearly hear it from his voice, and he was completely compliant to the best of his abilities.
The officer in charge was going all-in Rambo on him and did nothing to calm the situation. All his commands was balls-to-the-walls aggressive and multiple threats to Shavers life. The commands was confusing, even to me all sober behind a screen, and to drunk Shaver they must've been greek. He was in panic.
Imo the officer giving commands, and the officer shooting, should both be considered guilty of manslaughter. They should not be allowed with guns, much less leo's.
It could even become a hilarious t-shirt. Maybe I should look for relevant vector graphics and start designing.
This exact gesture is used by umpires in Cricket to signal a batsman out.
The entire point of the story is to be misleading at first and produce some mild humor.
It's more like the PR / social interaction version of this.
In that anecdote, the implication is that the employee gained insight or learned from that mistake. In fact, firing them might not be justified from a business perspective, because you're firing somebody even though they are less likely to make such a mistake in the future. It's not really logical to fire somebody for a mistake unless it's reasonable to assume it indicates ongoing liability. You have to decide and plan for the present and future, not the past.
And that manifests as keeping the employee as opposed to replacing him with a more experienced person who already knows how to not make expensive mistakes.
In the context of SWE, specifically with a blameless culture, these expensive mistakes aren't training for people, but training for the business as new checks and protocol get established to reduce the change of the same thing happening again. Someone making an expensive mistake is independent to whether they get to stick around. In the example this expensive training is a reason to keep the guy around.
The intern developer should not have committed the middle finger cursor.
A code reviewer should not have approved the code change. If there was no code review (and there probably wasn't during the Windows 3.1 era), especially of an intern's code, then that's another problem with the system.
QA should not have approved the beta build with a bug that could impact the company's reputation.
A bug report was filed, but whoever triaged the bug report didn't escalate the issue before the beta release.
Finally, the engineering manager probably should not have rehired the intern as a full-time employee.
Root cause of middle finger cursor is individual who made middle finger cursor. That review could have caught it does not make the above less of actual root cause.
As mentioned above, there were a string of failures. Don't just blame QA for finding the bugs that don't get fixed. If it gets signed off, it gets signed off, there are a bunch of departments that can look at the bug database as well. And, in the end, 9/10 of the people who found this people probably loved the fact that Microsoft finally showed a little bit of soul.
In your org there is no room for mistakes, like humans will routinely make; sounds like hell.
Why should I not hire a person that does pranks (as a general rule)?
For a creative job, like an engineering job, I want creative, humorous, witty, and interesting people. Someone who does funny pranks at the right time gets a pro-hiring indication mark from me.
And another argument for the prankster is that we need fun to stay sane in the gray industrial business world.
> should not have approved the code change
Disagree.
> impact the company's reputation
In a bad way?
> A bug report was filed, but whoever triaged the bug report didn't escalate the issue before the beta release.
Yeah probably a problem.
> Finally, the engineering manager probably should not have rehired the intern as a full-time employee.
Jesus, learn to handle a joke.
I would agree that they should still re-hire him. This poor fellow probably learned the lesson that there's a time and place to joke around plenty well enough now.
Just recently an ex MS employee talked about this topic on YouTube in the context of possible backdoors [0]. Some developers were each responsible for a component of the system and would indeed check code changes, which led to an intern not getting a job at MS after he decided to integrate an easter egg.
[0] https://youtu.be/CR7i1UfBtQM?t=10
> Finally, the engineering manager probably should not have rehired the intern as a full-time employee.
Slap on the wrist? Sure. Fix the qa and bug triage process? Be my guest. Fire the intern? A bit extreme for my taste.
I agree if the failure is actually a mistake. The developer in this scenario included the gesture on purpose. Pretty clearly shows they don't have the best judgement imo.
If they're young and they never do it again, then I think it would be fine to keep the hire. If they keep on doing it, then it's time to go. If they're 25 years into their career, then they should almost definitely have known better.
I expect a new hire to understand that they can't put all their initiatives into the product, certainly not a joke, unless they're explicitly told otherwise. I'd expect a new hire to understand there is a natural pace for everything to grow -- as in all relationships -- so they can't go all out on day 1.
On the other hand, I'd want a senior engineer to use their initiative a lot more often. They would also understand that their job is to contribute confidently to the best of their ability.
Oh noes the middle finger, there goes the neighborhood...
Intentionally hiding offensive things in the code does show poor judgement to me. If it was a sad face, fair enough, and if it triggers based on an intentional set of actions by the user as an Easter egg that’s another thing, but using a swear symbol in an error check and committing that to the codebase? Pretty poor judgement imo
My surprise that they hired him has nothing to do with whether or not _I_ think they should have hired him. It has everything to do with the fact that they publicly blamed the individual, and that it was Microsoft. I would expect their hiring decision to be informed by whatever corporate higher-ups caused them to publicly blame the individual.
I can imagine that a junior is not able to assess the risk and consequences involved.
Fortunately, the good people at Microsoft knew that Slayer definitely do not suck, but it was too late to remove the entry, so they had to kind of hide it.
> Always address the user as "you." > > Use "we" to refer to your own perspective. It's welcoming and helps the user feel like part of the experience.
Sounds to me like "you" = user, "we" = the app.
Well, perhaps we are not the target audience; I suppose MS and others made UX studies before adopting that style. "We, the computer nerds" have maybe a better idea of what's going on under the hood, so those "user illusion" [2] tricks don't work on us.
[1] https://www.phrases.org.uk/meanings/we-are-not-amused.html
[2] https://en.wikipedia.org/wiki/User_illusion [3]
[3] https://asktog.com/papers/magic.html
Specific quotes:
> Avoid using specialized or technical terms without defining them. Using specialized or technical terms can make your writing more succinct, but doing so excludes people who don’t know what the terms mean.
> Replace colloquial expressions with plain language.
> Consider carefully before including humor. ... Including humor in your app risks confusing people who donʼt understand it, irritating people who tire of repeatedly encountering it, and insulting people who interpret it differently.
> Avoid using specialized or technical terms without defining them.
I try to do this even when speaking to technical individuals. It may make things more verbose but I appreciate it when others simplify as much as possible.
> Including humor [risks confusing, irritating or insulting people]
I have definitely seen jokes by myself or others completely fall flat, get misinterpreted or derail conversations.
I could see how the Human Interface Guidelines[1] do feel a bit overboard in trying to be politically correct when you realize these are just suggestions for creating apps. But if app developers used most of the advice more frequently I feel like apps generally would be higher quality. Like, why not try to keep things simple and language as kind as possible?
[1] https://developer.apple.com/design/human-interface-guideline...
>I try to do this even when speaking to technical individuals. It may make things more verbose but I appreciate it when others simplify as much as possible.
It's immensely helpful to do this, especially in technical settings. The problem is that a lot of engineers won't ask out of shame of not knowing the jargon.
By using plain language they don't need to be embarrassed and your communication is much more effective.
If and only if your job is to write tedious corporate pablum.
I disagree.
Some background: I am a cloud security engineer (been in a senior security role for approximately six years). In my experience in the security field I have found that the best security engineers specialize in one or a few specific topics (e.g. systems administration, networking, reverse engineering, etc.) and are really valuable at those few things and then have a broad enough understanding of other security concepts that they can be generally useful in other topics they do not specialize in. Some of the most interesting presentations, documentation and conversations I have encountered has been when someone covers a topic I think I know well and breaks it down to such a fundamental level that "an idiot" could understand it. Typically, the intended audience for security content like this are highly technical individuals. Those who can "dumb down" a highly technical concept to any technical skill level are usually experts about that topic in my experience.
But perhaps for genius-level individuals (a group to which I do not belong), maybe it is not useful to break things down. But for me, I know I find it useful when people don't make any assumptions about my knowledge.
> Right-wing snowflake is offended that they can't write sloppy shit instead.
Truly this looks like a parody of American mass politics.
This is literally what they’re talking about avoiding. Not surprised at your reaction. And not surprised that the advice they offer is generally quite good.
Somewhere along the way between two companies who were bad at everything we were given access to our customers intranet to use some tools.
An internal website that announced new policies once announced that a product now had a 2 year warranty, not 3. Including products already sold.
Tech support (me) agents were allowed to ask questions via a comment section. So I asked “Is that legal?”
The CEO (a childish man child) saw this and was horrified to find out someone dared ask… and that person was from some outside contractor.
One thing lead to another and I was told I was fired for hacking their intranet (CEO didn’t now we had lawful access), but I should still come in the next day anyway. Supposedly the CEOs of both companies were told I was fired (so I was told to keep a low profile ).
The next day my login was changed to a new name ;). I was a nobody support drone so it wasn’t like anyone would notice.
And yes it was illegal, lawsuits and much expense was wasted on a dumb policy.
CEO of our company did jail for unrelated actions. Man child CEO, I don’t know what happened to him, but he was creepy and supposedly had ties to Epstein.
Which makes the end of the post hilarious:
> Bonus chatter: A bug was filed in the RAID database to track the problem and its resolution. In the bug, there was some discussion as to how the issue should be classified. Was it an “off-by-one” error? Or maybe it was a “bad pointer”.
Also a lot of people commenting negatively on the whole thing may not even have been born then; Windows 3.1 was released in 1992. Those were still quite early days in the history of computing.
"He then ended his internship and took a two-week break before returning as a full-time employee."