Labels

Wednesday, August 9, 2017

A Really Smart Guy’s Response To A Smart Guy’s Memo Accidentally Explains Why Modern Software Is Utter Garbage – Riverside Green (Full text)

(You might also read the comment posts on this article – most of which are by insiders in the tech culture – very informative and revealing!)

Posted on August 7, 2017 by Jack Baruth
If you’re at all interested in “tech” or “tech culture” then you’ve no doubt heard about the pc-considered-harmful post written last week by a (mostly) anonymous Google employee. In that post, the employee suggests that there might be biological, “innate” reasons why women aren’t flocking to software jobs. He then goes on to say that the full-court-press for diversity at Google is damaging the company. He suggests that the company consider diversity as a scientific issue, deserving of research and development, rather than as a moral issue which must be addressed to the satisfaction of the high priests regardless of cost.
Needless to say, the pitchforks have come out for this guy. He’s getting death threats. Google has made the usual “that’s not who we are” public response. He’s being called “The Manifestbro”, the word “bro” of course used to dehumanize him and prepare him for the inevitable consequences of extrajudicial unpersonhood in much the same manner that racial epithets were used in the Jim Crow South. All of this was eminently predictable; perhaps not to the insulated, isolated Googler who wrote the memo, but to everybody who lives in the real world outside the Google Bubble with its scarcity, misery, and psuedo-sharia lose-your-job courts of acceptable discourse. To quote Stilgar from Dune, this dude put himself in the way of the Harkonnen fist. It’s sad to watch, and it’s ironic that his employer is probably going to take real steps to crucify a fellow who loves Google so much that he’s willing to sacrifice his own career for the general good of the company, but this sort of thing happens all the time in the post-Kulturkampfworld and as such it’s no more interesting than the thirty-ninth time a Christian was martyred in a Roman arena.
Here’s what I did find interesting: a former Distinguished Engineer at Google named Yonatan Zunger decided to write a lengthy screed detailing how and why he’d have walked that unfortunate, naive engineer right out the door. I think his post was probably meant to be nothing more than a public declaration of fealty to the golden calf of progressive thinking, an affirmation of group membership similar to the various abuse heaped on Trotsky after the fact by anybody who wanted to be found alive the next morning.
These impassioned reiterations of the status quo have become much more common lately, and most of them, the Zunger piece not excluded, boil down to The Progressive Theology Is Never Wrong And Here’s Another Reason For That Unchallenged Supremacy Which Had Probably Not Occurred To You Until Right Now. Five hundred years ago, scientists used to regularly write pieces about how you could Clearly See The Existence Of The Christian God In The Design Of The Hummingbird Nectar Tube. Their purpose then, as now, was to provide preemptive evidence against any future charges of heresy — and then, as now, they were utterly ineffective.
Yet this pile-on piece is much more than that. It’s a completely accidental, but utterly truthful, explanation of why modern software is so thoroughly, horrifyingly bad. It’s also a graphic reminder that nerds are gonna nerd, so to speak, with all the positive and negative consequences that result. So what I would like to do is ignore most of the crap on both sides about whether or not women should be programmers and focus on the inadvertent, but hugely relevant, revelations in Mr. Zunger’s post. You don’t have to be a programmer to click the jump; in fact, if you know nothing about computers, this will help you understand why computers and websites and whatnot are so hard to use.

We can start the way Mr. Zunger would like us to start: by reading his piece in its entirety, but it’s not necessary because much of it is virtue-signaling fluff and it’s irrelevant. We can get right to the red meat:
So it seems that someone has seen fit to publish an internal manifesto about gender and our “ideological echo chamber.” I think it’s important that we make a couple of points clear.
.
(1) Despite speaking very authoritatively, the author does not appear to understand gender.
.
(2) Perhaps more interestingly, the author does not appear to understand engineering.
.
(3) And most seriously, the author does not appear to understand the consequences of what he wrote, either for others or himself.
This is straight out of The Autism Spectrum Handbook For Winning Online Arguments, 3rd Ed. and it shows a common weakness of the inadequately socialized: they are rarely satisfied with anything other than a FLAWLESS VICTORY in a discussion despite the relative rarity of said victories. I think it probably goes back to when Zunger was the smartest kid in his classroom and he could easily demolish any argument with a list of pre-memorized facts and figures, seasoned liberally with the I’m-smarter-than-you-and-you-know-it attitude. Many people, including both commenters and authors at this blog, have fallen prey to that temptation, because most people of above-average intelligence have, at one time or another, been the smartest person in the room. Of course, to be the smartest person in your Ohio State Classroom you probably need to be a 95th-percentile intellect, while to do the same at Stanford maybe you’re one in a thousand — and that means there are still more than seven million of you out there.
1.I’m not going to spend any length of time on (1); if anyone wishes to provide details as to how nearly every statement about gender in that entire document is actively incorrect,¹ and flies directly in the face of all research done in the field for decades, they should go for it. But I am neither a biologist, a psychologist, nor a sociologist, so I’ll leave that to someone else.
This “I’m not enough of an expert to explain why I’m right but I’m enough of an expert to know I’m right” business is a smart-guy boilerplate response. It can be ignored. There is plenty of scholarship out there that shows innate differences between men and women in nearly any category of which you could readily conceive. Here is just such a paper, which should appeal to Mr. Zunger because it is both a front-page Google result and a product of Stanford.
People who haven’t done engineering, or people who have done just the basics, sometimes think that what engineering looks like is sitting at your computer and hyper-optimizing an inner loop, or cleaning up a class API. We’ve all done this kind of thing, and for many of us (including me) it’s tremendous fun. And when you’re at the novice stages of engineering, this is the large bulk of your work: something straightforward and bounded which can be done right or wrong, and where you can hone your basic skills.
.
But it’s not a coincidence that job titles at Google switch from numbers to words at a certain point. That’s precisely the point at which you have, in a way, completed your first apprenticeship: you can operate independently without close supervision. And this is the point where you start doing real engineering.
.
Engineering is not the art of building devices; it’s the art of fixing problems. Devices are a means, not an end. Fixing problems means first of all understanding them — and since the whole purpose of the things we do is to fix problems in the outside world, problems involving people, that means that understanding people, and the ways in which they will interact with your system, is fundamental to every step of building a system.
As we will see later, this is horribly ironic — but in the short term, let’s just focus on the idea that Zunger has redefined software engineering from “writing software” to “fixing problems”.
And once you’ve understood the system, and worked out what has to be built, do you retreat to a cave and start writing code? If you’re a hobbyist, yes. If you’re a professional, especially one working on systems that can use terms like “planet-scale” and “carrier-class” without the slightest exaggeration, then you’ll quickly find that the large bulk of your job is about coordinating and cooperating with other groups… Essentially, engineering is all about cooperation, collaboration, and empathy for both your colleagues and your customers. If someone told you that engineering was a field where you could get away with not dealing with people or feelings, then I’m very sorry to tell you that you have been lied to. Solitary work is something that only happens at the most junior levels, and even then it’s only possible because someone senior to you — most likely your manager — has been putting in long hours to build up the social structures in your group that let you focus on code.
At this point I feel compelled to remind Zunger that “solitary work” is the absolute fucking basis of computer science. Individuals, or very small teams, brought us everything from UNIX to TCP/IP to C to the GNU License to the vast majority of Atari 2600 games. Meanwhile, “cooperation, collaboration, and empathy” brought us Facebook and Windows 10 and video games that never ship. Zunger is attempting to hold a hugbox party on the shoulders of individual giants. Without “solitary work” we would still be… um, I don’t know where we would still be because MS-DOS was a solitary work and so was Apple ][ DOS and, shit, man, it’s solitary-work turtles all the way down. Let’s assume we would be using the Texas Instruments 99/4A, which was a team effort.
All of these traits which the manifesto described as “female” are the core traits which make someone successful at engineering. Anyone can learn how to write code; hell, by the time someone reaches L7 or so, it’s expected that they have an essentially complete mastery of technique. The truly hard parts about this job are knowing which code to write, building the clear plan of what has to be done in order to achieve which goal, and building the consensus required to make that happen.
Anybody can write code! And right there you have the core problem with Zunger’s manifesto, which also happens to be the core problem with pretty much everything you hate about every program you’ve ever used: The tech business has decided, as a whole, that the writing of code is no longer important enough to be done well or even conscientiously. That’s why we have pair programming and offshore teams and mystery-meat APIs. It’s because we decided that code does not matter. That Moore’s Law will make up for all faults in the code in a short time after said code is released. Doesn’t Flight Commander run great on an Intel i7, even if didn’t work on the 486DX33 for which it was written?
According to Zunger, and a lot of other people who should know better, the hard graft of software engineering is in fact just a fungible commodity. And that is why every single program, application, and software appliance you use in 2017 seems unable to perform at the rippin’ old velocity of an Apple //e playing Lemonade Stand: because the software business has decided software doesn’t matter.
All of which is why the conclusions of this manifesto are precisely backwards. It’s true that women are socialized to be better at paying attention to people’s emotional needs and so on — this is something that makes them better engineers, not worse ones.
Gender is not real.
People are all the same.
Also, women make better engineers than men.
He wrote “socialized” in there to cover his ass.
But still.
How seriously can you take somebody whose response to “men are better software engineers” is “you sexist jerk… oh yeah, women are better.” Huh?
…this is addressed specifically to the author of this manifesto.
.
What you just did was incredibly stupid and harmful. You just put out a manifesto inside the company arguing that some large fraction of your colleagues are at root not good enough to do their jobs, and that they’re only being kept in their jobs because of some political ideas. And worse than simply thinking these things or saying them in private, you’ve said them in a way that’s tried to legitimize this kind of thing across the company, causing other people to get up and say “wait, is that right?”
.
I need to be very clear here: not only was nearly everything you said in that document wrong, the fact that you did that has caused significant harm to people across this company, and to the company’s entire ability to function. And being aware of that kind of consequence is also part of your job, as in fact it would be at pretty much any other job. I am no longer even at the company and I’ve had to spend half of the past day talking to people and cleaning up the mess you’ve made. I can’t even imagine how much time and emotional energy has been sunk into this, not to mention reputational harm more broadly.
.
And as for its impact on you: Do you understand that at this point, I could not in good conscience assign anyone to work with you? I certainly couldn’t assign any women to deal with this, a good number of the people you might have to work with may simply punch you in the face,
I’d like to see a list of the facial-area punches delivered by Zunger, his entire staff, and all of Google’s employees since the founding of the company. I bet it’s less than the number of facial-area punches delivered by my son to his classmates this school year.
and even if there were a group of like-minded individuals I could put you with, nobody would be able to collaborate with them. You have just created a textbook hostile workplace environment.
Actually, what the author said was that Google should not force diversity. He argued that the bar for women entering the company should be the same as the bar for men entering the company, which is the very antithesis of sexist thought. But even if you want to interpret the author’s work as saying nothing other than that one-third of the engineers at Google are only there because they are diversity hires, and they should now have to prove themselves — is that not the natural, and logical, consequence of poor hiring practices?
If some percentage of the women at Google should not be working at Google, then that’s a problem to be fixed, which, if you will recall, is Zunger’s definition of engineering, which is what this fellow is actually doing, which makes him a better engineer than Zunger even if he spends his days writing code instead of having new and exciting social experiences in the brave new world of soft-skill software engineering.
It doesn’t matter how good you are at writing code; there are plenty of other people who can do that. The negative impact on your colleagues you have created by your actions outweighs that tremendously.
Zunger doubles down on the idea that plenty of people can write good code. But that’s like me claiming that plenty of people can teleport at will. Why, then, don’t we ever see anybody teleporting at will? If good code is so easy to write, where is it?
Not all ideas are the same, and not all conversations about ideas even have basic legitimacy.
All animals are equal, but some are more equal than others. This is how you know that Zunger is poorly read outside his physics-and-software discipline; he fails to note when he is accidentally channeling the villains of a (sorta) childrens’ story.
I’m writing this here, in this message, because I’m no longer at the company and can say this sort of thing openly. But I want to make it very clear: if you were in my reporting chain, all of part (3) would have been replaced with a short “this is not acceptable” and maybe that last paragraph above. You would have heard part (3) in a much smaller meeting, including you, me, your manager, your HRBP, and someone from legal. And it would have ended with you being escorted from the building by security and told that your personal items will be mailed to you. And the fact that you think this was “all in the name of open discussion,” and don’t realize any of these deeper consequences, makes this worse, not better.
This is the “crimestop” idea in its most flagrant display. “Open discussion” is not welcome in corporate America. Period. If you try it, your personal items will be mailed to you. In just two paragraphs, Zunger goes from unironically channeling Animal Farm to unironically channeling 1984. Again: poorly read, uneducated outside his very small specialty, not nearly the all-conquering Renaissance Humyn that he wants to be.
One very important true statement which this manifesto makes is that male gender roles remain highly inflexible, and that this is a bug, not a feature. In fact, I suspect that this is the core bug which prompted everything else within this manifesto to be written. But the rest of the manifesto is basically about optimizing around the existence of this bug! Don’t optimize your bugs; fix them.
I remind you that the author is not a biologist. “Working around the bug” of male sexuality is, basically, a cute phrase for a genetic-engineering nightmare to make Mengele look like Dr. Spock. (The child-care guy, not the Vulcan.)
And that’s all we need to hear from our friend, I think. It’s plainly obvious from Zunger’s essay that the primary function of Google, as he currently understands it, is to cooperate and collaborate for the social good. It has nothing to do with writing good software or effective software. Anybody can do that now. Code doesn’t matter.
Mr. Zunger is a very smart man, and he is a scientist to boot. But here’s the thing about modern scientists: they are only trained focus on very small things. The days of the Victorian gentleman chemist are past us now. All of the big ideas that could possibly come to a classically-educated man relaxing on the Louis-Quatorze-era chair in his family estate’s library have been discovered. Today’s science is done by putting laser-like attention on finite areas of effort.
The problem with Google, and the problem with other modern software houses, is that they have decided to put their laser-like attention on things other than quality of product. They focus on diversity, social good, various arcane theories of user-interface design, and other things that have nothing to do with writing effective code. Unsurprisingly, they aren’t very good at doing any of those new tasks — and because they’ve abandoned the things that they used to do well, the foundations are slipping out from underneath them.
Today’s Google home page is a slow-loading mess compared to what it used to be, loaded with buggy features and featuring plenty of bugs. Browser-dependent, hugely bloated, more like the old Excite! homepage than anything a Google user would have enjoyed a decade ago. It’s simply not very good anymore. That should worry the people at Google. Fixing that should be a priority above “social good” or “diverse teams”. They should hire the smartest people and have them write the best code. Period. That’s what Google is supposed to do. Whenever Google does that, it succeeds. Whenever they try to change the world, it’s a ridiculous failure.
Which brings me to the funny part. From what I’ve read, Mr. Zunger’s primary accomplishment at Google was…
wait for it..
Google Plus. Which is
a) utter garbage
b) currently serving a user base that is 74% male.
In other words. Mr. Soft Skills Diversity Guru has managed to build a product that actively repels people in general and women in particular. Don’t you wish he’d taken that big brain of his and used it to make Google Search better? Wouldn’t you rather that he had spent the past seven years writing outstanding code for something that people really want to use? If you consider your primary accomplishment in life to be something that most people utterly despise, and that women in particular despise, what does that say about you as a person? Should Zunger be lecturing anybody about anything outside theoretical physics? That’s the biggest problem with nerds: they love to lecture people about things, even if they haven’t shown any mastery of that thing. (Whether that applies to my own piece is for the reader to decide.)
Smart people tend to think that they are universally infallible. But they are wrong. Being a good physicist doesn’t make you very smart about biology, people management, or cultural direction. That’s a variant of a lesson that I am still learning, forty years after I took the Stanford-Binet for the first time. It’s a lesson Mr. Zunger would do well to learn for himself.