In an Insane Society, the Sane Man Must Appear Insane

October 19th, 2011

This morning I'm reminded of the quote from Star Trek series, the Mirror, Mirror episode where Kirk, Bones, Scotty, and Uhura are in a transporter accident and are sent to an alternate universe where the Federation is evil and plundering everything in their path:

In an insane society, the sane man must appear insane.

It was quoted in a movie as well, but the title of that movie escapes me this morning. Suffice it to say that I feel like that sane man in an insane society right now.

I was talking to a high-level manager at The Shop the other day, and they were facing a difficult decision: confront their own people with their lack of skills, or come up with a "story" to tell them that makes it not their fault, but the fault of others, and arrive at the same place. But it isn't really the same place, is it? In one case, the person has to come face-to-face with the fact that they aren't really doing the job they think they are doing. This is hard. It's emotional, and it might possibly even get ugly. But it's the truth.

In the other case, the person not doing their job is allowed to believe they are and able to blame someone else for the situation. That's not the same place at all, is it? Nope.

But it saves this manager the effort of having to confront these under-performing individuals. And for this manager, it seems, that's a win for them, and that seems to be the best thing to do. Sad, yes. For it's the manager's job to actually manage people. Not tell them stories. Not blame others. What is going to happen if some day the truth gets out? Not good, I can assure you. Not good at all.

And it's like this all over this place.

About six months ago, a co-worker was getting sick of the work, and I don't blame him. He started looking. I told my manager/partner about this several times over the next six months, and then yesterday he informed us all he was leaving. No surprise to me, but a huge surprise to those not listening to me. Significant loss to the firm, but they all acted shocked. I'd been telling them this was going to happen for months, and they have the nerve to act shocked.

Crazy.

Over and over this place seems to be making the most short-sighted, ill-informed decisions possible. It's almost like they want to pick the wrong decision. More often than not, they are successful in that goal, and their choice is a spectacular failure. But the real question that I keep coming back to is simple: What am I going to do about it?

I can sit here, complain/document/laugh at the insanity, I can leave and laugh all the way to my next position. I can stay and try to fix things - knowing full well that the odds of that are long - at best. What can I really do?

I'm not a partner here. I'm not even a senior manager. Heck, I'm not even a manager. I'm a coder. What can I really do? Really?

Well… I guess the only thing I can do, is either stay and do my job to the best of my ability in a completely insane environment, or I can leave. I've already asked - several times, to move our little group of two, off this floor - maybe even out of this building - just to get away from the insanity. But it's falling on deaf ears. I'm sure as much as they think I'm a pain in the neck, they feel far better with me "right here" as opposed to anyplace else.

And then I can leave.

Don't want to leave. Really don't want to, but I don't see a lot of options. I'm really having a hard time dealing with this insanity, and that's what it's really going to take to "fit in" here - become one of the inmates in this asylum. Not quite sure that's where I want to be. Would you?

Just don't know.

Trust Me, Talk to Me, or Fire Me

October 17th, 2011

I've been having a tough day for a Monday - not that all days aren't tough, but this one is really getting on me for a lot of reasons. It's probably all about childhood - isn't everything? But this morning I was really in no mood to listen to people essentially question my honesty. If I'm new at a job, and you don't trust me - and believe me, I can certainly understand that, then don't give me responsibilities that are outside your comfort zone. Make the trust and comfort of the task and the person match.

As I do more things for you, and prove myself over the course of many projects and many months, then you can either increase that trust - or decrease it as the case may be. But at no time should you as a manager feel like you have no control over the situation. You are the manager, after all. If you're uncomfortable, ask questions until you are comfortable enough to make decisions. If you never get to that place, then you have, by default, made a decision - that you can't trust me. Then I need to go. Period.

But if you talk to me and I am able to make you feel comfortable about the work, or the time or whatever it is that's bothering you, then we both come out ahead - you for asking the questions to get the understanding necessary to extend the trust, and me for taking the time to do the same. It's a win-win every single time. If I can't answer your questions, then your fears were founded, and if I can't make you feel better, then I need to be cut back - managed more closely, or even let go.

All this I'm very comfortable with, because I've been on the other side of the management table as well. It's not easy to walk the fine line of managing and allowing creative people room to invent and create. But it's all about trust. Nothing more, nothing less. If I trust you, then whatever it is that you do for me, good or bad, I'll trust that it's the very best you could have done, and no amount of second-guessing is needed. Things happen, and this is one of those times.

But if I don't trust you, then even if it's on-time, maybe you padded the times and had some of this done already. No trust means that I can't believe a good outcome even when it's a genuinely good outcome.

What's bothering me today is the fact that I feel I'm existing in an atmosphere of a near complete lack of trust. It's not something that someone will come up and talk to me about - it's about the setting of near crazy expectations of the work I have been assigned to do, and how those expectations have made it so that I simply can't be believed. If the project I'm on should have taken two man-years, there's no way I can say that now without people thinking it's just "excuses time" by me. I made the horribly niece assumption that people would know what it is they asked of me, and adjust accordingly. But they didn't.

My mistake.

I'm going to finish this project, and when it's all done and delivered, and everyone is happy, I'm going to talk to those in power and have a frank discussion about the promises made, promises broken, and these expectations. All will be taken into account in what we choose to do going forward.

Google Chrome dev 16.0.904.0 is Out

October 11th, 2011

This morning I saw that Google Chrome dev 16.0.904.0 was out, and there were not a boatload of happy folks about it. Seems there's a recurring theme of not working with twitter.com, and there's a good number of folks that are plenty miffed about it. They changed quite a few things, and it riled the masses. So it goes, hopefully, they'll have it figured out soon.

OK, PostgreSQL 9.1 is just COOL!

October 10th, 2011

PostgreSQL.jpg

OK, so I ran into what I thought was a bug in a user-defined PostgreSQL function regarding the holiday date for today. It's a Bank Holiday, but it's not a Market Holiday. I was able to prove this and fix it (temporarily) by changing the status of today's date:

  UPDATE calendar
  SET bank_holiday=TRUE
  WHERE calendar_date='2011-10-10';

and then the function I was counting on for telling me if today is a holiday started working.

So I knew the problem. But how to fix it? Well… it wasn't clear from the psql command-line how to do just that. I did a lot of googling to try and find out how to list functions, create functions, etc., and in the end, as luck would have it, PostgreSQL itself had the answer: \ef get_market_hours_for_date

The format is 'e' for edit, and 'f' for function, and then the name. If you just have the '\e', then it pops out into your EDITOR of choice for the last SQL command that was executed. If you give it the 'f' and a name, it'll pop you into your EDITOR and then let you edit the function.

Very nice!

These are the kinds of tools I'd expect from a commercial vendor, but I suppose, this is also what I'd want if I were working on PostgreSQL databases all day. I'm just really surprised and happy that these developers are thinking along the same lines. It's a great feeling to use such a fantastic database for my work - Mac and linux. It's nice to see the progress in time as well. It's really coming along.

iPhone 4S – Already a Success

October 7th, 2011

Already this morning we're seeing the success of the iPhone 4S. At 3:30 am CST I tried to order one, and the AT&T connection was CRUSHED by the volume. Apple's site was fine, but AT&T was dead. So Apple did the very Apple thing - gave me a reservation number and told me that they'd get back to me with an email to complete the transaction as soon as AT&T was back up. Classy. Always.

So now it's 9:13 am CST, and I'm seeing tweets like these:

iPhone4S Launch Tweets

which tells me two things: first, I ordered at the right time, and second: Steve was right. Grace, Beauty, Elegance, are all things people want. The talk of the App Store review process is gone… AntennaGate is gone… what's really left is one man's vision of what a phone should be.

I'm still reeling from the news, but this makes me feel like things are going to be OK.

Once Again, an Important Realization

October 6th, 2011

This morning, as I was getting ready, I realized that I was really worrying far too much about what was happening at work. In a technology all-hands meeting yesterday, the CTO presented the status and plans for a bunch of projects that are happening in the group. In fact, I think he hit on everyone that's more than a couple of days long - it was pretty exhaustive. So when I heard there that several projects didn't include the work I was doing - even though I was told my work was critical to these efforts, I got upset. Really upset.

If I'm working 13 hour days for this project, and it's not critical, what am I killing myself for? What's the rush? Why work so hard? No, I was told that this work I was doing was fundamentally important to the effort, and what's why I've been working this way. In short, I've been a Good Team Player - internalizing the external needs of the Team even though they are painful for me.

But in the show this morning I realized that there's no reason for any of this worry and concern. I'm giving it everything I can, and if it's not enough, then they need to replace me. If they think I'm doing a decent job, then I think things are just fine. After all, this is the place where it's expected that everyone be extraordinary (got this in my last review).

So I realized in the shower that there's no reason to get upset. I've been angry at management for quite a while, and in the end, the fact that they haven't fired me, or moved me onto a different project, means that they must think I'm "meeting expectations", and by their own definition, delivering extraordinary results.

I know they don't think this, but I'm tired that once again it seems that I've forgotten the most important lesson of working in a group - do your best, and if that's not good enough, then it's time to move on.

I'm ready to make them make that call.

Steve Jobs 1955-2011

October 6th, 2011

I spent a lot of this morning already thinking about the passing of Steve Jobs yesterday. I have to say, I've shed more than a few tears because of all the people I didn't know, he was the one that seemed to inspire me, and others, to do some amazing work. I secretly wished I'd be able to move to California, work at Apple, and run into him someday. But that's not to be, and I'm the one that's missing out.

There have been, and will continue to be, I'm sure, tons of thoughts and expressions about the man, and what he's meant for others and the industry as a whole. I can't provide any heartwarming or comical stories about his dedication to the company, it's products, it's people, but I spent all morning reading those by people who could. He was quite literally one in a lifetime.

My world is a little darker because he's left. I'm going to do my best to try and turn up my own light to compensate.

BBEdit 10.1 is Out

October 5th, 2011

BBEdit.jpg

Just got a tweet that BBEdit 10.1 was out with a few interesting new features. There are several that sound interesting, and they're doing a bang-up job of getting the word out on twitter and YouTube about the speed of the search and replace, and the new features. It's just that I'm not doing a ton of Mac work right now, and so I haven't had a lot of time to mess with these features, but I'll get to it. Just a matter of time.

I'm still waiting to see them put in the vanishing Lion scrollbars, as that would be fantastic in my opinion. One of the singularly nicest additions in Lion are the vanishing scroll bars. They allow you to tell what you need to know, when you need to know it - but get out of your way when you don't. Very slick.

So it's downloaded and running - just need a little time to play with it.

The iPhone 4S

October 4th, 2011

iPhone 4

Today's Apple iPhone event was, to some, a disappointment. I have to say I don't know exactly what I was expecting - other than the iPhone 4S and the iPhone 5. What I expected in the iPhone 5 I don't know. The 4S has the CPU, the storage, the camera and iOS 5, so what was I thinking the 5 would have other than a different format?

I guess in retrospect, the 4S is all I was looking for, but it makes it harder to spend the $600+ to upgrade when my 4 is doing just fine. I guess the one thing is that Joseph wants an iPhone, and so giving him my 4 makes it easier to justify the 4S.

Great products, incrementally improved. Typical Apple. Thank goodness.

Growl 1.3 is Out on the Map App Store

October 4th, 2011

Growl 1.3

This morning I saw that the Growl Team had moved off their traditional web site download system of distribution to a more commercially-viable version on the Mac App Store. The $2.00 price was really just to be able to keep things going, and I can't grudge them that. They have made some major changes - like a complete re-write of the entire codebase. They are saying that it's all about Lion now, and Growl 1.3 is Lion-only.

Additionally, there's no more Preferences Pane - it's just an app, and there's a lot of plusses to that approach to be sure. It's easier to manipulate, easier to get through Apple App Approval, and easier to update. The downside is that the new version isn't totally backward compatible, and that means that several of my apps are not exactly working 100% right with this new version.

But they'll come in time.

I have questions about iMessage in iOS 5, but that appears to be an iOS-only feature. It would have been interesting to see Apple's take on Growl-like notifications, but that seems to be off in the distance. In any case, this is a less-intrusive way to put Growl notifications in the system. Very nice.

I just hope the other vendors notice this and update their Growl frameworks soon.