Jason in a Nutshell

Jason in a Nutshell

Jason Baker  //  Just another random geek. Visit my homepage at http://jason-baker.com

Follow me on twitter: http://twitter.com/jasonsupdates

Oct 10 / 12:18pm

The "free electron" programmer

I have to say that I really liked reading Rands in Repose's excellent blog post about "free electron" programmers.  Unrelated side note:  Did you know that Simply Hired has a graph showing the median salary of these kinds of programmers?  Apparently the median salary is around $78,000.

At any rate, I feel that this is a subject I can add to.  I say this because I consider myself a free electron.  And I'm not saying that to be cocky either.  It's just that Rands's description of the free electron is almost a word-for-word description of the Architect (INTP) or maybe the Mastermind (INTJ) personality type.  I just so happen to be an Architect. I think that people with both of these personalities were almost born to be programmers.  They're naturally inquisitive and love nothing more than to understand complex systems.  But they can really be destructive if not dealt with properly.  And they're so rare (about 1-5% of the population) that many people may simply be unaware of how to deal with them.

At any rate, here is a list of general pieces of advice to get along well with your free electron (in no particular order):

Listen to them

Alright, so I lied when I said this was in no particular order (at least for this point).  This is the single most important thing to do to get the most use of your free electron and to keep your free electron happy.  Yes, we come up with some rather zany ideas that seem to not be grounded in reality.  And a lot of the time, that may be true.

But you also need to understand that free electrons have an unmatched ability to understand complexity.  This means that oftentimes, they may understand something you don't.  And sometimes, it is difficult to put complexity into words.  Thus, what seems like a zany idea to you might actually be a perfectly rational way of looking at things when you understand all of the details.

But you shouldn't just listen to them when they're right.  You also need to give them thoughtful consideration when they're quite obviously wrong too.  Nobody likes not being listened to, but free electrons hate it worse than anyone else.  And more to the point, they're driven to make people listen to them by whatever means are available.  If this leads to an overly long and drawn-out discussion of whether to use camel-casing or underscores, then so be it.

Be logical

A lot of people will come to the conclusion that free electrons are hard to get along with and inflexible.  However, this is a person who hasn't learned to frame their arguments properly.  A lot of people tend to put things in emotional terms.  Emotional arguments have little impact on free electrons.

Remember how I said that free electrons hate not being listened to?  Responding to a free electron's arguments with emotion is equivalent to not listening to them.  However, you will find that a free electron is willing to listen to arguments about how their idea is the stupidest thing you've ever heard as long as you can present logical reasons why.  

Conversely, they're likely to not take others' feelings into consideration in discussing things.  Therefore, you need to understand that if they say something that comes off as insulting, they probably didn't mean it as such.  If this bothers you, it is helpful for you to point out when they're being rude as long as you do so calmly.

They may not realize how talented they are

Remember how I said that there are two personality types that can be free electrons?  Here is the area that differentiates them.  Masterminds tend to be very much aware of their talents, so this section doesn't really apply to them.  Architects usually aren't.  They assume that every programmer can understand what a monad is just by reading the wikipedia page on them.  Sometimes, you just need to get them to slow down for the programmers who don't spend their weekends writing compilers for fun.

They need direction sometimes

Free electrons tend to be focused on the big picture.  However, they're not very detail-oriented.  This means that they tend to be great at getting an overall framework for a solution set up.  They tend to not be very good at putting the finishing touches on things.  Thus, free electrons tend to be good at starting projects.

This is all well and good, but sometimes you need them to stick with something.  Typically, a free electron will want to move on to something else when they feel they've learned everything they can from the current project.  You can help to counteract this effect if you can point out other interesting things that are still left to do in the current project.

You have to be careful with this approach though.  If a free electron is forced to work on a project they find uninteresting, they will find a way to make it interesting.  You don't want to assign them to a little modification of one method just to find out that they've changed your piece of software's entire architecture.

...but most of the time you should just leave them alone

Free electrons are very autonomous individuals.  They'll probably dislike pair programming and hate micromanagers.  But that's fine because free electrons can do amazing things with little to no direction.  When teamwork is required, you should keep interactions with the free electron mostly at the high level.  If there's too much tedium involved, they'll probably turn very toxic very quickly.

Also bear in mind that free electrons tend to keep their thoughts to themselves.  In other words, if it seems like there are 10 levels of intricacy behind everything they say, it's because there is.  There are two things that can cause this:

 1. If your free electron is an Architect, they could very well assume that those 10 layers of complexity are obvious to you.
 2. They may just not feel like explaining it to you.

While number 2 makes free electrons sound like snobs, take a moment to think of the world from their perspective.  As stated, free electrons are ridiculously rare.  That means that they've spent their entire life trying to explain their way of thinking to people who will probably never be able to understand it because they just don't think the same way.

This leads them to unconsciously come to the conclusion that explaining things to people is hard and avoid it at all costs.  This makes getting the full story out of a free electron a bit like pulling teeth.  The best approach is to show some initiative.  Get them to talk about those subjects in normal conversation.  Chances are, they'll be more than happy to share if they feel you're genuinely interested in the subject and not just asking about it because it's your job.

They can't do it alone, no matter how much they claim otherwise

Free electrons can do amazing things that no other engineer can do.  But they have weaknesses that need to be balanced out.  This means they need good managers to help direct them and good engineers who can make up in the areas they lack.  The best free electrons are the ones who realize this.  Don't expect them to ever admit it to you though.
Loading mentions Retweet

11 comments

Oct 10, 2009
Nicholas said...
What a load of self-indulgent crap.
Oct 10, 2009
Chris said...
The previous comment is just hilarious. There's this well articulated article, full of insight and reflection.

And then there's that comment. I LOL'd. Jason, you should disable comments on your blog. Hide your email address somewhere so that people who really need to tell you something have to go look for it, invest some energy.

Oct 10, 2009
Salohcin said...
I have a feeling Nicholas is not an INTP.
Oct 10, 2009
Jason Baker said...
I suppose he also didn't read the part about not using emotional arguments. That said, I'm pretty thick-skinned. I can take the abuse. :-)
Oct 11, 2009
Dan said...
Weird, this sounds almost exactly how I would have described myself 3 years ago.

I have since sickened of corporate political culture and prefer to teach English instead of code. I wrote a program that analyzes executables and automatically reduces the code flow graph in a binary, and have an idea for a radical new compilation strategy.

Oct 11, 2009
user said...
To Nicholas' point: are the readers here more likely to be free electrons or managers?

Free electrons may be only 1.5% of the general population, but of the segment that reads programming blogs on the weekend, I bet they are a much more significant fraction.

Instead of telling me that my boss is an idiot for not keeping me entertained at work, tell me how I can effect the change and be recognized for my rare genius so they give me more interesting problems.

Oct 11, 2009
Important Reminder from an INFP said...
These are indeed good tips for people who want to reach out to a rational person who loves the big picture. They will be helpful to people in understanding just why they clash. But I don't think they are the proper solution.

However, each personality type is inherently different and often has problems interacting with the others. You may not realize this, but the Myers-Briggs types include about four different types that are "maybe one percent" of the population, and eight types that collectively make up about ten percent of the population according to Keirsey. There's more than one type that thinks in a radically different way from the rest of the population, and each manner of thinking is just as valid.

Finally, these types merely explain the natural inclinations of that personality type. There is nothing that prevents the subject from learning to understand and interact with others. No type is so important and so crippled that it requires others to bend over backwards to accommodate them.

Do not expect people to change their ways to interact with you. The people who surround you may be just as rare, and even if they're not, they are just as essential. Having people understand you is important, but if you don't understand them, then there's an unhealthy imbalance in the relationship.

This is probably why the Nicholas called your post self-indulgent. You've merely talked about how managers can change to suit you. You briefly discuss how this class of people is rather bad at wrapping up projects and staying on task. And then you ask everyone to acknowledge this and change their business to make life easier for you. That's not a personality, so much as an attitude. I sincerely hope that this is a result of you attempting to focus your article rather than your sincere belief.

But let's add in a hypothetical situation. As a Healer (INFP) who works as a software architect and is very interested in the relationships between employees, if I was in charge of you I would attempt to use your strengths rather than force you to live in your weaknesses. But work requires that we sometimes shoulder tasks that are not our specialty. If you refused to bend on something like this just because you weren't good at it, I would indeed call you out on being "self-indulgent" and "full of crap" in the nicest way I could.

And if you, being the logical person that you are, refused to understand this and at least admit to a needing more effort, I'd probably kick you to the curb. Being bad at something is one thing, but refusing to get better is another.

But this is all hypothetical, and I assume you already know this. But I'll still post it so that some other person doesn't read your article and think it gives him free license to be an ass.

Oct 11, 2009
Jason Baker said...
@INFP - these are all good points.

However, I half agree and half disagree with you. Should any one person make others bend over backwards for them? Of course not. However, it is definitely important for people to go out of their way to understand other peoples' motivations and desires. This is true whatever your personality.

Heck, if anyone were to post something similar about other personalities, I'd be happy to read it.

Oct 12, 2009
Yon INFP said...
Jason,

That is exactly the point I wished to make. As always, when working with other people, the onus of understanding is upon one's self. It seems like you are already aware of this. I merely wished to comment in the form of an addendum for your readers who may not be as balanced, more than anything.

It's important to know the optimum situations for each employee, and prepare the best possible environment. However, it's also important for the employee to realize that if he/she is not also attempting to integrate, then no effort to please will be sufficient. Finally, when the pressure is on, it's difficult for even the best managers to maintain the ideal environment. Anyone who can accept this should do rather well, regardless of personality difference or position. I guess managers just seem to get the short end of the stick in online discussions because bad managers are far worse than bad employees.

Oct 14, 2009
As an INFP myself, I didn't find this post to be self-absorbed. Rather, it was making a specific point: Suggestions for understanding and relating to this personality type. As a member of a similar minority, I find that often members of the "majority" personality types identify some of their own typical traits as "the norm". They in turn expect everyone to conform to this "norm". Failure to do so is seen as just that, a failure.

My own experience is one of spending a lot of time adapting to the will of the majority. Unless one has exceptional circumstances that enable one to maintain isolation from differing personality types, it is simply an unavoidable necessity. However, it's not always easy, and a dearth of reciprocity in this effort can be extremely wearing and, not infrequently, invalidating.

I was close friends with a strong INTP. She had chosen her own way from an early age, including eventually losing a number of relationships. As a result, she was working -- perhaps some might say belatedly -- on better understanding what was going on in the heads and hearts of people around her. I mean, seriously working at it. But it didn't change who she was, and what really motivated her, nor what really dismotivated her. She made genuine effort to meet other people halfway, but she still needed them to traverse the other half of that distance, so that she could keep at least one foot in her comfort zone.

If they didn't, she'd reach her breaking point and cut them off. At least in the short term and on an individual basis, she was very capable of going it on her own. I see this post as an attempt to avoid such circumstances.

P.S. I chose my user name long before this post came up. ;-)

Oct 14, 2009
Jason Baker said...
@electron - I agree. One thing that I've learned is that no matter how frustrating things are for me, they're just as frustrating for the other person. I'm just trying to spare the other person some time and energy.

Leave a comment...

 
To leave a comment on this posterous, please login by clicking one of the following.
Posterous-login     twitter