The Billionaires vs. BrandonM

Recently Dropbox became one of the latest companies to be worth billions of dollars without turning a profit, and Drew Houston became a billionaire.  I worked for Drew for a bit, and decided he was not the leader for me.  If you’d like to see why, take a look at this:

What’s the post he’s referring to?  Why it’s an 11 year old post that dared to question what Dropbox did by one BrandonM:

This comment, as BrandoM says, was from a 22 year old undergrad student who is now a 33 year old man and most likely a regular old working stiff.  BrandonM is not a billionaire while Drew most definitely is one.  BrandonM has absolutely zero power in this situation, and Drew has an infinite amount more by comparison.  Additionally, what BrandonM said does not deserve this level of retribution. He did not insult Drew, did not say anything actually bad about Dropbox, was even polite after Drew did this.

Think about that for a second.  A man who just became a billionaire (due to his large connections through MIT and his Fraternity) took time out of his day to hunt down a comment by a regular nobody 11 years later and throw his success back in that guy’s face, and this man can do nothing about it because he can’t delete his comment.

Now, let’s add a little bit more to this problem:

  1. Did you know YC startups have special privileges on Hacker News?  Nobody knows what they are, but rumor has it they can delete stories they don’t like, delete comments, and have the ability to get their stories to the front.  Again, this is based on statements from a few YC alums in passing, so I can’t confirm this, but you can already see how the JOB postings seem to have preferential treatment, so why not other things?
  2. There is no way for BrandonM to delete this.  For an entire decade he has been haunted by 3 paragraphs he wrote when he was 22.
  3. The moderators of HN frequently delete things they don’t like, but leave up quite a few abusive and slanderous posts.  HN has the right to delete something, but not BrandonM, the author.
  4. Nearly every YC founder backs the idea that everyone should be open to criticism and the “free market”, but this exchange shows the message is more:  “We can criticize you, but you better not criticize us.”
  5. This could possibly amount to an effective slander case by BrandonM against YC or Drew Houston given that, 11 years later, he claims he is still being quoted about it and cannot delete it even though his views have changed.
  6. The inability to delete your own profile or messages could amount to a violation of several EU laws regarding right to be forgotten and definitely violates the newer privacy laws in Europe.  It might also violate several US privacy laws as well, and I think this should be a slander case given the magnitude of the impact on BrandonM and the fact that he can’t delete his remarks.
  7. If you or I had done something similar to what Drew did here we most likely would be chastised by the moderator(s) or even banned.

What BrandonM wrote is not even abusive.  It’s just his viewpoint on what Dropbox does, and definitely not deserving of this kind of spiteful petty retribution 11 years later.  This kind of behavior is common from Silicon Valley companies.  They’re big fans of the whole “waiting for your body on the river Ganges” thing, and if you ever once doubted them they’ll hunt you down after their success just to shit on you.  Never mind that the only reason most of these companies succeed is because they go to the same “cuddle puddle” parties as VCs do and went to the same school with the same frat.  Nope, they totally made it on the glory of their shitty code and that’s why your technical comments deserve retribution.

That isn’t even the most abusive thing on HN that is still up.  There’s this gem from 9 years ago:

This cortesi fellow decided to call me a cock because…….I said I prefer to GPL my software because too many people abuse open source developers.  Nowhere in my writing did I mention cortesi, and I don’t even know him.  But here he is calling me a cock for no other reason than I feel my work should have value.  Did this get deleted?  Nope.  Moderators still have it up.  I bet if cortesi could he might remove it.  People change in 9 years.

Just not YCombinator.

No Delete Is Abusive

Everyone who runs YCombinator tries to pretend like they are decent liberal libertarian minded human beings.  They start charities, donate money, attempt basic income experiments, and a host of things that I and many other people would label “progressive” or nearly communist.

Yet, their behavior in actually running their company is not even close to the fake progressive values they project.  They have abysmal funding rates for minorities, women, people of color, coders over 40, and hell, anyone who didn’t go to Stanford or an Ivy League school even.  Their startups are constantly embroiled in the biggest sexual harassment abuse scandals we’ve ever seen.  They frequently allow people on their forums to slander and abuse others, with only the thinnest veneer of moderation.

I believe the most important sign that YC is an abusive company is the fact that–contrary to several laws–they refuse to allow people to delete comments even a decade later.  The entire combative nature of HN commenters means that people are going to make mistakes and those mistakes will haunt them, so preventing deletion is abusive.

It also contradicts the progressive values that they claim to have.  Wanting to fund an experiment in basic income means you believe that people make mistakes.  They take a wrong turn and need a reset to get back on their feet.  Their lives change in some way, but that life got derailed and can’t recover without help.  Not letting BrandonM delete his comment means they actually don’t believe this.  They don’t really believe that people make mistakes—oops sorry, founders make mistakes all the time and get away with it.  They just don’t believe me and you are allowed to make mistakes

The people running YCombinator have now demonstrated that they are not progressive or even good people.  Here’s Sam Altman–another incredibly rich man–again humiliating BrandonM years later:

Screen Shot 2018-03-25 at 5.02.18 PM

This is a wealthy man, running a very wealthy company, supporting a billionaire in his quest to humiliate a common working guy for a comment that worker made 11 years ago.  Sam has no idea how this will impact Brandon’s life.  He has no idea if this will hurt BrandonM, drive him to suicide, get him fired, yet he does it anyway.

Progressive or liberal people do not take advantage of their wealth and power to humiliate someone less powerful than they are over something this petty.

Defending BrandonM

I actually agree with the sentiment that most of the people who comment on HN are clueless losers who just love trading slander through throwaway2342343 accounts.  But, I also can’t stand it when someone with power abuses their power to shit on someone who’s just speaking their mind.  I don’t think BrandonM’s comments fit into the “I could do that in a weekend” bullshit comments you hear.  I think what he wrote was fairly valid…in 2007 for a Linux user.

In 2007 what BrandonM wrote is actually valid given the environment.  It was a total long shot that Dropbox would go anywhere, and hell it took a whole 11 fucking years for them to IPO.  Box did it in 2014 and competes rather well compared to Dropbox.  But let’s break down his comments from a 2007 perspective:

  1. Silicon Valley had been ravaged by the Dot Bomb era and Drew couldn’t even get funding in his home town.  It’s totally normal to be skeptical that he couldn’t pull this off.
  2. “For a Linux user….” right there he’s looking at this from a point of view that frankly doesn’t matter.  There’s a few Linux users in the world compared to everyone else, but when people criticize his comments they think he’s talking about Windows users.
  3. “curlftpfs”, “svn”, “cvs”, at the time, that was all we had that worked.  On linux this might work pretty well.  A simple rsync would work better, and that’s mostly how Dropbox works.  So, he wasn’t really wrong here either.  In 2007, what he wrote is a viable–although crap–option.
  4. “It doesn’t replace a USB drive…” this is a simple misunderstanding of how Dropbox works…which means Drew screwed up the marketing.  That’s not BrandonM’s fault or makes him stupid.  It’s Drew’s fault for not demonstrating that the files are kept locally so you don’t need a USB.  And, if you’re smart and you travel, you do keep your important stuff on an SD card or USB drive.
  5. “It does not seem very ‘viral’…”  At the time “viral” meant “I saw this video on YouTube and it got 1 million views.  It’s a Desktop app so how in the hell are you going to toss it to your friend and virus that shit up?  That’s why they had to create the web interface, so again, he was right.  The Desktop app is not viral at all.
  6. “or income-generating”….  If you define “income” as revenue then Dropbox brings in some decent revenue.  If you define “income” as profit, then he’s right, Dropbox does not make a profit.
  7. “is it reasonable to make money off of this?”  And here we have it, he means “income” as “profit”.  Making money means you keep the money.  If I have to spend 4 billion dollars to make 3 billion then I am not making money off of it.  I’m losing money on it.  So again, BrandonM was right.

In my mind what BrandonM wrote was actually true, but it was short sighted and didn’t take into account the value of going to MIT and being in the same frats as other guys who know really wealthy guys.  Next time you see someone shit all over this guy, remember that 11 years ago, he was right and it could have gone totally differently with just one wrong move.

What If It Worked?

I talk about people sending me suicide threats in this essay.
If you are contemplating suicide, then please call the 
National Suicide Hotline at 1-800-273-8255. There is no shame
in asking for help, so make the call.

I receive about 1-3 angry emails a month regarding my positions on various things.  The latest round of “Fuck You Zed” emails was regarding my stance on Python 3 being a complete waste of human energy.  That’s understandable as many people who have absolutely no lives at all tend to attach their narcissistic egos to fake things in order to add some desperate level of meaning to their pathetic totally useless lives.

People are so attached to their programming languages that they even hate newbies who just don’t ask the right questions in IRC.

fuckyounoob.jpg

We’ve all, as a community, decided that beginners are on the list of people we all can hate.  I mean, if this is how someone treats a dude who just wants to get the end of a file, can you imagine how they feel about me?

I’m sure this <feline> asshole is just sooooooo tired of beginners coming and asking stupid questions, but then you wonder why the fuck they’re on IRC in the first place if it’s such a total waste of time?  Actually, I know why.  They can hide behind the internet, safe from a solid punch in the face, and treat people like crap to make themselves feel better about basically being total losers.  Seriously, if the vast majority of your authority in life comes from ASCII text caps lock screaming at people just trying to learn something then you have got to be one of the biggest losers out there.

But, let’s say you’ve spent your evening treating innocent people like shit with your ASCII BLAST importance and your insecure narcism just really isn’t healed.  You are still resentful of the fact that you’ve memorized every page of the ANSI C standard and nobody recognizes that as the pure genius it actually is. You were in the SPECIAL KIDS class God Motherfucking Dammit!  You were destined for greatness!  You worked, like, sort of hard too so it should be you that’s famous!

Nope, you are stuck as a PHP programmer, toiling away for peanuts making billionaires wealthy when really it should be you, Mr. Gifted Fear Failure Esquire, getting the book deals and not that asshole Zed A. Shaw.  Who fuck is that guy anyway?  He constantly makes mistakes while he’s putting out all his books, and code, and content, and paintings, and building guitars, and playing guitars, and you know what, fuck that guy.  You know what you’re going to do!

Death Threats

I get a few death threats too.  My most recent one was this:

go_fucking_kill_yourself.jpg

If they give a valid email address I usually rip them a new one.  You see, violence is a bad thing, but self-defense is not.  Sure, you may hurt someone, you may even kill them, but if they were trying to kill you or hurt you, then you’ve actually prevented an evil thing by stomping them into the ground.  And there’s one thing I’ve learned over decades of dealing with violent people:

Violent people do not respond to kind words and reason.  They only respond to being hurt.  After you’re done kicking their ass, sure, they might be amenable to reevaluating their life. Chances are though they are sociopaths and that means they are not going to change.  Same goes for narcissists.  Psychology still can’t figure out how to cure either afflictions, and in the world of violence, narcissism and sociopathy go hand in hand. Can’t cure them or stop them with words, so your only option is harm.

You are perfectly allowed to use violence to defend yourself or someone you love.  Sheeeeeiit, martial arts were invented by Buddhist monks for this damn reason.  I think if Buddhist monks can have this attitude then you can my friend.  In fact, I think allowing violence when you can stop it is just as bad as doing it yourself.

But I received this threat and couldn’t reply to the loser who sent it because he wasn’t man enough to enter an email address.  I just posted it on Twitter and then moved on with my life. At least, until I realized something.

People Die From This

If you ever read news about online bullying you’ll see the obvious tragedy of suicide and abuse.  What you’ll also see is a complete lack of remorse from the perpetrators.  They’ll usually choose someone who is an outcast in their society.  A nerd, a poor kid, or someone with some disability that gives the abuser a reason–blessed by society–to hate the victim.

Once the larger group decides that this person is a valid target the sociopaths take their cue and feel justified in their abuse.  At first it’s maybe name calling, then it escalates to humiliation, destruction of their livelihood, life, and then escalating further until they’ve driven the poor outcast to the edge at which point, they give the push.  That one little tug, aimed at a human being weak from continuous abuse, and designed to make them end their life.

And when the killer gets caught, almost universally one of the first things they claim is they didn’t do it because it was a suicide. It wasn’t their fault, they didn’t actually kill them, and it becomes clear the abuser, the killer, is not remorseful.  It was not a game.  It was not an accident.  It was a calculated act following a calculated chain of abuse designed to destroy another human being for no real reason.  They’ll claim the victim wasn’t even human. The victim did some incredibly terrible thing, that turns out to be something minor.  The abuser will do anything to avoid admitting that they killed someone.  Society said they could kill them.  Why aren’t they getting a trophy?

You see this with child abusers, spouse abusers, bullies, rapists, and many sociopathic killers.  You’ll ask them why and they’ll tell you the victim deserved it.  Why?  They ate a yogurt.  They wore a short dress that day.  Their skin was different.  They voted for the wrong politician.  They like the wrong genitals.  It’s always something that is incredibly trivial in the grand scheme of things, but it doesn’t matter what the victim did.  All the victim actually did was exist and happen to give their murderer or abuser an excuse to exercise his or her desire to satisfy their narcissistic need to hurt someone that day.

Query

I started wanting to know why someone would send this?  I mean, did they think it’d work?  They would send a one line sentence with poor grammar and I’d jump off my building?  I’d blast myself in the face with a shotgun?  I’d drink some drano? Slit my wrists in the tub?  Did they think it through?  What if I was having a particularly bad day and all that was needed was this tiny push? This message that I’m worthless and unloved.  That I’m a nobody who deserves to die because…

I don’t agree with the direction of Python 3.  Or maybe, I wrote a thing about abusive people in Ruby ten years ago.  Yes, TEN years ago.  Or maybe I hate Haskell?  Like I said, once a community decides I deserve it, the reason doesn’t matter.  Any reason is good enough to justify the abuser’s actions.

Whatever their reason, I don’t need the answer.  I know it all too well.  I know this person is a pathetic fucking loser.  I know they wrote that hoping I would die, hoping to kill me, but needed an excuse, and my disagreement with this totally inert concept called Python/Ruby/Haskell is all they needed.  Their community has crafted the right amount of propaganda and cohesion to allow any decision about my “asshole” status be the abuser’s cue that I’m fair game.  They can threaten to kill me, force me to suicide, and it’s alright.  I deserve it right?  I mean I hate Python 3.  That’s important.

It Won’t Work

If people think that I’m easily intimidated or threatened they’re sadly mistaken.  I’ve defended myself from abuse most people could never have survived, and some little worm pumping chars into a web form is an ant by comparison.

Now, I try my best to be good to people, but I have a very strong sense of self-defense and vengeance.  I try to be careful with it, but I have no problem destroying someone who tries to hurt me.  Like I said, you have a right to defend yourself and people you love.  I’m also definitely not some little weak snowflake nerd, and I definitely am not going to kill myself because some pathetic weakling took 10 minutes to write a sentence demanding I do so.  Fuck you.

More importantly though–and this I hope really pisses this asshole off–my life is fucking awesome and I’m in the best mood and position I’ve ever been in romantically, financially, socially, and in every way that mister Help Form Killer can’t possibly compare.  While this guy was wasting time filling out this shit I was probably doing something awesome.  Shit, I was probably doing 10 awesome things that day.

The Reward

Sending this across state lines is a felony, and I want this person in jail.  I want them publicly humiliated and dragged out in court to justify why they tried to kill me.  You laugh, and say they didn’t try to kill me, but that’s how we should take these demands of suicide.  It is only done because it might actually work one time, and when it does, this person will go back to eating Cheetos and jerking off to CGI lolicon.  They won’t care.  In fact, I bet they’d be happy and brag about it.  They were justified because I hate Python 3, and for that, they deserve to be in jail.

With that in mind, I am now offering a $1000 reward for any information that leads to the arrest of this person.  It’s not much, but I’m going to bet that this loser’s friends could use a grand and don’t like him at all.  If you have information, then feel free to send it to me.  If you want to stay secure I have my My GPG Key for you to use.  You can email me at help@learncodethehardway.org any time to send me your information or post a comment on this blog.

Fuck you loser.  I hope I catch your ass.

 

The End Of Coder Influence

I get an email from someone who tells me that Reddit has decided to remove my book from their list of suggested readings for Python until I update the book to Python 3.  They made this decision about two weeks prior to when I received the email, so I went to look at my traffic and sales to see if there was an impact.  Weirdly, my sales were up and my traffic was about the same.  It had no impact.

Once a year I go through my Python book and I try to convert all the code to Python 3 as a test.  I do this with the eye of a total beginner, looking for things that will trip them up and cause problems.  Bad error messages, confusing syntax, broken libraries, and inconsistencies.  Every year I run into nearly the same problems:  strings are difficult to use, error messages don’t have variable names, libraries don’t really help with strings, and there’s too many inconsistent string formatting systems.  So I decided to see again what it would take to make my book Python 3 and ran into the same issues all over again.

To put it bluntly, the reddit community responsible for teaching beginners to code censored my book as a power play to get me to force Python 3 on unsuspecting beginners.  The language does not work for them, and they were attempting to use their influence to enact change in my books, rather than use that influence to improve Python for beginners.

And it didn’t work.  I still had the same sales and the same traffic.  I actually think if all Programming Reddit rose up and demanded Python 3 have better error messages regarding strings (a minimum usability bar) they would be ignored too.  In fact, I kept seeing over and over people pointing out blog posts, reddit threads, HN threads, and tweet storms as if these were highly influential which then did nothing.

A few days ago I went through another test of Python 3 and ran into the same problems.  I get enough people emailing me about Python 3 that I decided I needed to work out a list of reasons why Python 3 is broken for beginners as of today.  Originally I was going to write it fairly simply and not worry about appeasing the coders, out of fear they would retaliate like they always do and boycott my book even more.  But, I remembered that after countless blog posts about how terrible of a person I am and how terrible my books are, I still end up helping millions of people a year and still have the same sales.

I decided to just write what I felt and fuck whatever programmers think.  I wrote it, put in a couple of jokes and trolls, and then posted it.  Fuck it, I have a cold and don’t give a fuck.

Immediately people started insulting me, telling me I’m wrong (yet not reading the post, LOL). Then the HN posts start, then Reddit.  I don’t read those so people shove them into my email and Twitter stream.  I was tired and not into defending myself so I just deleted Twitter off my phone and go sleep some more.  Enjoy the sun.  Did some painting.  Hung out with friends.  Who gives a fuck about what a bunch of angry lonely coders think about my thoughts?

Yet, here’s where everyone I know becomes deathly afraid of the coders.  These groups of programmers used to have large sway over what was successful and chosen, but at the same time were horribly uninformed about basic computer science.  They ran to Node.js because of “events are better than threads” and had no idea Hoare or coroutines existed.  They manually went to hand convert all Python 2 code to Python 3 code, rather than just asking why the Python 3 VM can’t just…run Python 2 code too.  Then they believe the mega load of bullshit that this is impossible despite all proofs and evidence stating otherwise.  For all their claims of superiority for having once bought a copy of The Art of Computer Programming the previous generation of programmers are sadly uninformed about basic shit.

We all feared them, because their incredibly uninformed opinions and complete lack of humor or human decency could sink or swim entire companies.  Get slagged on HN and you’re done for.  I’ve heard of VCs actually threatening to strip away funding over bad HN reactions like HN is on the same level as the food critic of the NYT.  So what was going to happen to me?

Honestly, I’ve been trying to get out of the technology industry since 2008.  This industry sucks, and largely because of the abusive previous generation of programmers.  My goal has been to just make their influence on my life as small as possible so I can go on doing things I love like painting.  Fuck them.  But, a man’s gotta eat so I keep doing my work so I can make enough of a living to keep helping folks and doing what I love.

What are the results of their insane hatred of my latest stance against Python 3?  Am I doomed to never have any more sales again?

Nope.  Same traffic.  Same sales.

I believe that the influence of the previous generation of programmers is largely gone.  I can’t exactly say why, but I think it’s because they consistently back terrible ideas over and over.   They also tend to have no idea what will be successful or not.  The reason is they base their opinion of a technology on superficial things related more to whether the tech fits their tribe than its actual merits.  When my book first came out the HN crowd and other “professionals” said it wouldn’t work.  Same for many successful startups, technology, and ideas.  Meanwhile, the things they do back end up being terrible and we all regret following their hive mind.  Can anyone say OpenSSL?

I also believe the newer generation of programmers are more well rounded and have a general distaste of this kind of tribal fascist bullshit we have in open source.  I can’t really prove that, but it’s a feeling I’ve been having for a couple years now.  This next generation is different. I just can’t quite say how other than they seem to not believe the same things as the previous generations.

About a year ago I stopped reading HN and Programming Reddit because of this.  I don’t worry about the vindictive assholes out there who feel any questioning of their tribal beliefs is an affront to their person.  I now think the actual influence of the hive mind on anything outside of the tiny little set of Silicon Valley Programmers Who Read HN bubble is nothing.  If you think their influence matters then either you’re working on something as insignificant as they are, or it really doesn’t matter and you should just ignore them and move on.

Keep making cool stuff and speaking your mind counter to the hive.  I think that’s the future generation’s take on programming, and I fully endorse that message.

Facebook Identity is Extortion and Slander

THIS HAS BEEN FIXED. THE ZEDSHAW ON FACEBOOK IS THE REAL ME. I DO NOT NEED YOUR HELP ANYMORE. THANK YOU. (Dec 10, 2015)

I’m currently dealing with a problem at Facebook where someone is impersonating me and Facebook refuses to do anything about it. I was notified by a friend that this profile zed.shaw was friending all of my actual friends and potentially messaging them as me. To stop the impersonator I wasn’t able to simply contact Facebook and have the profile taken down. Instead I had to signup for my own profile zed.a.shaw and file a bug report with them.

This amounts to extortion. If Facebook is claiming to require real names and identities on its platform, and requiring people to signup for Facebook to eliminate impostors, then they are extorting signups out of people. Your only choice is to become a Facebook member and reserve your spot in their ad driven world even if you don’t want to use their platform at all (which I don’t).

However, this gets worse. Here is their reply when I submitted the only kind of ticket I could figure out how to submit to correct the impostor:

And the impostor is accepting Happy Birthday messages (on a day that’s not my birthday):

This is proof the impostor is actually impersonating me, and Facebook chose to do nothing about it.

Rather than solve my problem they’re playing the typical bureaucratic game of telling me that I haven’t properly filled out the correct forms and submitted to the proper department to resolve this issue, please try again. For a company that is claiming to create a safe space for everyone, even creating an anti-bullying hub, this is unbelievable. I should not have to navigate Facebook’s problem reporting system to have this resolved.

In my case this could get potentially worse for Facebook. I’m a published author with an actual business reason to not have impostors on a platform like Facebook. Imagine if this person decided to start contacting potential readers and slandering me. Or posting offensive messages pretending to be me so that readers of my books found them. Well honestly I doubt this guy could do that better than me, but the point is, they could invent some form of slander that would ruin my book sales. This person could also ruin my relationships with friends who are currently following the impostor account. Since Facebook refuses to take the account down and transfer control to me, and they claim to enforce identity giving visitors a false sense of security in trusting this impostor, then Facebook is actually the one causing the slander.

I believe that their actions could fall under both the Safe Harbor laws for sites and possibly the spam laws, but it’s vague. In the case of the safe harbor laws, they are exerting editorial control on identities and failing to enforce that means that allowing impostors makes them liable for any slander. In the case of the spam laws (much less possible) they are requiring people to sign up for Facebook to report problems, and also making the process onerous and difficult. The laws against spam require that people can unsubscribe from all contact with a company without logging in, and I believe you should be able to report abuse of a profile in the same way. Much like a DMCA takedown or spam unsubscribe, I shouldn’t have to be a member of a social platform to report an abusive account on that platform.

Right now I’ve contacted the impostor and asked them to give up the account, since Facebook can’t, but I should not have to contact an abuser to have this resolved. The entire point of having a system to report problems from abusive people is that I don’t want to talk to the abusive person. I want their impostor account wiped out and all the messages they’ve sent to my real actual friends given to me so that I can make sure I was not maligned. There should be one page that I go to report an account for abuse, and that’s it. This extorting my eyeballs into viewing their shitty ads just to get an abusive asshole off my name is entirely wrong.

Turd Cookies

FLOSSBro: “Hello sir and welcome to FLOSS Cafe. We have the best cookies in town! Would you like some free cookies? Fresh baked today.”
Zed: “Oh man, yeah I love cookies. I was just looking for some actually. These look delicious. Mmmm. Bleggghaarrg Fuck!”
FB: “What’s wrong?!”
Z: “What the fuck?! Did you put turds in these cookies?!”
FB: “Look sir, I’m going to ask you to not be rude with me. You have no right to question how I make cookies. They were free after all.”
Z: Spits on ground. “What the absolute magical unicorn fuck are you doing putting turds in cookies?!”
FB: “I’ll have you know that the turds are an essential ingredient of our cookies and I’m going to tell you again to not be offended by it!”
Z: “Is that a peanut? Disgusting. Ugh. Who the fuck wants turds in their cookies?!”
FB: Points at giant sentient fly in the corner of the cafe. “That guy! So there!”
Larry: Waves.
Z: “Whoa. Ok, that guy is a giant sentient fly. How many of those could there possibly be in the fucking world that you’d have to put turds in all of your cookies?”
FB: “Well I’ll have you know that if we don’t put turds in all of our cookies that sentient fly will shit on everyone else’s food and knock tables over then post really nasty reviews on Yelp.”
Z: “Wait, you put turds in all of your cookies so that a fly won’t write reviews in Yelp about the lack of turds in your cookies? Why do you even let him in here? I’m sure that’s some kind of health violation and shit.”
FB: “Because he is loud and obnoxious so if we don’t keep him happy he makes it bad for everyone else. Anyway, I kind of like turds in my cookies too. It was a great decision and now I’ve made it and I’m sticking by it. I am right.”
Z: “What?! Do you seriously eat these?!”
FB: “Well, not exactly. I have a batch I make for myself and special paying customers that only has a little bit of turd in the mix. It’s quite refreshing.”
Z: “Holy fuck, you mean, you put free cookies out with turds in them because a sentient fly demands turds, and then you charge people for cookies without turds? That’s fucking insane.”
FB: “You don’t have to eat them sir! Nobody said you had to eat my free cookies!”
Z: “You offered them to me asshole! If I’d known there was turds in the free cookies I would have just bought the fucking turdless cookies from you and saved myself the epic amount of shit now coating the inside of my fucking mouth.”
FB: “Don’t talk to me that way sir! I gave you those cookies for free!”
Z: “I didn’t want turd cookies! Why the hell do you even do that?! You should just not put turds in your cookies then sell that sentient fly asshole the ones with turds.”
FB: “You are not being constructive here.”
Z: “What? I am being constructive. Just don’t put turds in your cookies shithead!”
FB: “No, that’s destructive because it is telling me to change my mind about a clearly obvious and brilliant decision I made to put turds in my cookies.”
Z: “Alright, how do I give you constructive feedback that will get you to at least make a batch of cookies without turds in them at all? That’s what I want. Cookies without turds. I’ll even fucking pay for them.”
FB: “I’m going to have to ask you to fill out a Recipe Task Form Management System request online. It’s only 42 form fields at this website and your request will be added to a queue behind 153 other requests to change the recipe.”
Z: “What?! I have to fill out a fucking form online, for you, and you might fix it?! That’s insane!”
FB: “No, this is our process here at FLOSS Cafe sir. All patrons must submit orders through our RTFMS and we handle only the orders we feel are worth our time. Now, if you were a friend of mine, or a large corporation I might not make you fill out the form, but since you’re being a jerk I’m going to request that you fill out an RTFMS request.”
Z: “Alright, fine. I’ll fill out your fucking form. I’m curious to see if you’ll do it:”

DON’T PUT SHIT IN COOKIES, ASSHOLES.

Z: “There, can I get some cookies that don’t have turds in them now?”
FB: “Oh see now you’re just being rude. You have to show some respect. I mean, I just gave you free cookies and this is how you treat me? What an asshole.”
Z: “Oh, ok how about this fuckface:”

TAKE SHIT OUT OF COOKIES, PLEASE ASSHOLES.

FB: “Sir, that is not being constructive.”
Z: “Oh you want constructive:”

USE MORE SUGAR INSTEAD OF SHIT, WEIRD LOSER MORON.

Z: “Fuck you and your fucking turd cookies FLOSS Bro. I’m going to go start a restaurant that doesn’t put turds in their cookies and put you out of fucking business.”
FB: “Fine! You go do that! It’ll fail because you’re not positive and constructive and supportive of my work! I do this in my spare time you know!”
Z: “Probably because you suck so bad nobody would pay you to do it for real.”
FB: “Fuck you! You don’t get the entire concept of free cookies! If I give you free cookies you have to worship me! Worship me for my free cookies asshole!”
Z: “I see! The truth comes out! I have to worship you and it’s not about having the best cookies in town. It’s about you being recognized by giant sentient flies and nobody else. Fuck off!” Slams door.
Fly: Walks up chewing on turd cookies. “That guy’s such an asshole. These cookies rock.”
FB: “Thank you Larry. I’m glad you’re happy.” Looks out at empty restaurant.

I Can Kill Any Computer

I’ve been fighting the Pearson royalty payment system for about 4 months now. It seems every time I touch it I break something or other about it, and I’m sure it really only happens to me. This time I changed my address and that didn’t work. So then I tried to setup direct deposit of my checks and that didn’t work because they didn’t recognize my bank (which is a massive bank). A few weeks later they finally recognized my bank, so I setup direct deposit and then I have been in pending status for about 2 weeks. Checking in today I was told that, you’ll love this, they don’t know why they can’t see my new settings. I’m apparently in some kind of strange royalty payment purgatory and the only way out is to fax them paper versions of the same requests so they can use their other system to update my record.

Yes, to get paid by Pearson, I have to fax two pieces of paper to the royalty department so that they can look in the royalty department database and fix the record I can see on their website but that they can’t see.

This apparently only happens to me, and it’s fairly consistent. You want to find out if your software works well? Have me try to use it. I tried out Blogo for about two minutes and ran into errors all over the place. Images not being put in the right spot, bold text not working, just loads of little things that only I encountered doing crazy things like adding images and making stuff bold. They fixed them up and I’m still using it now. It’s actually really nice. I’m just cursed with a weird devil hand that drives software insane is all.

Google is another one that has been fighting me all week. I am apparently the only person who cannot use Kubernetes. Nearly everything I try ends in disaster. Not a single getting started guide has worked, not even on their GKE platform. Firewalls don’t work. Compute nodes don’t work. My account does weird things here and there. No idea what I could be doing wrong, and I follow along with 4 of their documents with the same results. Running Kubernetes myself is the same results. Doesn’t run here. Doesn’t run there. Needs this. Needs that. Needs docker to build dockers that have dockers that build Kubernetes that only runs in dockers on core OS from boot to docker that is a container in a container that has OS X running Kubernetes with….

Yep, I’m just cursed to trigger nearly every bug you have. You changed an option? That’s the one I’ll run. You got a race condition that only happens in one version of Vagrant and one version of Linux? That’s the one I’ll try first. And I’m not being weird when I make these choices since most of the time I’m trying to write a book so I stay fairly vanilla. I just seem to trigger bugs along the way is all.

Another time my bank couldn’t connect my business credit card to my business bank account. I’d asked them repeatedly for months to do this with no success. This was mostly over their dumb internal email thing, but finally calling them on the phone led to a 40 minute call center threesome with me and two other people who then had to bring in a fourth guy who worked in “databases”. For some reason, I just had one wrong bit set in one wrong place and there was no explanation. I just didn’t have it, and it was a major deal to fix my account. But why? “No idea sir, you just had the wrong setting.”

That devil hand at work again. Computers crash on me. Every Mac I’ve owned has tanked in the first week and needed repairs or replacing. Hard drives freeze up. It happens so often friends don’t believe me. There’s no way anyone has those problems. I do. All the time.

I’ve also found that if I tell people about these bugs they tend to lose it, even if I’m nice about it. I constantly have to double login at Paypal. I complained about it and holy fucking jeebus did those dudes lose their shit. Assholes from eBay emailed me like they were going to kick my ass because I pointed out the fucking obvious that making someone log in twice to a financial website means customers can be phished on the first login. After random eBay assholes harass me I just stopped being nice. I went from saying Paypal is broken to saying they’re fucking terrible programmers. I mean fuck, if I’ve been using Paypal for years and I’m still having to log in twice every time then it’s not me it’s you jackasses. Fix your shit. Nobody else with authentication has this problem but fucking Paypal.

Oh, and I don’t fucking work for you. I’m not going to waste 15-30 minutes navigating your bullshit bug tracker, filling out every random Jira/Bugzilla/Confluence/AgileXPHardon12000 tracking data point just so you can ignore me. You fill out the damn ticket and ask me if it’s right. That’s what I do. I don’t make other people fill out bug reports. That’s just rude.

I’m convinced that this is what made me good at writing software. I bring computational disaster upon myself so frequently that I just assume everything I touch is tainted and write software that protects against it as best I can. I’m like the coder from Salusa Secondus who had no idea things weren’t supposed to be this broken and ended up just making things solid to avoid it. It is fun at times, but after two decades of constantly have to anticipate I’m getting tired of it.

If you want to find out how good your software is get me to use it. I’ve brought systems to their knees just casually clicking around. When that doesn’t work I do “crazy” things like, change my photo, or update my DNS records. Things you totally didn’t anticipate someone doing? Yup, I’ll end up doing it and then you’ll sigh and tell me nobody does that and I’ll just shrug and move on to the next product until one stops crapping out on me.

P.S. Blogo still fucks up bold. Sigh.

And Then You Have No Taste

There’s a presentation a while back by Randy Nelson, Dean of Pixar University, where he says that Pixar is all about, “How can I plus this?” He goes on at great length to say that if you’re collaborating on something with someone else you can’t say that what they made isn’t very good, but instead you have to say how can you “plus it” and make it better (which is basically a passive aggressive way to say it sucks).

This all comes from the Improv Comedy crowd where you are trained to go with whatever your improv partners come up with and try to roll with it. It’s a seductive idea that you can work with people who will never tell you, “That’s fucking stupid.” Even if you are being a total idiot, nobody will ever say it, and so, you can safely throw out ideas and everyone will be happy and the world will improve because everything is just oh so positive and awesome and pretty soon we’re all riding around in flying cars like we were promised! It was negativity that killed flying cars! NEG A TIVIT EE!!

No, sorry people. Negativity and criticism are an important part of creating anything of quality. You have to be critical of what you make or else you end up making total crap and never improve. That’s just the way it is, but it’s curious to wonder what kind of an arrogant asshole thinks that nobody should criticize their work? Who are these people who want to make things and never have it criticized? I mean, my output gets ridiculed all the time, with rampant numbers of totally brutal commenters tossing around their opinions to the point of slander. I actually mine it for potential fixes to what I’m making. It’s difficult, but it’s possible for me to wade through the vitriol and either find something that needs fixing, or find a catch phrase to use as a defense against the critics.

Taking criticism in stride is just part of quality, and trying to eliminate any criticism of your ideas is a sign of both immaturity and abuse of power. If nobody can criticize what you make then you are elevated to the realm of kings and despots. Fuck, even the Pope is down with criticism now. Are you more important than the damn Pope? Nope. So get off your damn Throne of Impeachable Perfection and learn to recognize when your work sucks. If you do this often enough you’ll be able to fix it yourself before anyone else can see it. You’ll…GASP…learn.

I think the real problem is that a person who gets all butt sore from being told their output is crap is someone who isn’t being honest with the real quality of their work and isn’t working on it personally before presenting it to their peers as legitimately developed. When I post my paintings I give an honest assessment of them. The vast majority of them suck, and will continue to suck because I’m still learning, and I’ll be learning for the rest of my life. The word we use for an artist who believes everything they make is fantastic is “delusional”. You want to see what “and then” does to art? Go to Craigslist arts and crafts and set the price to >$500. Watch all the people who believe the art they purchased or made is fantastic.

I see this all the time with code as well. Programmers are notorious for building crystal palaces crafted of finely tuned deeply complex structures that follow all the rules, binding together every meta-pattern possible, following all the best TDD, pair programmed perfectly, and they end up with a total shit show of a project. They never think to ask, “Does this really improve my project?” Others keep piling code on top of code on top of code endlessly never realizing that they need to look at what they’ve written and ask, “Alright, what do I have to trim down? What should I remove? Rewrite? What’s crap?”

It gets even worse when you criticize personal projects. The worst habit of all people who make stuff is to use the personal as a defense against criticism. Artists do it by claiming their art is about some personal tragedy protecting them from criticism of their work. Programmers do it by claiming their project is a labor of love and open source, protecting them from anger about bugs they’ve made that ruin people’s day or life. It’s almost as if they work on something, “and then” it into existence with no critical eye, and when challenged on the quality, invent insult to avoid having to admit what they made sucked and needs to improve.

However, the very main reason that “and then” culture is wrong is it’s nothing more than a passive aggressive power play. Did you know that Pixar STARTED the wage theft scandal that robbed illustrators, programmers, janitors, marketing specialists, writers, and every Pixar employee of potentially hundreds of millions in wages? Ed Catmull, President of Pixar, is even entirely unapologetic about doing this. How much you want to bet when someone questioned Ed on the legality of this brilliant idea Ed fired them for not being a team player who plussed his ideas? Someone probably brought up the morality of this question to Ed and he simply went, “Well I don’t know Frank, looks like you aren’t real Pixar material. At Pixar we PLUS ideas, not shoot them down or criticize them. Maybe you should go work at Dreamworks with the other assholes?”

Of course, you’ll say, “But Pixar produces hits doing this!” First off, they follow a formula laid out by Save The Cat, which doesn’t take much creativity to produce a hit. Save The Cat produces their hits. Second, I’m betting cash money that their claims of plussing all day long are bullshit. I’m willing to put down $1000 right now that they have a hidden back catalog of total shit ideas for movies that never went anywhere and weren’t ever produced, which means they definitely don’t plus everything and are definitely using criticism. The above video is nothing more than the lies companies tell prospective employees to recruit them, not any real depiction of how they work.

The truth of every company that claims they have this super collaborative never critical creative type utopia is this utopia ends up breeding guys like Ed Catmull who take advantage of all the doe eyed Andtheners. It’s a culture that is right up there with meritocracies in their ability to turn a potentially good idea into a way to simply abuse people for not fitting in.

Another Way

The straw man reply to this will obviously be:

“Oh! So you think everyone should run around setting people on fire with insane vitriol based on every flaw in their ideas? You want to make a hostile work environment! You hate delicate little creative souls who work all day to pour their hearts into what they make and just want to shit on their precious little lives! Fuck you!”

Really? What happened to “and then…”? Hmm? If you think it’s awesome working in an environment where everything you do is applauded like you’re in kindergarten then think again. The truth is, if you actually give a shit about being good at something then you’ll know that people are blowing smoke up your ass and find it incredibly annoying. Not to mention the fact that these supposed creative utopias are never anything like they seem. Given all of these supposed utopias are powered by people I guarantee you find back stabbing, back room dealing, social manipulation, favoritism and power plays just like you do with meritocracies. Any time you see unrealistic claims of utopia you can just bet its hiding something sinister, and Pixar’s wage theft scandal is proof positive I’m right. Their work environment is not better than an honest collaborative work environment. It’s nothing more than a way to convince employees to go with any idea handed them while management avoids any accountability.

No, I do not think the inverse of ruthless constant abusive criticism for some kind of weird darwinian environment works either. Nobody against “and then” is for abuse. This claim that all criticism is abuse is just another straw man tactic to avoid dealing with honest criticism, but also calling criticism “abuse” is the belief of a child. Adults understand the difference between “I don’t think this will work” and “I think you’re a fucking piece of shit.” Nobody has the right to insult you, but you also don’t have the right to shut down their thoughts on your ideas with claims of abuse. More importantly, an actual functioning criticism proposes alternatives, which is something that’s an entire other blog post about the failure of critical theory in engineering.

In fact, I advocate a mixture of both modes of thinking to produce honestly good ideas and to kill off seriously bad ones early. Here’s how I work on all of the many, many, many creative projects I do and succeed at:

  1. Start with your idea on your own and look to improve it and mold it without a critical eye. Criticism will kill the beginning of a thought or idea, so just get it down and express it.
  2. After you’ve gone through a creative phase and you’re feeling good, it’s time to get real. Be realistic and objective about the idea. If it helps, come up with a rubric of things to look for. I do this with painting, code, and writing. I have a list of things I go through and check for that I try to avoid, but I don’t apply this rubric until I’ve got the idea out and can step back. Sometimes days later.
  3. Repeat this cycle in a kind of random walk of creating and criticizing until you’ve refined the idea. The key is to throw shit out. Not every damn idea out of your head is good. You have to kill things off and toss them out to make room for other good ideas. If you’re keeping a good log of what you’ve done you can always add it back in or turn your castoffs into other ideas. But refining means refining.

Notice in step #1 I said “on your own”? I believe the flaw of teams is that they try to come up with ideas as a team. What I believe works better is if individuals come up with ideas and create in the beginning, and then teams produce the good ideas. If you think of writing that’s how it works. I write a first draft, creating the idea and getting it about 60-80% of the way there. Then a team works on the draft to take it through a production process that makes it high quality and professional. How to do this in a team environment is the subject of an entire industry of books, so I won’t go into it in a stupid blog post, but the gist of it is that without a team to produce ideas it’s too hard to make a final professional product in many of today’s disciplines.

In the end a policy of banning criticism will only lead to everyone “plussing” every stupid ass idea, no matter how vile it is. Despite what Pixar claims, I’m damn sure they don’t operate in this utopia of perfect plussing everything that’s around. I know there’s brutal criticism from the people in charge, and the fact that Ed Catmull screwed all of his employees for years is the proof you need. However, if you’re thinking of instituting an “and then” policy then keep this last fact in mind:

Nobody buying your shit is an Andthener. Maybe in Silicon Valley you’re surrounded by a bunch of Andtheners, but the rest of the world can look at stuff and decide it fucking sucks.