Too Far

Painting image of Joan of Arc
Painting image of Joan of Arc (Photo credit: Wikipedia)

It’s the breaking point:  the moment when someone has pushed you too far and you know that the rest of your time with that person will be spent managing as you find a way to make your exit.

The moment you realize you’ve had enough is so awkward because, usually, in addition to feeling angry and possibly embarrassed or ashamed, you are asking yourself “how the FUCK will I get out of this.”  (If this is happening in your head, how censored are you really going to be?)

So then you start assessing how this is going to go down, how you’re going to make your escape and possibly let the other person know that you are D.O.N.E. This is when ideas of revenge start flooding through your head and you make a list.

Contemplating the list gives your rational brain a split second in which to punch through the other side and keep your anger from boiling over.

 

It’s a split second that can determine how much longer you will live with someone, how much longer you will continue in your present job or how much longer you will sit in a chair at a conference.

These situations usually involve a compromise in dignity.  Professional life seems especially rife with personal indignity because the stakes are high.  If you have a mortgage or aren’t sure how you would otherwise make money…yeah.  Work or even peer situations in our industry can require checking your dignity at the door and putting up with some awful shit.  Maybe you hate yourself for it and maybe there really isn’t a good way out even after you assess all of your options.

 

And then you get to that moment with a boss who keeps pointing out what they feel are your numerous personal failures while you’re sitting in the middle of a crowded open office with people swirling all around you in oblivion as the insults fly or you’re stuck listening to someone at a conference on or off of a stage who is saying things that offend you so deeply you just want to jump up and scream, ENOUGH!!!

 

What happens next?

 

Here is what I did:

 

I had just moved to the Bay Area and was attending my first tech Meetup in San Francisco.  It was exciting to finally talk to some people and to participate in the San Francisco “tech scene.”  I noticed that there were even a few women in the audience which made me happy.  There were 2 speakers on the schedule and the second speaker was in the middle  of his talk when he cut to a slide of naked male parts.  You know what he said?

 

“This is San Francisco, I’m sure we’re all ok with this.”

 

I was not ok.

 

I was disgusted and embarrassed.  I looked around at everyone else looking around.  My internal conversation went something like this:

 

Angry Marlena: I’m gonna stand up and scream at that motherfucker that IT IS NOT OK!!!!!!!!
Friendly Marlena: Shut up!  You came here to make friends!  Who will want to be friends with you if you shout down a speaker at this tech talk where you don’t know a soul?
Angry Marlena: (Heavy sigh) Fine!  But I’m gonna stand up anyway and just STARE HIM DOWN!
Friendly Marlena: Would you shut up! That’ll just make you look crazy.
Angry Marlena: $%^^%$$%^&(&%$%^&*(*^%$#$^&**&
Friendly Marlena: %#$%^&J#$@#$#&^((^$#&*^%$#%@#%^%^&*&$

After another 2 minutes of mortification, I noticed that the bus I needed to catch would be arriving directly across the street in 15 minutes, so I got up and quietly exited.  It was a while before I came back to San Francisco for a Meetup.

 

But that’s not my only example.

 

A few months later, I was at an internal corporate conference (for someone other than my current employer), sitting in one of those “seating areas” with some co-workers.  The conference had just wrapped up and we were all sitting around being pretty quiet as our energy was at a low ebb.  Through the thin veil of fake-conference-plants behind me, I overhead a conversation.

 

“But how do you get the motion of them so that they’re nice and bouncy?  Like you just want to grab ’em?”

“Oh, there’s a library for that.  I love using it for 3-D tits.”

 

People who know me will know exactly the look that was on my face.

 

The conversation continued and I kept doing my best to let it go.  I was not in the best place with my job at the time, and it would have been horrific timing for me to rock any kind of boat.  This made it hard to have a realistic perspective in the moment.
Also, as an aside, I’d just like to say that I LOVE California for making people at larger companies take an online workplace harassment course created by the state.  With the B-movie actors and the hysterically cheesy script, I laughed my way through when I took it, but there have been so many times when I’ve been glad that I took it and glad that my co-workers have also taken it.  It set the right baseline.

Back to the conversation about how to create the best virtual female parts.

 

I tried to be quiet. I did. But I wasn’t.  I jumped up, turned around and screamed, “WOULD YOU STOP TALKING ABOUT ME???!!!!!!!”

 

The guy turned around with the most freaked out look on his face and he screamed back, “NO, NO, I’M NOT TALKING ABOUT YOU!!!!”

 

That was the end of it.  Was there a better way to handle this?  Of course there was!  But, the split-second opportunity for my rational brain to make a better assessment was not long enough.  I guess this was me finding my voice, and even though I’m not 100% proud of what I did, I’m glad that I did something because if I hadn’t said something, I would have been bottling my rage at this incident for the next unfortunate person who told an inappropriate joke in a professional situation.

 

And that’s the double-edged sword that gets plunged through your heart when you’ve been pushed too far:

  • If you don’t do anything and stay quiet, you bottle your emotions up for later which means you’ll be even more rage-tastic the next time something similar happens even if the offhand comment isn’t as cut-and-dried or your boss is making the only fair point he’s ever gonna make.
  • On the other hand, if you do say something, plenty of people will say you’re a crazy paranoid freak on a rant and you just might get fired (in Joan’s case, burned at the stake).

At this point, I’ve been through enough to know that no matter how bad things get immediately after you say what you need to say, even if you lose your job or popular opinion is not on your side, at least you’ve said your peace and let it go.

 

My thoughts are with Adria Richards.

Enhanced by Zemanta

Welcome to the Walled Garden: When leadership is really just bullying

holes in the garden wall
holes in the garden wall (Photo credit: Badly Drawn Dad)

There is a person in tech, let’s call the person Engineer X, who thinks I am a blight on the industry of software and that my opinions deserve to be seen nowhere other than inside of a black hole.

 

This happened after a really awful conversation on twitter that I won’t be talking about here.  Let’s just say that it happened, and it doesn’t really matter if anyone was right or what either of us said.  For Engineer X, this culminated with blocking me from their twitter and removing the link to my blog from their much viewed blog roll.

 

For me, it began a genuinely awkward couple of months.  I got in trouble at work as my then-boss thought and still thinks Engineer X hung the moon.  I showed up at a small conference typically attended by Engineer X (Engineer X was away that year) and had to introduce myself, for the first time, to people who knew ALL ABOUT the whole twitter fight.  Between my boss’s anger and my own personal anxiety, there’s not much I remember from that conference that wasn’t awkward, and it was no one’s fault but my own.

 

Eventually, though, I moved on and realized that it didn’t matter that much because there is a whole community of people who have been left behind in the wake of Engineer X publicly denouncing them, even threatening physical violence in public against them for the opinions they have expressed about software.  One of my friends tweeted to me, “Welcome to the Walled Garden.”

 

In this age of extended contact through blogs, twitter and other social sites, it’s much easier for anyone to interact with someone they view as a “leader,” and we do.  I’ve actually become pretty close friends with some of the bloggers and people from twitter I followed and originally, idolized.  Sometimes, however, it can be much harder to get a real picture of the people we idolize, and sometimes that picture is vastly different in reality from what we think it will be as we build a pedestal for our uninformed perceptions of these people.

 

I’m a big believer in forming my own opinions about things, but when you start following people on twitter and they start following you back, not to mention having conversations with you, it can be easier than you think to relinquish control over your own thoughts and opinions.  Twitter is always on and fairly asynchronous.  Thus, while I initially thought Engineer X was amazing and a thought leader, when things went so far downhill, so quickly, it hurt even worse because here was someone I had really looked up to telling me that my opinions were worthless.

 

It was upsetting for a while.  Having a harsh conversation in public is unsettling, but everyone has their own personal tipping point.  When this happened to me, I went back over what happened and found that while, in some ways, I had acted rashly, there were good reasons for doing what I did, and I wouldn’t take it back today, even if I could.  There was even a point at which I tried to apologize for my part in it to Engineer X and it didn’t work out at all.  I guess there are some people in this world I’m not meant to get along with and this person is one of them.

 

We all have favorites on twitter and in the software industry.  We all have our false idols.  We hold them up as better versions of ourselves.  Maybe they are who we want to be “when we grow up.”  The truth is, they are all humans.  They say things they don’t mean, they talk out of turn and I’m sure that there is a time, every now and then, when they take out anger and frustration on someone undeserving, just like every human does when we are at our worst.  In this age of blending professional life with personal faults and idosyncracies, where do we draw the line and how much should we be willing to forgive?  How bad is it ok for Engineer X to be?

 

Personally, I’m happy to have this person out of my life, but it still hurts when I see them dump on other people I care about.  What’s even crazier is that there is this weird silently understood reaching out that happens when Engineer X dumps on someone.  This is how often and how widely the person is known for dumping on people.

 

I hope we’re on the edge of a polar shift in software and in social networking.  The “No Asshole” rule has been read by plenty of people and we even have industry segments such as conferences beginning to recognize the importance of emotional safety.  This stuff matters and it makes me happy that it is slowly, but surely infiltrating our culture.

 

It’s time to recognize that we live in a world where our personal and professional lives mix more than ever and that this usually happens in a good way.  But, also, we deserve better than to have bullies in charge of thought leadership in software (or anywhere really), (and before you hold up Steve Jobs, I’d like to remind everyone that there was exactly one Steve Jobs, he is deader than a doornail and you are not him).

 

This blog post comes with an ask.  My ask is that you, dear reader, commit to standing up when you see someone getting bullied on twitter, at a conference or wherever and, even if the bully is someone with influence, letting the bully know that you don’t approve and that IT IS NOT OK.  If you end up being the person who steps out of line because you’re human like the rest of us, at least make the effort of a sincere apology when you are ready.  It will be humiliating and it might not be well received, but it is important to try.

 

As for people like Engineer X who don’t seem to understand how to not bully others, I believe they are in a slow process of building their own walled garden because, eventually, they will block out everyone who’s opinions don’t seem as perfect as their own.

Enhanced by Zemanta

If you do testing, you need more monitors.

Here I am at my desk, doing some cross-browser testing.  You’ll notice that I’m surrounded by screens.

three monitors
3!

I’ve been fortunate because I’ve insisted at my testing jobs that I have two or even three monitors and I have never been turned down.

 

Having more monitors leads to better testing because:
More supported browsers are open and easy to compare
More sessions are open so it is easier to see cause and effect problems
I can have more than one or even two or three users signed in with different permission levels.
Even though there are still several browsers open, I can also have some terminals open for grepping through log files and taking notes or logging bugs.

 

In the world of web application testing, this is the difference between noticing something and having it obscured behind too many screens where you will never see it.  In fact, if you have to switch to another tab or swipe to another space on your Mac YOU ARE TOO LATE.  The bugs are gone and laughing at you beneath your fingertips.

 

We live in a time of “do more with less” and, let’s face it, testing is usually where the money dries up.  It is easy to fall into the trap of thinking you will be seen as greedy if you ask for another monitor, but it makes the difference between being a good tester and being a great tester.  If your team really wants you to find all the bugs, they should make it possible for you to SEE THEM.  Believe me, they will crawl across your screens faster than you ever thought possible.

 

How do you ask for more monitors?

 

The three situations I’ve encountered from easiest to hardest (and naming no names):

 

If you see a monitor no one is using, just take it and hook it up.  This is exactly the time to ask forgiveness instead of permission, and the truth is some places really don’t care.  Hook it up, find some bugs and mention it to your boss.  On the positive side, if no one is using the monitor, you’ll be putting a resource to use that would otherwise be wasted.  At the worst, you might have to give it back and endure the “we have an allocation spreadsheet” talk from I.T., but if you can show someone the benefit before it’s taken away, you’ve got your case for more monitors started.

 

Ask in your job interview – when you are negotiating for salary is the time to ask for any special equipment you will require.  Ask for a laptop and not one, but two additional external monitors so that you have a total of three.  If the person on the other end balks, be sure you understand exactly why and be very clear that you will not find as many bugs if they don’t honor your request.

 

Here is a vga to usb adaptor I’ve had success with in the past.  The company seems to update their drivers for Macs more quickly than others vendors.

 

If you work at a place where developers (even developer interns) automatically get two monitors, argue that everyone doing cross-browser testing should get an extra too.  I’ve actually done this before and credit the group I was working with and the boss I was under for taking the argument to his superiors.  In this type of workplace, however, where management isn’t too dear with what they give to developers to get their job done, it only stands to reason that they would want those doing testing to have what they need too.  If you need to make a case, you might want to get some developer collusion going and have one of them test with you for an hour or so.  That’s usually all it takes for people to judge the effectiveness of more browsers.

 

If you work at a place where no one has an additional monitor, it is possible the assumption will be made that you are setting a dangerous precedent which means everyone will want more monitors. Go ahead and laugh but there are places where you will hear this.  If you happen upon this situation, strap on the guns and BE THE WICKED TESTER.

 

If better testing is dangerous, then I wanna go down in flames.

Flaming Skull
Flaming Skull (Photo credit: Tortured Mind Photography)

 

Enhanced by Zemanta

How’s it going with Tracker?

Pivotal Tracker
Pivotal Tracker (Photo credit: Wikipedia)

It has been nearly 3 months since I joined Pivotal Labs and the Pivotal Tracker team.  So far, the experience has been great.  While most of my time is spent writing email replies helping people get to know Tracker, I’ve also done plenty of testing and even committed a tiny fix. In short, I’ve been doing whatever the team needs done and it has all been fun.

 

There is plenty to write about with Tracker.  Aside from selling what I personally think is a great tool for managing software projects, there is how the Tracker team operates.  Obviously, we use the tool we make, but there’s another layer that is firmly grounded in the culture of trust I have found at Pivotal Labs.

 

Starting with this blog post, Tracker on the Agile Continuum, I am working along with my teammates at getting the Tracker Team’s story out.  You might want to follow the Tracker blog because I’m not sure how often I plan to do “content pointers.”  This is because I am more of a fan of having actual content in my posts, and besides, If you like my post, you might like some of my Teammates’ posts as well.

 

There are some phenomenal writers on the Tracker team, and next week, we’ll be welcoming another great writer and tester, Lisa Crispin, to our team.  Tracker’s collaborative energy is ever rising and I hope that by combining the building of an awesome tool with writing about our experiences, we can disseminate even more of that energy.  Working with it every day has been invigorating and I’d like to say thanks to all of my teammates for that.

 

Although the question in the title frames this post of how it’s going for me at Tracker, I’d love to hear about how it’s going for you with Tracker.  If you send an email to tracker at pivotallabs dot com, chances are, I’ll be the one who replies.  Send me your questions, your frustrations and your bugs!!

 

Enhanced by Zemanta

A List of Distorted Thinking

I own a piece of paper which came to me through the network of mindfulness classes, meet-ups and meditation sittings that exist in the Republic of California.

 

For today, I am posting it verbatim.  It is precious enough to me that I want it preserved forever on the internet.  If I have to type it up and post it for that to happen, so be it.  I just want it to be out there and I predict others will also see the truth in it.

 

There is also a reason for my timing.  Markus Gärtner, author of the newly published ATDD by Example (and tester of Amazon’s I18n encoding) has recently posted on some of the fallacies involved in contextual testing.  What he writes about seems awfully close to distorted thinking which is not surprising given the fact that we are all human.

Being human means that if you have a bad lunch or some cloud system goes down which keeps you from your testing, the physical reaction of frustration leaves you very open to distorted thinking.  In the case of testing, some of this distorted thinking seems useful for uncovering test ideas, and yet we also need to recognize when it’s time to stop catastrophizing and time to start collaborating with our teammates.  If we can recognize the distorted thinking we use for test heuristics, perhaps we can also recognize when it is time to leave the distorted thinking behind.  Polarization is for formal methods…not friends.

 

Without further ado:

 

Filtering:  You take the negative details and magnify them while filtering out all positive aspects of a situation.

 

Polarized Thinking:  Things are black or white, good or bad.  You have to be perfect or you’re a failure.  There is no middle ground.

 

Overgeneralization:  You come to a general conclusion based on  a single incident or piece of evidence. If something bad happens once, you expect it to happen over and over again.

 

Mind Reading: Without their saying so, you know what people are feeling and why they act the way they do. In particular, you are able to divine how people are feeling toward you.

 

Catastrophizing:  You expect disaster.  You notice or hear a problem and start, “what if’s: what if tragedy strikes? What if it happens to you?”

 

Personalization: Thinking that everything people do or say is some kind of reaction to you.  You also compare yourself to others, trying to determine who’s smarter, better looking, etc.

 

Control Fallacies:  If you feel externally controlled, you see yourself as helpless, a victim of fate.  The fallacy of internal control has you responsible for the pain and happiness of everyone around you.

 

Fallacy of fairness:  You feel resentful because you think you know what’s fair, but other people won’t agree with you.

Blaming: You hold other people responsible for your pain, or take the other tack and blame yourself for every problem or reversal.

 

Should:  You have a list of ironclad rules about how you and other people should act.  People who break the rules anger you and you feel guilty if you violate the rules.

 

Emotional reasoning:  You believe what you feel must be true automatically, If you feel stupid and boring then you must be stupid and boring.

 

Fallacy of Change: You expect that other people will change to suit you if you just pressure or cajole them enough.  You need to change people because your hopes for happiness seem to depend entirely upon them.

 

Global labeling:   You generalize one or two qualities into a negative global judgement.

 

Being right:  You are continually on trial to prove that your opinions and actions are correct.  Being wrong is unthinkable and you will go to any length to demonstrate your rightness.

 

Heaven’s reward Fallacy:  You expect all your sacrifice and self-denial to pay off, as if there were someone keeping score.  You feel bitter when the reward doesn’t come.

 

There are a few of these that I recognize a little to comfortably and I’m guessing that this didn’t quite make it into the Myers-Briggs.  Who are you?

 

Enhanced by Zemanta

Credo Work: A few bits from Software History

The Cathedral & The Bazaar
The Cathedral & The Bazaar (Photo credit: Hades2k)

Even though the software credo I am writing is a personal thing, I’m not writing it in a vacuum.  We are all writing the history of software and, at this point, the history of computers and software is big enough and old enough to have it’s own corners and back alleys.

 

In this post, I’ve researched into some questions about computer & software history. I’ll be writing about some events that were important in my corner of computers, some of moments which were not the best, and the event I would most like to have witnessed.
Who are some of the important people or events in your particular area of software and what did they contribute.

I’ve already blogged about The Ultimate Nerd and my ultimate nerds so I’ll be focusing mainly on the events in computer and software history that has meant the most to me.

 

The fight between Internet Explorer and Mozilla
I may have just left Mozilla as a corporate employee, but Mozilla and its mission are still very much alive to me.  If you don’t understand what the whole fight for the open web is about, it is worth Investing 40 minutes of your time to watch Mitchell Baker talk about the history of Mozilla.

 

Back in the nineties, I remember listening to NPR every day for news about how the lawsuit between Microsoft and Mozilla was proceeding.  I hope that, at some point, a book is written about the history of Mozilla and some of its projects.  I had chills more than once as I watched Mitchell Baker give this talk on the history of Mozilla.  A lesson she learned from the Mozilla project and her most memorable quote from this talk is something I will carry around with me until I die, “Leadership depends on who will follow you.”  (It’s at 11:30 if you wish to listen for yourself)

In fact, the fight isn’t over.

 

The blossoming of the open source software movement
The theology of the open web and open source software is deep water which I’m not expecting to plumb in a couple of paragraphs, but if you give yourself the time to really dive into the history and its ideas, you will be rewarded.

 

If you wish to wade into these waters, I highly recommend reading through The Cathedral and The Bazaar by Eric Raymond.  It is beautifully written and I think I must have highlighted half of it.  Although there are frequent references to the creation of Linux, the paper itself is timeless like K&R or Unix Shell Scripting.

 

Reading through this paper, I could see some of the groundwork for agile being laid.  There is a spirit of egalitarianism coupled with a “need for speed.”  Raymond mentions in a few places that it is important to “release early, release often.”  He also writes about the very inclusive development philosophy of Linus Torvalds which was counter to the more exclusive “cathedral” model of isolating a few geniuses and letting them polish the software creating a longer release cycle.

 

This actually deserves a longer post and critique in the context of what we know about open source today.

 

The signing of the Agile Manifesto

Looking at the number of people who were present for this event, I will never understand how they were all able to agree on the document itself.  It appears to me to be one of the greater examples of consensus.  The fact that what’s in the manifesto meant enough to these guys to get together and agree on it sends a strong message.  I consider myself lucky to swim in this every day at Pivotal Labs and I hope my blog helps you push further with it in your own professional life.

 

Historical Software Defects
These are the moments in software history that are not the greatest but they have valuable lessons to teach.

Therac-25
The, “primary reason should be attributed to the bad software design and development practices, and not explicitly to several coding errors that were found. In particular, the software was designed so that it was realistically impossible to test it in a clean automated way.”

 

The Therac 25 was designed to automate the delivery of radiation therapy to cancer patients.  Tragically, it sometimes injected patients with levels that were too high, even tragically high.

My software engineering teacher, Dr. Susan Duggins, first introduced me to this in our software engineering class. It’s important because it highlights that testing should be involved earlier in the software process and that building software is not just about typing out the code.  I am in love with the idea of ecosystems as they apply in software and in open source.  This legal case points the way towards software occurring in an ecosystem.

 

The Mars Rover
Imagine that you’ve spent months working on a small vehicle that will land on Mars.  Imagine the pressure of knowing that many millions of dollars has been spent for you to do this work.  It’s a crowning achievement involving your team and other teams as well.

 

Imagine that the Rover lands and doesn’t work because you’ve been programming in standard measurement units, but an external team you’ve been working with has used the metric system.  I would have cried for days.

 

The failing of the Mars Rover demonstrates the power of good communication and how major defects can occur without it.  If you are a tester and you sometimes feel like the team therapist because you’re trying to get developers to talk with each other, I have news:  You are not alone in feeling like a therapist.  If you ever wonder if you are doing the right thing or sticking your nose where it doesn’t belong, think of the Mars rover team.

 

If you could only witness one moment in computer or software history, what would it be and why?
For this question I am brazenly cheating.  I’d like to watch one of the great visualizations being drawn just to see the tools that were used and the place where it was being drawn.  These had to be hand drawn as there was no machinery to produce them.  I’d like have a look at the instruments used to make the measurements and the drawing implements.  I’d like sit in the chair that William Playfair sat in or watch Charles Joseph Minard explain his visualization of Napoleon’s March.

 

This concludes my look at software history for my blog post, but it’s brought up some threads I’d like to push further.  I’m not quite finished reading and writing about “The Cathedral and the Bazaar.”  I’m also not finished with “Leadership depends on who will follow you.”  It’s a funny thing about these credo posts.  They tend to open more doors and windows than I have time to close.  I don’t mind leaving them open, however, as this is letting in some fresh air.  Wherever you are, I hope that when you get to the end of my post, you take a minute and just…breathe.

Enhanced by Zemanta

Pivot!

PIvotal Tracker Icon for Fluid

In a few weeks, I’ll be joining Pivotal Labs to work on the Pivotal Tracker team.  I’ll be mainly handling support requests and helping with some testing as well.

What drew me to Pivotal?  After all, I’ve got a job as a Software Engineer in Test at Mozilla working with Selenium tests all day every day, what more could one possibly want?  Judging by the number of recruiter emails I get, a Software Engineer in Test working with Selenium all day can pretty much right their own ticket, can’t they?
Well, yeah, and I <3 Selenium, but it’s just one part of testing.  In fact, writing Selenium tests is just one aspect of making software.  I’m ready to own up to being a specialist who knows a lot about testing and automation, but I’m also a generalist who helps make software.  At one point, I thought I only wanted to work on test automation infrastructure, but I’ve since learned that I prefer working with a product team.
This all came about while writing the credo posts that have pre-occupied me since January.  I’ve learned that I love writing more than any other occupation and that participating on a team making software is more important to me than identifying as a tester.
This change will move me into a world where I toss out my own self-imposed label of “tester” or “automator” and throw my bucket of skills at a highly collaborative software team.  In letting go of being “the tester,” there will be other skills that I now get to exercise:
  • Being a great teammate.  While this is important at Mozilla, I expect even more emphasis on this in the tightly coupled, rabidly agile environment of Pivotal Labs.
  • Since Tracker support is 100% email (plus whatever y’all throw me on twitter), I get to use my communication & writing skills as a primary part of my job.
  • The x-factor skill which isn’t an obvious skill in software, but will be crucial for support is having a developed sense of “mindfulness” or non-judgmental awareness.
  • This is all in addition to flexing my technical skills at bug isolation.
Despite leaving Mozilla, I still have quite a fondness for the company, its mission and my teammates there.  As a parting gift to them, I have stolen the following anonymized excerpt from deep within the bowels of irc.  I hope it gives you a chuckle and some encouragement to, “whisper to the fox:
FirefoxLvr404: come to think of it sweatsbac0n, I’ve seen you blogging, but I haven’t seen you blogging about how opensource html5 makes you opensmile
FirefoxLvr404: how much more delightful canvas web technology do you fucking need?
sweatsbac0n: *laughs*
sweatsbac0n: what the hell are you talking about?
FirefoxLvr404: I’m talking about firefox enriching your happiness & defending your freedom by exposing webgl & websockets APIs on top of a lightning-fast javascript engine
FirefoxLvr404: and all you do in return is treat their animonsters like DIRT
FirefoxLvr404: I hope you feel <yourself proud=”true”/>
sweatsbac0n: a little bit
sweatsbac0n: <yourself proud=”true” proudness=”15%”/>
FirefoxLvr404: I bet you assumed that blue mass was the world
sweatsbac0n: You mean it’s not?
sweatsbac0n: Is it an egg of some kind?
FirefoxLvr404: it’s the cold lonely heart within all of us
FirefoxLvr404: that can only be warmed by having a fox wrapped around it
sweatsbac0n: *laughs*
FirefoxLvr404: a firefox, warming your chest cavity.
FirefoxLvr404: making you whole again.
FirefoxLvr404: whisper to the fox, sweatsbac0n
FirefoxLvr404: wind your arteries gently through its fur
sweatsbac0n: Wow. I’ve never felt closer to a browser before.
FirefoxLvr404: I should hope not.
FirefoxLvr404: You deserve better than any other browser
sweatsbac0n: it feels so wrong. and yet….so right.
Enhanced by ZemantaIndeed…don’t forget to update your Firefox today and did you know that Pivotal Tracker let’s you have as many public projects as you want and 5 private ones as an individual for free?

Credo Work: My Many Manifestoes

Prologue of the Code of Hammurabi
Prologue of the Code of Hammurabi (Photo credit: Wikipedia)

 

 

 

 

Trust in your calling, make sure your calling’s true

Think of others, the others think of you
Silly rule golden words make, practice, practice makes perfect
Perfect is a fault and fault lines change

I believe, my humor’s wearing thin
And change is what I believe in

“I Believe” by R.E.M.

 

These are some words from a song I listened to on repeat in high school.  When I listen to it now, I hear some irony in the lyrics that I don’t remember hearing before.  We get handed so many rules in our lives.  When we are younger, many of us are taught about different creeds and rules at our parent’s chosen place of worship.  When we begin our professional lives, we might encounter mission statements at work or within our professional network.  What do we with all of these?

 

For this credo post, I’m examining some of the manifestos, mission statements and declarations I’ve learned from and used in my life.  Some of them are historical, some are from jobs and some are from teh tubez.

 

The Golden Rule:

Do unto others as you would have them do unto you.

This rule sets the bar for my behavior in all aspects of life.  It just doesn’t get any more basic than this.  When someone treats me like crap, this rule is what pulls me back and helps me center myself.  It also leads me to the second rule in life.

 

The Code of Hammurabi:

An eye for an eye, a tooth for a tooth…

The reason why I’m including this is because it’s an example of how not to treat people and a code that I learned about and decided to toss out.  If someone screams at me, this doesn’t give me the right to scream back and only makes a bad situation worse.  I think that the Code of Hammurabi is, in actuality, a great way to escalate a situation from bad to worse.  As the saying goes, “if we all followed the Code of Hammurabi, the world would be toothless and blind.”

 

The Declaration of Independence:

This one may come as a surprise, but if you take time to read it, I think you’ll see why I’ve included it here.  It was written 236 years ago, but people then had many of the same basic wants that we have today and at work, even.

 

Here’s my favorite bit, “We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness…That whenever any Form of Government becomes destructive of these ends, it is the Right of the People to alter or to abolish it.”

 

This is all about personal empowerment.  The people who wrote this were far from perfect, but they made quite a strong and enduring statement here.  Not only is it ok to want liberty and happiness in your life, but it is your right as a human.  This is strong stuff.  If the government is crushing your liberty and path to happiness, it is your right to change it.

 

It’s very easy for life to drag you down and tell you that you should be content with having a roof over your head, a flush toilet in the bathroom and decent beer in the fridge, but this document suggests that there is way more to it than that.  We have a right to find happiness and contentment in everyday life.  This includes our jobs even if they are in the tech industry.  In software today, we’re often expected to work crazy hours for a release or do our best to work with programmers who are brilliant assholes because their code is so fantastic.  I don’t think so.  It violates our right to happiness and ultimately creates software that is harder to maintain.

 

But that’s not the end of it.  There’s also an implication in the Declaration of Independence that if your rights are being violated, it’s on YOU to do something about it.  For this reason, if I see shitty software practices, I tend to stir the pot.  In some places it’s welcome.  In other places, it’s not welcome.  In the places where it’s not welcome, I know I’m not welcome either.  These truths I hold to be self-evident.

 

Agile Manifesto:

We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

There are several reasons why the Agile Manifesto is my “go-to” document when it comes to software and also when it comes to framing my own credo.

  • It is short and memorable, especially “Individuals and interactions over processes and tools.” If someone asks me what’s in the Agile Manifesto, I don’t necessarily have to look it up. When I look at the list of people involved and then see how boiled down this Manifesto is, I know that there must have been some very interesting conversations about what to include and what to leave out.  That fact that the people involved were able to come up with something that is at once concise yet filled with meaning is quite an accomplishment.
  •  Instead of talking “beliefs” this is a statement of “values.”  I noticed that the Software Craftsmanship manifesto which seems to be sprung from the Agile Manifesto is also a statement of values instead of beliefs. This gives both more flexibility because a belief seems more black-and-white but a “value” can happen on more of a sliding scale.  My sliding scale of value in the Agile Manifesto might be different from yours.  Maybe when you think of the Agile Manifesto, you think of “Working software over comprehensive documentation,” first. We can still share these values and it’s all good!
  • The content squarely places emphasis on humans and their patterns of interaction as being important to the making of software.

The Atlassian Core Values:

Open Company, No Bullshit

Build with Heart and Balance

Don’t Fuck the Customer

Play, as a team

Be the Change You Seek

Although I no longer work at Atlassian, their core values still resonate strongly with me.  As is the case with the Agile Manifesto, they are succinct, memorable and from the heart.

I especially like that they included “play as a team.”  The team work ethic I experienced at Atlassian was magnificent and has now set a high expectation of teamwork for me.  Maybe it’s just my personal stereotype, but I noticed collaboration and teamwork seems to be an understood commodity in Australia more so than in the United States and especially Silicon Valley (Note: I differentiate Silicon Valley from San Francisco).  Although I hear that Silicon Valley is what it is today because it had an open culture in the early days of tech, I’ve seen enough exclusivity and competitiveness in valley culture, that I’m convinced it needs a few lessons on collaboration and “building with heart and balance.”

These core values remain one of Atlassian’s competitive advantages, and if they stick with these, I’m sure their established freight-train of success will continue.

 

Thus concludes my look at manifestos, values and mission statements.  I’ve been writing down my beliefs and have seen the list grow week over week.  It looks like there will be “value” in distilling them down to something short and memorable.  Although a credo is supposedly a statement of beliefs, writing them as values gives them more flexibility so I plan to reframe some of the belief statements I’ve made as statements about what I value. There are more than a few of my belief statements centered around humanity in software, but I might also have a think about the heart of software.

Enhanced by Zemanta

Credo Work: A few of my ultimate nerds

Previously, I blogged about “The Ultimate Nerd.”  In this post, I will introduce you to some people who make my list of Ultimate Nerds.  The only rule I made for my list is that I’m not writing about people I know personally.  I’ve done this to force myself into doing some research and thinking through the reasons why each of these people have made the list.  There were people who I initially thought were no-brainers that came off and people I added much to my own surprise.  It will be interesting to come back to this list in a few years and see how things have changed.

 

Español: Bjork en Jalisco.
Español: Bjork en Jalisco. (Photo credit: Wikipedia)

Bjork
Fans of Bjork won’t be surprised to see her on my list.  She left “has a good beat and you can dance to it” somewhere in the last millennium in favor of risking weird crazy experiments that don’t always work out but can be quite inspiring when they do.  Whenever I read about her projects, it’s not just about her singing or coming out with a new album, it’s about some new technology she’s exploring for making her music.  ReacTable?  Check!  Tesla Coil?  Check!  Swinging pendulums?  Check! Check!!  This is someone who sees technology and pushes it through music.  In my dream of dreams, she and Jack White have a love child.  But that’s another blog post.

Charles Joseph Minard
There are so many reasons why Minard makes my list of ultimate nerds.  Aside from being a pioneer in the field of data visualization, he’s a study in sticking with what you want to do even if it’s not something those around you care about or immediately understand.  He earned his living as a civil engineer and retired as a superintendent for a school of roads and bridges at a French university. It was only during his retirement that he started producing visualizations.

Charles Minard's 1869 chart showing the losses...

Beyond the fact that his visualization of Napoleon’s Russian campaign is ground breaking work, this is something he created at seventy-eight years old. There is so much focus in tech on completing your most important work in your twenties or maybe early thirties at a stretch, and it’s bullshit.

While Minard could have chosen any number of subjects for his visualizations, he chose to visualize the loss incurred by war.  Looking at his flow map of Napoleon’s Russian campaign the horrific losses of troops are immediately visible.  Minard has set an example of visualization as humanitarianism that I intend follow with the open data available on today’s web.

 

Eric Schmidt
In addition to being the former CEO of Google, Eric Schmidt wrote the forward to one of the few “business books” that managed to hold my attention, Artful Making.  You can see Chris McMahon’s blog about it here.

Recently, James Whittaker wrote a post about why he quit Google.  In the post he talks about the culture of innovation that Schmidt fostered at Google and it’s right in line with what I read in Artful Making.  In the testing world, Google has recently gone through an exodus of A-talent in testing.  It’s quite telling that a good number of the folks whose talks I most enjoyed at the last Google Test Automation Conference have quit the big G.

By all appearances, the company is undergoing a lot of change and seems to be embracing more of a top-down management.  Seeing this change and looking at the “leadership” I’ve experienced in my own career has shown me that it is much more challenging to embrace the path of trust and letting smart people do what they will than it is to throw on the black turtleneck and go all Steve Jobs on people.  Screaming may have worked for Steve Jobs, but those who decide to follow his leadership path should take a hard look in the mirror and ask themselves 1. Am I really that brilliant?  2. Am I living in the same context?  (Hint: the answer is NO.)

In my own work life, I often hear ideas that I myself would not reach for.  I work at saying, “let’s see if this will work out” instead of “you are freaking crazy.”

Eric Schmidt makes it onto my nerd-of-nerds list because he had the audacity to hire smart people, trust them and let them go.  Look at what they built. The ideas about software and software testing that came out of Google under Eric Schmidt’s leadership changed me and my career forever. I suspect I am not alone.  We need more leadership like this in software and software testing.

 

Fernanda Viégas and Martin Wattenberg
These two people are a dream team of data visualization.  Although they both do solo work, they work mostly as a team.  In fact, Google hired them as a team and they lead Google’s “Big Picture” visualization research group.  Although their work is always gorgeous, it’s also thought provoking and always has a solid basis in data.  Their first collaborative project, a visualization of Wikipedia, highlighted the controversy amongst some of the pages which, to be honest, I’d never stopped to consider before.

abortion on wikipedia
http://www.research.ibm.com/visual/projects/history_flow/gallery.htm

The artist statement on their website reveals how connected they are to what they do.  Although it’s worth reading the whole thing, (it’s not that long, actually), here are a few of my favorite bits:

“…our artwork complicates and subverts a tool that is largely used by the business and military elite. Unlike these traditional uses, we believe visualization to be an expressive medium that invites emotion.”

“Eventually we start to ask questions that can’t be answered by direct observation.”

For me, this team is an example of being open about collaborative work they do to move technology and mankind forward.

 

Ward Cunningham
There are a few reasons why Ward Cunningham makes my list of ultimate nerds.  He’s the father of the wiki which is a tool I consider mandatory to be effective for exploratory testing and can also be a framework for automated tests.  He helped lay the groundwork for design patterns.  He was also involved in the writing of the Agile Manifesto which is something I frequently reach for to remind myself about the human aspects of software.

Currently, Cunningham is a fellow in the “Code for a Better World” program at Nike where he oversees the Smallest Federated Wiki project.  This is a really neat project as the focus seems to be creating a community of wikis that can talk with each other.  It is also completely open and available on Github.  You an look back through some of the closed issues and see the constructive way in which Ward engages contributors to the project.

Part of the skill for maintaining longevity in a tech career seems to be the ability to simultaneously have a vision but also the ability to break that vision down into pieces small enough to implement.  Cunningham’s engagement with the idea of a wiki over time has shown me what this looks like.

 

So that’s my list of Ultimate Nerds.  In these people, I see what I wish for myself reflected back at me.  There are themes of collaboration, creativity, experimentation and longevity.  It’s easy to get burned out in this industry, but we are surrounded by fantastic mentors and role models if we choose to seek them out.

Last Fall, I ran a half-marathon.  Everything after mile 8 happened through a wall of exhaustion, but I stuck it out.  When I made it to the finish line, there were people lined up outside of the barricades on the street, cheering all of the finishers on.  I ran over to one side and got high-fives from anybody who would give me one, and ended the race feeling ecstatic.  When I feel burned out or when I just don’t know where I’m going with my tech career, it will be easy enough to picture these people lined up and ready to give me a high-five.  Now, there’s a visualization.

Enhanced by Zemanta

Credo Work: The Ultimate Nerd

Through this process of building my own software credo, I’ve been taking liberties with the Unitarian process of building your own theology.  For this post, I’m taking an ultimate liberty and switching the chapter on examining my personal theories about “ultimate reality” to examining my concept of the ULTIMATE NERD.

To begin this exercise, I’ll examine my take on the stereotype of nerd and “ultimate nerd” during these various phases of my life:

 

  •  As a child
  • As a young adult
  • As a Computer Science major
  • Now

As a child
Let’s just get this out of the way, because we all know it’s coming:  If you grew up in the U.S. during the ’80s, it’s highly likely you share a youthful vision of a definitive nerd with me.

English: An illustration of a stereo-typical &...

It’s quite difficult *not* to associate “nerd” with the nerds portrayed in the movie “Revenge of the Nerds.”  The stereotype was pretty abstract for me and didn’t change that much for a long time.  As I got older and went through high school and college…well…the first round of college, a nerd meant an unattractive man with glasses who liked computers.  There’s no depth to this stereotype, but that was to change…

As a young adult

If you lived in Atlanta or even possibly other places in the Southeast during the 90’s, chances were that your ISP was Mindspring.  This had a big impact on my ideas about nerds.  As I began to cultivate a healthy respect for computers and even began dabbling in programming, Mindspring became it’s own cultural nexus in my hometown of Atlanta.  I swear they must have blasted the lunchtime 80’s radio show, House of Retro Pleasure, at lunchtime in their offices since half of the song requests came from Mindspring employees.   Calling their tech support was fun!!!  Nerds were no longer the cardboard cutouts of my youth.  They were now friendly, vibrant people with enough intelligence to work with computers.  My vision of the ultimate nerd switched to a guy my age, slightly gothy with a dark sense of humor.

As a CS Major
AND THEN…I enrolled in a CS program.  Did I think of myself as a nerd in my Programming 101 class?  Not really.  I was learning C++ and conquering Computer Architecture but there was always that guy in the class who had owned a Mac or Commodore since he was 4 years old.  It is really hard to claim street cred when you are the only girl in a class and struggling to make a B (sometimes I made A’s but not always).  This eventually changed when I attended a Grace Hopper Conference and saw a presentation on what we see when we think of “nerds.”  I realized, I had assumed for many years that to be a nerd, you have to be male and/or have snuggled up to a computer like it was a security blanket every night since infancy.  It took this presentation to help me let go of those particular stereotypes.

Now
“Nerd” is definitely a stereotype and a label. As with any stereotype, it can be used for good or for bad, but in my case, I see it as a positive label and one that I’m happy to own.

I believe a nerd is someone with a deep understanding of technology, but it doesn’t end there.  A nerd is someone who has a deep understanding of technology and who also understands the connections between technology and real life.  As for “deep understanding of technology,” that can be parsed forever and I’m sure there are plenty of nerd fights about what’s more technical.  I’d rather focus on the second half of this because it means wanting to share technology with others.  What good is all of the technical knowledge in the world if you’ve locked yourself away, sneer at everyone you see as “less technical” and refuse to explain anything to them.  Good luck with that.

A nerd is someone who gives their Mom an iPad or who loves making crazy websites and having their friends play with said crazy websites.  They might wear glasses or they might not.  They might be transgendered or they might be a family guy who wears khakis and a plaid shirt everyday.  They might live in Silicon Valley, Conyers, Georgia or Mozambique, and keep in mind, this is just my version of a nerd.  Yours might be different.
The Ultimate Nerd
An ultimate nerd is someone who embodies these qualities I consider to be “nerdly,” and takes them further.  Ultimate nerds not only have a deep understanding of technology and a willingness to share it, they change what’s possible and they don’t have to put people down to do it.

This significantly narrows the field, but that’s ok.  There are plenty of asshole nerds out there who have dazzled us with one thing or another while treating the people around them horribly.  I demand more than that from anyone I consider a leader or “ultimate” anything.

While “nerd” is a label and a stereotype, it holds relevance for me because it describes something I found in myself at the end of a wild and uncertain journey.  The idea of an “ultimate nerd” points me towards places I want to go in my career but haven’t yet reached.

In my next credo post, I will indulge in labeling a few people as “ultimate” nerds.  Hopefully, they’ll be ok with that.