Saturday, September 11, 2010

Equal Rights

Tonight, something that I believe strongly in came out in conversation. It started with Jim Holmes tweeting regarding an article written about another developer that I follow and have chatted with in the past:

“Disagree with Women-Only anything in IT. Why put up more walls? #fail RT @RWW Women-Only Programming Classes http://rww.to/aU9kme


I happen to agree strongly with this, and said so. One of the devs that follows me, however, was of a different opinion and tried to justify the opinion, only to be shot down not only by Jim, but by me and even by my girlfriend, Karyl.

He went through a number of arguments, trying very hard to find something, anything, that would validate his claim and basically ignored anything that was used to counter him. Some of them, and my more lengthy responses (which, naturally, would not fit on twitter) are here.

“In this instance, I can understand it. The men are the main deterrent to potential female programmers. Plus, then they can focus on the material rather than deflecting awkward advances the whole time.”


I disagree. The deterrent to potential female programmers are the potential female programmers themselves. Women are not the only people that get hit on in college or while trying to learn or work. The number of classes that I was in where female classmates were trying to get me to go out on dates with them was rather high and I still managed to do all of my work. Besides which, most of the women in my CS classes (with a few exceptions) were under the impression that anyone who spoke to them was trying to hit on them and that really wasn’t the case.

From my personal experience, the women in the other engineering disciplines tended to be more driven than the ones in CS and were a lot more fun. There were more girls that dropped out of the CS program because it wasn’t “fun” or it was “hard” than because people were hitting on them (In fact, I can’t think of any of the girls I knew in those classes that stopped doing it for that reason).

“So, you're saying you don't think women should be allowed to have male-free anything?”


Are men allowed to have men only anything? No? Then there’s your answer. I believe in Equal rights. We are not getting into this “some people are more equal than others” mindset. That is a crutch and causes people to strive less if you constantly tell them “Oh, that’s okay. You’re a [x], we’ll lower the bar for you.”

Screw that. I want a professional in *any* profession to be held to the same standards as any other professional in that profession regardless of gender, skin color, or any of the rest of it.

To which I got the response of asking me how many men I’ve known who have been raped.

Bad question. And this made me very glad he wasn’t in the same room with me. I have good impulse control, but rape is not a woman only issue and it is not something I take lightly (nor is abuse in general).

For the record, I’ve known two that I can think of. Men who are raped undergo the added stigma of nobody believing them because, of course, rape can’t happen to men. Ask Karyl about her friend who was raped and was accused of being the one who did it instead. It has literally ruined his life.

Add to this the fact that many domestic abuse shelters will not accept men (who can be, and more often than you would believe, are victims of domestic abuse) and you start to see why this is a hot button topic for me.

Rape is not funny. Rape is not something that should be used as an argument against equal rights. Rape is also not just something that happens to women. I’ve known women who have been molested and raped as well and I don’t find it funny from either end. In fact, the woman that I loved more than anything else in this world was raped so I think I have some insight into how absolutely fucking horrible it can be (no pun intended and strong language more than justified).

“I've never been in a situation where I felt uncomfortable because the group was dominated by women.”


I have. It was not really fun. I’ll tell you something else – that group of women was more openly sexist and offensive than I’ve ever seen a group of guys be around a woman.

I’m not excusing guys who try to coerce women into doing things against their will. That sort of thing is, in my opinion, inexcusable, but it is not limited to guys. It’s not excusable from anyone, male or female (and, trust me, it happens with both).

Jim, the other voice of sanity, stepped in stating that he didn’t buy the attitude that all male programmers did was make passes at female programmers (and I agree).

This prompted a rather predictable response by our new “friend”:

“I'm not saying we do. All I'm saying is that if that FEAR is keeping one woman out, and the fem-only class lets her in, its a win”


No. What is keeping that person out is their own fear, not reality. If you are uncomfortable learning around men, how will you feel when you get out into the real world and work on development teams which, nine times out of ten, contain men as well as potentially other women?

“I theorize that by becoming exceptional in their trade, the unease when dealing with men is lessened due to being capable devs”


You become exceptional through practice and work. That involves working with and around other people, including men. You do the work and learn from it. You also learn from the people around you. That’s how you get better at anything (not just software development).

“By that logic, a group of women is not capable of creating great programs?”


No, by that logic, people who are afraid and never strive are not capable of creating great things. Letting yourself be afraid of your very surroundings and letting that fear control you means that you will never do great things and, in fact, may not do anything at all.

Greatness is accomplished by carrying on in spite of your fears (or sometimes even because of them). Giving up and going home because they let the boogey men in their head control them never really got anyone anything.

Am I afraid sometimes? You better believe it. However, I do my best to work through it. Sometimes it works. Sometimes it doesn’t. But I’ll tell you that it’s better than letting what *might* happen rule my life.

You’ve got to try for yourself. Nobody else is going to do it for you, and even if they did, it wouldn’t mean nearly as much to you as it would if it was your own striving that got you there. Others can, and hopefully will, help you along your way, but you have to keep striving and push yourself to find your true boundaries. Then you have to work to break those boundaries.

I went on to explain why I have some of the views that I do – the fact that I’ve known women who were great and men who sucked (and the other way around), that I’ve taught and trained with martial artists of both sexes with various skills and skill levels, that I’ve known victims of domestic violence (both male and female) and that I don’t subscribe to the mindset of “men are evil and scary and need to go away” because that cheapens everyone’s accomplishments.

“My experience is that I'm an arrogant asshole, and I understand why a woman (or man) wouldn't want to be in a class with me.”


Finally something we can agree on. However, that’s a problem with you and not a problem with all men. All men aren’t like you (and for that I’m thankful).

In all honesty, folks, I don’t care if you’re a man or a woman. I don’t even care if you’re green and furry. I believe in equal rights, but that means equal responsibilities as well. If you want to bridge the [gender, racial, whatever] gap, stop using that thing as a crutch and strive. *That’s* the way to give people positive role models. Role models are created out of overcoming adversity.

You can’t create positive role models out of people that you let have an easier time than everyone else. Greatness is taken and achieved, not given and people need to realize that. It requires striving, not going easy on someone because they’re somehow different (whether real or only perceived). That only perpetuates the “I can’t do it because…” mentality.

"Freedom is something that you need to actively acquire. It’s not something that’s given with no strings attached. To be free means to take responsibility, and to prepare yourself for what’s to come."
- Charles Beams, "Eureka Seven"
The same is true of equality. In fact, equality and freedom are often very close to one another.

Don't beg for things. Do it yourself or else you won't get anything.

Current mood: grumpy
Current music: Eve 6 – Inside Out


Friday, July 23, 2010

Customer Service FAILURE

Please pardon me. I apologize, in advance, for any and all profanities which appear in this entry. Believe me, they are well and truly deserved.

A while back, the blower on the heating and air conditioning for my car went out. As I like to stay warm in the winter and cool in the summer (not to mention being able to melt the frost and ice off of my windshield), I consider getting it fixed to be of at least moderate importance. I had already tried a couple of things, but to no avail, so I was quite happy when Karyl’s father was able to diagnose the problem.

Her father is a pretty nice guy and an industrial mechanic. Thankfully, he’s also pretty good with cars, which are not exactly my strong suit. I can do a fair bit preventative maintenance and fix some problems (largely through the experience of having done them before with my own father), but a mechanic I’m not.

He even suggested a semi-local auto salvage yard where I could get the part pretty cheaply. He’d used them multiple times in the past and was generally pretty happy with the service, but hadn’t been there in a while.

Oh what a difference a little time makes.

Marshall’s Auto Parts, located in Circleville is indeed cheap. The materials cost of my part was a whopping $10. That, however, is where the happy portion of this story comes to a complete halt (at least until, I hope, we replace the heating and AC control unit so that it works properly).

The service was TERRIBLE.

They have a website where you can make sure they have the part in stock (which is kind of nice). Her father suggested I do what he had done in the past – go down, order the part, and then come back after it had been pulled. He even said we might be able to call ahead and order it before we left for there since they take credit cards.

The children at this business, however, are special and don’t like to play that way now.

I called and tried to order the part only to be informed that you have to order in person because it is “first come, first serve”. Dude, I’m offering to pay you in advance, so I *would* be first come. Take my money and give me my part.

No. And we’ve stopped pulling parts for the day. Try back next week. (It was over 2 hours until they closed for the day).

So I headed over early this afternoon, thinking that it wouldn’t be too busy in the middle of the day on a weekday. Wrong again.

Okay, most places like this are still pretty quick, so I wasn’t horribly concerned. (This is where you can openly call me an idiot. I know I did afterward.)

I finally get to order my part and get told there are 8 people in front of me, so I asked if it was alright if I left to get a couple of other things done while the part was in queue to be pulled.

No. You can’t leave. If you’re gone when we finally get to your part, and we ask if you’re there, we’ll throw your order in the trash (and he was being serious).

So, again, I offered to pay in advance, only to be refused, being told that the part had to be paid for only when it was handed to you. (Which is bullshit, but moving on)

Three hours later, they get my part. Let me repeat that. Three hours later. Three hours. *Three* HOURS later, I FINALLY get my TEN DOLLAR part for which I was not allowed to leave lest my order be tossed in the trash.

By this point I was LONG past the angry stage and, frankly (and, again, please pardon my language) I WAS PISSED OFF. Justifiably so, I think (as does Karyl's father). I was seriously ready to drag the smarmy little douche over the counter and then toss him back over, minus a few pieces (and it takes a LOT to get me to that point).

The part that takes the cake though? Toward the end of the time I had to spend there waiting for no good reason, I hear them getting phone calls about SHIPPING PARTS TO RESIDENTIAL CUSTOMERS IN OTHER PARTS OF THE COUNTRY.

Now, tell me WHY will they do THAT, yet they won’t let me pay IN ADVANCE and then just come and pick up the part? For crying out loud, I could have (and gladly WOULD have) ordered it and had it SHIPPED if for no other reason because it would have been cheaper than *my* cost of part + gas (to mention nothing of the amount of my time that you wasted and the meteoric rise in my blood pressure).

That was the point, dear readers, at which James nearly snapped and started killing people.

In closing, let me say this – if you ever need a part, do NOT consider Marshall’s Auto Parts unless you have them SHIP it. In fact, let me just shorten that to do NOT consider Marshall's Auto Parts.

And to the power tripping douchebags at Marshall’s, you have cost me a day of my life that I will never get back and went out of your way to make that day well and truly suck for no good reason (as you did to each and every one of your other customers that I saw that day). In return, I will do everything that I reasonably can to cost you business. You’ve earned at LEAST that much.

Current mood: Angry doesn’t even cover it
Current music: Soundgarden – Loud Love

Sunday, June 13, 2010


I've Moved. Can I Have a Nap Now?

I apologize for the lack of communication both on the blog and twitter the last couple of weeks. I swear that I’m not dead. I’ve just been insanely busy. A lot of things have been happening.

A couple of weeks ago, I moved to Columbus. It reminded me that I hate moving and that I have muscles I keep forgetting about.

It also reminded me how depressing it is to see the material representation of your life transformed into a small mountain of boxes with hastily scribbled notes on them like “Glasses – FRAGILE” and “Books – Computer”. It seems somehow slightly dehumanizing to see things that are important to you being just another box of stuff that you have to find space for in a cargo van.

The move itself went pretty smoothly. My cat even took it pretty well, which was a big concern for me as well as for Karyl. In fact, if you want to have a look at the cat aspects of the move, she’s been chronicling the ordeal over at her blog (link is for the first post in the series).

Now we’re just hoping that her cat calms down since the stress is causing her some health issues (or, rather, aggravating a pre-existing one). We were convinced that my cat would be the problem as far as adjustment goes, but it seems that we were wrong.

The last couple of weeks have been taken up pretty much from the time I get up in the morning until I crash at night with far too many things at once (household, professional, personal, and even just trying to figure out where the heck all of my stuff is). On the upside, all of the running around has gotten me a little more familiar with some of my more frequently visited parts of Columbus, so my GPS is spending more time in my bag than it is on the windshield.

The downside of all of the hectic running around is that I’m not really sure what day it is anymore. I actually have to look at my phone and calendar to figure out when it is and what the heck I have coming down the pipe at me right now. Thankfully, that should improve before too long as things start to get a bit saner and we get into some sort of routine that doesn’t make either of us want to run around screaming. =]

To give you an idea of how busy I’ve been, I got to take off about 3 hours one evening a week ago to unwind and play Diablo 2. It’s seriously been that hectic.

The sad thing is that, when I get the new position (which is part of the hectic day to day stuff – interviewing is easier now that I’m closer, but I feel brain fried afterward), I’m seriously considering asking to start a week later just so I can breathe and possibly catch up on sleep lol

I hope that all of you are well and that I haven’t missed anything big.

Current mood: Tired
Current music: The Pillows - Little Busters

Monday, May 17, 2010


Mentorship and Community

If you ask some of the people who know me well, you’ll find out that I’m pretty big on community in both professional life and life in general. Personally, I view it as a way to help others, be helped, and be exposed to things that you might not otherwise consider.

Since I graduated from college, it has seemed like, professionally, I’ve been on my own. I’ve had friends, but it felt like I had no sense of professional community.

From my viewpoint, it’s like I’ve been trapped in some sort of insular bubble and the only direction and inspiration for “what do I learn next” has been stumbled upon by either bare necessity of a project I’ve been working on or through running across a mention of something in an article online. This is, to be honest, a Sisyphean task and, after a while, it starts to become discouraging.

I’ve missed the sense of community, knowledge sharing, and mentorship that I had while I was in the last couple of years of high school and throughout my time in college. Due to the exposure to other people and their ideas, my own ideas seemed to flow much more smoothly and I worried less about making mistakes because there was always someone that I could bounce ideas off of or go to for advice.

Professional development seems to be so much more difficult when you feel like you’re doing everything on your own. Add to that the fact that we are inherently social creatures, and being on your own can be nerve wracking.

Last night, I had a realization: I seem to have found that sense of community and mentorship again. And it’s on…Twitter?

Okay, to be fair, it’s in person as well since I get to see a lot of the people I talk to at least once a month, but the bulk of conversations occur over digital medium (twitter, email, and Live messenger primarily).

Roughly a year and a half ago, I found CONDG online when I went looking to see if there were any .NET developer’s groups nearby (I know. Novel idea.). Their most recently listed meeting at the time had a twitter link for the presenter, so having just gotten twitter a few weeks before, I clicked on the link and checked out their stream.

It just sort of went from there.

Now I’ve gone from basically knowing nobody in the field in this geographic area (since most of my college friends in CS were from other parts of the state/country/world) to knowing a number of them and feeling much more like a person again than I did a year or so ago.

It’s nice to be part of a group of people who help each other out, offer advice, chat, joke around and hang out together on occasion, and, when needed, give a kick in the ass to get you going again.

I’ve missed the camaraderie and exposure to new things and viewpoints. Maybe even more than I realized. It’s also nice to know that I’m not the only one that experiences self doubt about their abilities and worries about failure (Even if Phil Japikse does use it as an opportunity to make a good-natured joke at my expense heh).

I try to give back as well, but I sometimes worry that I take more than I give in return. I honestly hope that isn’t the case, because they’ve all been great, and I don’t want to put any of them out. I also don’t want to feel like I’m being a bother

What brought on this realization? The feedback from my last post, mostly sparked by the first commenter, who called me arrogant. I got tweets and emails from a number of people that I follow and have met with advice and constructive criticism on both the post, aspects of my professional development, and my resume as well as assuring me that the post was not, in fact, arrogant but generally fairly sensible.

I appreciate the support, advice and critiques. Some changes have already been made to the resume (paring down some of the older experience, breaking out skills by skill level, etc) and others are planned.

As a (rather large) added bonus, I’ve started to feel a lot more social over the last year. I view this as a great thing because I basically used to be a social butterfly (as difficult as that may be for some people to believe).

Thanks again, guys. You’ve been great and I hope that I am able to return the favor in at least some small way.

Current mood: humbled
Current music: Bush – Swallowed

Friday, May 14, 2010

What I Can Offer and What I’m Looking For

As I’ve said, I’m currently in the market for a jr-mid level .NET developer position in the Columbus, Ohio area. I really dislike being a one person shop. It always feels like I spend more time hunting for new projects than I spend doing them, and that’s just not my idea of an ideal situation.

That doesn’t really say much, though, so I thought I’d put down my wants in writing in order to not only get them out for others to see, but to get them straight in my own head.

First, however, I’ll briefly list some of the things I have to offer (this is by no means an exhaustive list).

What I bring to the table
  • I have several years of experience in writing code.
  • I excel at solving problems and enjoy doing so.
  • I can explain technical issues to non-technical people.
  • I have a professional, yet relaxed attitude.
  • I write well.
  • I am adept at gathering requirements.
  • I tend to be a calming influence on the people around me.
  • I learn new skills quickly.
  • I love writing software that makes a difference to the people who use it.

What I want in an employer (the bullet point edition)
  • A place where I can learn and grow.
  • A sane work/life balance.
  • A sane salary.
  • The ability to, preferably, work around good people who really know their stuff.
  • A relatively relaxed environment is a plus


Now, bullet points are great (or horrible, depending on who you ask), but we can get into a little more detail on my wants/needs.

A place where I can learn and grow –
I honestly want a place where I can expand and hone my skills as well as get back to using some skills that I feel have atrophied since I’ve been on my own, such as leadership and presentation skills.

One of the downsides to being independent is that you have a harder time setting aside time for professional development because you always feel like your time should be spent either doing work or finding more work. You also frequently have a really difficult time getting new perspectives on problem domains.

Sane work/life balance –
I don’t expect every day to be 9 to 5 because, let’s face it, that basically never happens. There are always the occasional crunch times at the end of projects or at the end of a cycle in the project, and that’s fine. The problem is when you are expected to work extended hours on a regular basis as a matter of course.

What I do want is for the occasional crunch times to be just that – occasional. I understand that I’ll find myself staying late or getting in early if there’s an emergency, to prep for a big presentation, a sprint at the end of a project, etc and that’s fine. What I don’t want is to be expected to work for 70+ hours a week.

I love writing software (and solving problems in general). I consider it fun, but there are other things in life that need to be taken care of as well.

Sane salary –
Basically, I want a salary I can live on decently. What I’d like to be paid depends on the position. I realize that lower level positions pay less than higher level positions, and sometimes you have to take a step backward in order to move forward.

If you’re concerned that I’m pricing myself out of a position, talk to me. We may be able to come to an agreement. I honestly want to make the jump, and some things are negotiable in order to make that happen. Besides, there’s been a fair amount of variation in the salary ranges of a lot of the companies I’ve talked to (though they tend to cluster in a reasonably narrow range, so I consider that a decent indication of what I can probably expect).

The ability to work around people who really know their stuff –
This sort of ties in with and extends learning and growing, but I thought it warranted its own point.

I find inspiration from working around other people. It may sound cheesy, but it’s true. Sometimes, just being around other people is enough to make me find novel solutions to problems. Additionally, I tend to learn a lot just from observing and listening to the people and things around me and am motivated by being around people that are better at things than I currently am.

This isn’t limited to just being around experts, though. I’m a firm believer that you can learn something from everyone, so being around other people in my field (and other fields) is a plus regardless of relative skill levels.

Relatively relaxed environment –
By relaxed, I don’t mean Hawaiian shirts and Nerf gun fights. Clothing wise, you’ll usually see me in khakis and a polo or button up shirt.

Relaxed, in this case, is more along the lines of non-hostile. I’ve seen a few companies where the people in charge seem to feel the need to berate and dehumanize the people that report to them (directly or indirectly).

In my personal opinion, that’s not a way to keep good people or to keep them motivated. The world may not be sunshine and roses every day, but you shouldn’t spend every day wondering when the (hopefully) figurative chair is going to fly at your head.

We tend to work better when we aren’t stressed unnecessarily, and since I want to work to the best of my abilities, it seems logical that I don’t want to be in a hostile environment.

Naturally, a discussion of this sort could go on for a considerable amount of time, but I think that covers most of the major points of what I have and what I want. If I sound like a person that would fit in with your organization or you know an organization that you think I would be a good fit for, please feel free to contact me.

Current mood: decent
Current music: Tom Petty - I Won't Back Down

Saturday, May 08, 2010


Stir Trek 2 – Brief Review, Musings, and Mayhem
(I apologize if this is a little long, but it covers a decent amount of ground)

Over the last couple of weeks, I’ve been averaging about 5 hours or so of sleep a night due to studying, interviews, preparing for interviews and trying to get actual work done. It seems like I’m never making any headway, because the list of things I need to take care of is growing so quickly lately (but, honestly, that’s largely a positive thing considering the items getting stored in my queue).

That said, I was really looking forward to attending Stir Trek, a local developer conference. Admittedly, I was also sort of dreading taking the time off because I knew I’d feel guilty for losing the day and a half from all of the tasks I currently have. However, I knew I both needed the break and would get more out of it than the time I lost by going.

I’m glad I did.

The night before, there was a geek dinner at the food court in Polaris Fashion Place with a pretty large turnout. It was a fun and pretty relaxed event, and a nice way to ease into my “weekend”.

The conference itself was great, and full of things that I now want to look into. I stuck mainly to the web dev and RIA tracks, but wandered over into the UX talk as well.

For those of you who are actually curious as to which talks I went to, here’s the rundown:


The presentation materials should be up on the presenters’ sites in the near future, so keep an eye out if any of the synopses sound interesting.

The last session was really a toss up between the ASP.NET talk and Bill Sempf’sEconomics of Cloud Computing”. I was kind of upset that I had to chose, but that happens sometimes.

Thankfully, I had a minute to stop in before Bill’s talk and say hello in person since we’ve been speaking over twitter and MSN so much lately. I dropped off a box of tea that I’d brought for him (yes, I got to tea bag the mighty Sempf heh) and I got a copy of his new book, C# All In One to read and review.

This means that my work queue just got a little longer, but I’m glad to do it for a number of reasons - among them because it’s always nice to have quality reference materials and the fact that Bill’s a good guy. He’s also one of the many people who have been helping me on my current job search, so the least I can do is lend a hand in return.

It also means that I get to play part of my former role as an editor again, which is kind of neat.

One of the other great things about the conference was that I got to meet a lot of people in person for the first time that I’d been talking to on twitter as well as meeting a large number of new people and getting to hang out with people that I’ve known in the community for varying amounts of time.

To top it off, I finally got to repay my debt to Phil Japikse by poking him with a stick (I threatened to do it months ago, but it’s the first time since then that I’ve seen him). I also got to heckle him good naturedly a little as well as help solve a minor technical problem. =]

I love Phil. He’s a decent guy and one of the many people I’ve met since I started going to CONDG who amaze me by how much they give back in the form of time, experience, inspiration and encouragement.

To be honest, I love pretty much all of the Columbus dev community that I’ve met so far. They’ve made me feel welcome since the first meeting I went to.

For the movie this year, we had Iron Man 2. All that needs to be said is that it was amazing and under “Badass” in the dictionary, it says “See: Tony Stark. See Also: Natasha Romanoff.”

Karyl and I were going to drop in on the geek dinner after the movie, but it appeared to be pretty crowded and we were both feeling a little overloaded (the conference had 600 people registered and it’s been a while since I’ve been in a crowd of that size for that long. Add on the stress of the last few weeks, and I basically just wanted to wind down gracefully before driving out of there).

I apologize to anyone who was hoping to hang out at the dinner. I had planned to attend; I just sort of reached my stimulus threshold. Hopefully we’ll get the chance to hang out another time.

Current mood: tired, but good
Current music: Aerosmith – Deuces Are Wild

Sunday, May 02, 2010


I Have Email Again!

If you emailed me in the last two weeks and haven’t gotten a response, I apologize profusely, because I didn’t get it. I had to switch over to my gmail account because my domain email was down.

If you tried to reach me and haven’t gotten a response, please, email me again and I will do my level best to respond with all due haste.

My (now former) hosting company was great when I first signed on with them a number of years ago. For the last 6 months or so, however, service has been going downhill.

This culminated in my email going totally down about two weeks ago after sporadic periods of uptime for about a week before that as well as their servers getting hacked (again), causing my site to be defaced.

To make matters worse, they were basically ignoring any and all trouble reports, so I was stuck without my main email, which I had been using up to that point during my job search.

Not exactly the best time for your email to take a dive.

About a week ago, I changed hosting providers, and taking the advice of Jeff Blankenberg, went with Crystal Tech.

Over that week, I’ve made more phone calls and written more emails to the two companies in question than I care to think about. The transfer process was, to say the least, not exactly smooth, but it’s finally over (I hope). On the upside, I can say that Crystal Tech’s phone support is both polite and helpful, which is always nice.

Hopefully their service is just as good as their support and their data center doesn’t explode.

Current mood: tired
Current music: Jimmy Eat World – Bleed American

Tuesday, April 20, 2010


Courtesy and Professionalism – Cheap but Priceless

Yesterday, David Giard (DavidGiard), tweeted “Personally, I don't [think] there's enough courtesy in the world. 'Please' and 'Thank you' take seconds and cost nothing. If sincere, they only help

This is a sentiment that I agree with strongly. A little courtesy and professionalism can make all of the difference between someone who really looks forward to interacting with you and someone who locks the doors, turns off the lights, and tries to be very quiet when they hear that you’re in town.

Courtesy can turn a bad situation into a tolerable or even decent one.

For the business people out there, this has an impact on your bottom line even though you may not realize it. The fact is that your customers, employees, and prospective employees talk to people, and the impression you make on them really matters.

It doesn’t matter if the person you’ve interviewed is the worst possible candidate in the world. He or she knows someone who is a *great* fit for your company, and if you treat them poorly, their friends *will* hear about it and will be less likely to want to speak with you.

Additionally, peoples’ skills change regularly (especially in this industry), and in six months, the person you treated badly may be the *perfect* candidate for your company and they’ll never want to deal with you again.

If you think about this sort of thing, it should make you want to be polite to everyone you deal with.

It’s no secret that, in the last month or so, I’ve really ramped up my search for a full time development position. In fact, among other places, it’s all over my twitter feed.

Thankfully, I have a bunch of great people in the Columbus area offering advice and assistance, so hopefully I’ll be settled into a new position relatively soon. As a result, my experiences this time around have been rather pleasant.

This, however, has not always been the case. In fact, there have been a number of interviews that have been anything but.

With some, the people were decent, but the environment was not exactly conducive to getting things done – the interview that was conducted during a building expansion project comes to mind. It came with its own orchestra composed of power tools – saws, drills and even an entire jackhammer section.

True story. There was actually a wave of applause from the developers the length of the building every time the guys using jackhammers went on break. It was crazy.

With others, the environment was decent, but the people were, honestly, less than friendly. They treated interviews as though they were interrogating a prisoner. It was obvious that they had no respect for the candidates they called in (or at least for me. I can’t speak for anyone else) and had the main goal of either impressing the “candidate” with their vast knowledge of technology or trying to get the candidate to hide under the desk.

I actually took the opportunity at one of the abusive interviews to see how far I could take things into the realm of the absurd (hey, the interview was in Cleveland and I had driven three hours to get there. I wanted *something* out of it, even if it was just a little surrealist entertainment).

The sad thing is that I honestly don’t think I found the bottom of that particular rabbit hole.

In the first case, the experience was made better by the fact that the people I dealt with were great for the most part and I’ve spoken well of the company in question to other people in the area who have expressed interest in it.

The second case is a whole other matter. I forget the name of the company now, but at the time, everyone I knew in the field got a pretty full report on them just because it was *that* bad (they had even lied to me about the position I was interviewing for).

Which company would you rather work for? Which company would you rather be?

Current mood: decent
Current music: Michelle Branch – Paper Pieces

Saturday, February 06, 2010


It’s not distracting. I’m just a freak.

January’s CONDG meeting featured David Giard (DavidGiard) speaking about Microsoft’s Managed Extensibility Framework (MEF).

The technology looks interesting and I may have to look into it when I have some free time, but it’s not the only thing during the presentation that caught my eye. As stupid as it may sound, one of the things that got my attention was that, in his code samples, many of his variables were declared as var instead of using explicit type declaration.

I’d looked at non explicit type declaration before and had decided that there was no real benefit to it and that its main impact was to decrease readability. However, seeing it used rather liberally in David’s code, I thought I might want to take another look.

The MSDN documentation still left me with my original thought on the subject, so, since I follow people who almost certainly know more on the subject than I do, I turned to twitter.

The conclusion that was arrived at regarding the matter was that they were useful when using LINQ, but tended to hamper readability and introduced some ambiguity into the code that the complier might not always sort out the way you want it to otherwise.

The really neat part of the twitter exchange was that David himself ended up chiming in as well because he still wasn’t sold on it either and was wondering much the same thing that I was, having run into it in a code review that day (a few days after his presentation).

So, on the upside, at least I wasn’t the only one who thinks about/isn’t sure about this sort of thing. I consider this a positive thing because I always feel like such a noob no matter how much I learn (I’ll get to that a little later).

David did, however, have another concern as well – that his code examples were distracting attention from what he was trying to introduce people to. In all honesty, since I said I started thinking about it due to his presentation, it was a legitimate concern.

I had to assure him that it didn’t distract from his presentation, but, rather that the problem was with me (I tend to jokingly end that statement with “because I’m a freak”).

The fact is that I tend to notice a *lot* of things and retain, at least for a while, more than a little of it. This is especially true when I’m someplace where I’m already trying to pay attention.

To be honest, I used to retain almost *everything* that I ran across before I started dealing with certain stressors that tend to divert my attention more often than I’d like (this will, hopefully, change here before too long as I don’t like the way said stressors are affecting me). Granted, I tend to have problems when I’m overloaded, and one of the first things to go is my ability to remember names of people I’ve just met (faces I generally have nailed, but names are another matter, so if I forget your name, it’s not an insult).

Now, to return briefly to the fact that I always feel like a noob.

The CONDG meetings now have a short talk after the main presentation, and January’s was presented by Leon Gersing (fallenrogue), the subject of which was change.

The talk itself was very good and, with the things going on at the moment seemed rather like a cosmic clue-by-four, but the pertinent part of the talk for this entry is the fact that some of us feel like we never know enough and we’re never ready.

I hung my head and raised my hand in the back of the room, getting called out good-naturedly by Leon for it. heh

Sometimes I have to slap myself and tell myself that I’ll never know everything (I hate not knowing something - as people who know me well can attest) and that I have to just start on the project and work out the rest of the problems as they come up.

Part of the problem, I think, is that I know far too many people that know *way* more than I do, so I always feel like I'm playing catch-up. Not that being around very smart, knowledgeable people is a problem, just that I always feel so behind by comparison. =]

Once I get into the groove, I don’t tend to sweat it, but the initial uncertainty (and, at times, insecurity) drives me up the wall. It even occasionally makes me want to hide under my bed because I always feel like everyone *else* knows this stuff and I’m the only clueless one even though I know that isn’t true (and, furthermore, I know that most people tend to make this crap up as they go along while trying to look all knowing).

You know that famous interview question of “What’s your greatest weakness?” That’s mine, though I usually phrase it that I sometimes worry about the details too much, because that really is the long and the short of it (plus it has the bonus that, unlike putting it the other way, it doesn’t make me sound neurotic lol).

Current mood: tired but caffeinated
Current music: Tonic - Open Up Your Eyes

Saturday, January 02, 2010


Little Lessons

It seems like I always learn something new on any given project that I get involved in. I generally view that as a positive thing since, if I stop learning, it means I’ve started to stagnate.

A couple of weeks ago, I decided I should finally get around to writing the backup program that I’d been considering for a while. Nothing fancy, essentially just a series of system calls to xcopy and svnadmin with error checking and logging in order to backup my email, files, and subversion repositories.

I could have hard coded the commands, but that wouldn’t be any fun. Besides which, it would make it more difficult to fix if the drive lettering changed (say, if I changed computers).

Hey, I at least try to make things easy to maintain even if it takes a little longer than a totally quick and dirty solution. =]

No, I’m not going to post it on the site. There’s really no reason to because it’s a basically nothing program and I only wrote it to save me time. Now all I have to do to perform a backup is double click the shortcut to the ruby program, walk away for 30 minutes, and then burn the results to dvd after checking the log to make sure everything passed.

The interesting part of the project was the thing that I learned.

Most of the calls to xcopy went off without a hitch. Then I ran into one that I just *couldn’t* get to work. I beat my head against the problem for the better part of a day, but made absolutely no progress. The only difference between the calls that worked and the one call that didn’t was that the non-working call had a space in the path.

Xcopy “Drive1:\path_without_spaces\” “Drive2:\path_without_spaces\” /E
Worked perfectly fine, but
Xcopy “Drive1:\path with spaces\” “Drive2:\path with spaces\” /E
Would choke every time.

I tweaked my code, endlessly trying different things that might help. I checked to see if there was anything weird with system(). I even looked on google to see if I could find an answer.

I had no luck whatsoever. Even discussions on xcopy itself were no help.

After beating my head against the problem endlessly, I finally thought of something so incredibly stupid that it couldn’t possibly work – take the trailing "\" off of the paths with spaces.

It worked. It’s stupid, and it shouldn’t have caused a problem, but it did. Apparently xcopy doesn’t like paths with spaces that end in a “\” while it has no problem with a trailing “\” at the end of a path that doesn’t contain spaces.

Who knew?

It was a small lesson. Heck, it was even a *stupid* lesson, but I *did* learn something, and it was something that I hadn’t seen listed as an issue online.

I can’t have been the only one to have run into this problem, but apparently if anyone else had it, they didn’t see fit to post a note on the subject.

Current mood: tired
Current music: none

Saturday, December 12, 2009


Philosophy, Monks, and Rude People

One morning, several years ago, I was sitting on a bench, looking at a sand painting and waiting for the Tibetan monks that were making said painting to arrive.

As I was sitting there, an older woman walked up to where I was sitting and asked me “Are you Buddha?”

I wasn’t quite sure what to say. I assume that she meant to ask if I was with the monks, but it was, to be honest, a rather rude manner in which she addressed me (as though she thought I was some piece of scum there to serve her). I was being talked to as though I were some sideshow freak.

However, my other thought on the matter was that it was an interesting philosophical question.

Am I Buddha?

Well, I’m not Buddhist. In fact, I’m Taoist, if anyone really cares to know (I don't try to hide it, but I don't shove it in everyone's face either). However, if you think about it, the Buddhist concept of the Buddha nature is similar to the Taoist concept of P`u, or the uncarved block.

It could also be argued that some part of the matter which made up Siddhartha Gautama could have been a part of my bodily makeup at some point in my lifetime, so in that rather literal way, I suppose I could be considered to be Buddha.

Then you have the fact that Buddhists believe that we all have the potential to become a Buddha and that some believe Bodhisattvas walk among us, so it's possible that I am such a being (though I seriously doubt it as I am a little too snarky and sarcastic to be considered a being of pure good heh).

In the middle of my philosophical reverie, the woman who sparked it snapped at me rather rudely (even more so than previously), demanding to know if I was Buddha.

Having had enough of being treated like a piece of dirt, I informed her that I was not Buddhist, that the monks would not arrive for another hour or more and she should learn some manners.

She stormed off in a huff.

In the end, I was rather glad that I was the one who was there when she arrived. First, it provided an interesting piece of food for though. Second, if she was that snotty toward me, I can only imagine how she’d react to a bunch of “weird” guys in robes.

I saved them more than a headache or two, I’m sure. Hey, they may consider life to be suffering, but not all suffering has to be endured =]

Current mood: contemplative
Current music: Def Leppard - Photograph

Thursday, November 05, 2009


Presentations and Public Speaking.

October’s Central Ohio .NET Developers’ Group meeting was a series of “lightning talks” (15 minute presentations) instead of a single 90-120 minute presentation.

It was an interesting change of pace and, on the whole, went pretty smoothly. Granted, there were a few small hitches with changing between 6 laptops and speakers, but that’s to be expected and the problems were really incredibly minor.

I mentioned the meeting a couple of posts ago, so that’s all I’m really going to say about the meeting itself. The reason I’m doing this particular post is because of the presenter that I mentioned wanting to give some additional feedback to.

Unfortunately, I didn’t get a chance to talk with him directly. However, I started thinking that this topic might be important enough to generalize and make a blog post out of because so many of us have problems with public speaking and giving presentations.

As always, please keep in mind the words of Baz Luhrmann: “The long term benefits of sunscreen have been proved by scientists, whereas the rest of my advice has no basis more reliable than my own meandering experience.

“I will dispense this advice now.”


First off, relax.

I know that’s easier said than done. Public speaking makes a lot, perhaps even most, of us nervous (myself included even though I’ve had to do it before).

There’s not a whole lot that’s more nerve wracking than being the only person at the front of a crowd and knowing that everyone is looking at *you*. It doesn’t matter if it’s a presentation to the directors of your org, a political campaign, or a talk that you’re giving to a group of your peers. It’s always stressful.

Just remember that we’re not going to bite. Especially if it’s a users’ group or some other set of your peers that you’re speaking to. After all, we came there to listen to you, so why would we want to waste your time and ours by sitting there and heckling you (though we may occasionally joke along with you)?

For my part, I’ve done drama, had to represent the magazine I worked for at a conference (both the day of with the crowd and the night before at the dinner for the presenters) and have had to give more presentations for organization directors and management than I care to think about. Thankfully, I haven’t had to deal with being in a political campaign, but I’ve known plenty of people who have.

Even with that experience and knowing that mistakes aren’t the end of the world, I still get a serious case of butterflies and wonder how things are going to go (not to mention wondering why people are listening to *me* of all people). However, like most of the other speakers I know, I just try to make the best of it and somehow it all tends to work out fairly well.

How you relax is up to you. If picturing the audience in their underwear works for you, go for it. I’m not sure I’d want to do that with some of the groups I’ve talked to, but to each their own. Just take a breath, calm down, and be prepared to laugh off minor technical difficulties =]


Second - tailor your talk not only to the subject, but also to the group and allotted time.

Andrew, the software developer who gave the lightning talk last month that cause me to write what has become a novel of a blog post, chose to speak about Test Driven Development, a subject which I am quite interested in, but haven’t had a chance to dig into on my own yet.

He opened by saying that he was giving a longer version of the talk this month (November) and had just shortened it to fit in the 15 minutes allotted for the lightning talk. This was a pretty big mistake.

You wouldn’t give the same talk to a group of (largely) non-technical managers and directors that you would to a group of people who are going to be using and/or implementing the technology.

By the same token, there’s a lot of difference between how you structure a 15 minute talk and how you structure the same talk to last 60+ minutes. You can’t just cut off little pieces (or talk really really fast) and have it come out well – especially on a technical subject.

For a 1 hour talk, you can go into at least a little bit of depth, but in 15 minutes, you really have to follow the KISS mantra (and I don’t mean “They call me Dr Love”). In the case of Andrew’s presentation, the general outline of the talk should have probably looked something like the following:

1) Explain what Test Driven Development is
2) Explain why you want to use it
3a) Show a simple test or two by itself (probably no more complex than “Hello World” level stuff for this)
3b) Show the result of the test by itself (notably, probably a FAIL – we hope anyway)
4a) Show the code around the test
4b) Show the result of the test+code (We should hope that this one will PASS)


Instead of the above, in the interest of shoehorning what he had been designing as an hour long talk into 15 minutes, Andrew basically skimped on 1, killed 2-3, and did 4a&b with examples that were far too complex for the time allowed (or for an introduction level presentation, really).

In fact, he spent most of his presentation time mucking around with SQL and SQL Server as well as fighting with the web page he was using as an example. While this may have been alright for a longer presentation (depending on how he did things, but even then I would have went the KISS route), it really didn’t work for a 15 minute presentation.

In all honesty, he could have completely cut out the SQL and website and, instead, just written a few simple functions to show how to write tests for code and what the results should look like even in the longer presentation.

The end result was that most of the people in the room were looking at each other and wondering what was going on.

This could have been greatly alleviated if not eliminated altogether by doing the last thing I’m going to cover here.


Third – Rehearse.

You really need to do a number of dry runs of your presentation to make sure that you have the kinks worked out of the technical aspects, can make it fit reasonably into the time allotted, and actually know what you’re supposed to be saying/doing next.

Ideally, you would do your presentation a few times by yourself with all of your equipment and then, once you think you have it down, grab a few friends or colleagues and try it out on them as a sort of dress rehearsal, eliciting feedback before you give the “real” presentation.

It’s amazing how many problems can be prevented or corrected by just going over a presentation a couple of times. The major one, apart from timing issues, is that other people can point out things which aren’t immediately obvious to you such as parts of a presentation that may be confusing to others while they sound perfectly reasonable to you.

Think of it as a sort of peer review for your presentation instead of for your code. It’s the same idea, really.

So, having said all of that, it really boils down to three things – relax, be prepared (including being prepared to answer questions), and try to have a little fun with it. It will work better for you and your audience will thank you.

Current mood: Not bad =]
Current music: Depeche Mode – Everything Counts [Live]

Saturday, October 31, 2009

Sunday, October 25, 2009


Developers, Memes and Swag oh my!

It seems that life really *is* a series of internet memes.

As usual, this past Thursday was spent at the dev group meeting. While we were eating pizza before the talks started, one of the guys started dumping a parmesan cheese pack on his cheese pizza.

One of the others asked him what he had, so he told the guy. Being a smartass (as so many of us are, but not generally in a bad way), I couldn’t resist.

“Yo, dawg! I heard you like cheese, so I put cheese in your cheese so you can cheese while you cheese!”

Which was responded to with a Kanye meme followed by one of the guys saying he’d pay me $5 to run up during the first presentation and interrupt it.

“Yeah, I can see that. ‘Yo, I know you’re doing a presentation, and I’mma let you finish, but John Kruger’s presentation was the greatest one of all time!’”

It just sort of ended up going from there.

No, I didn’t take the bet lol

Get us away from the internet and we still do overused internet memes. Go figure. heh

All in all, the talks this time were decent and I picked up a few things to look into. As an added bonus, I ended up winning a copy of Visual Studio Pro. Since I’ve been running standard, this is a nice upgrade.

After thinking about the last presentation for a while and letting my thoughts gather into something that vaguely resembled a useful collection, I decided to jot down some notes so I could give the presenter some feedback. Unfortunately, there isn’t any contact info for him on the CONDG page.

It’s a shame, because I think he could really use the feedback. It was pretty obvious that he wasn’t used to speaking to a group and there were a lot of places where his presentation could be refined (he’s planning on lengthening it and doing a full version at another meeting).

If anyone who goes to the CONDG meetings is reading this and knows Andrew Halowaty’s contact info (the guy who did the TDD talk), I’d appreciate it if you’d let me know so I can pass on the feedback.

Current mood: tired
Current music: Stone Temple Pilots – Interstate Love Song

Wednesday, October 14, 2009


Happy Birthday.

I miss you

Thursday, September 17, 2009



It’s ALIVE! Well, okay, it’s actually DEAD, but it’s HERE.

I’ve been tempted to do this for a while, but have resisted until now.

Once upon a time (2005-2006 to be more precise), I was the executive editor of an open source enterprise magazine called o3.

It was an interesting trip and I got to speak with a lot of cool people because of it. Unfortunately, it didn’t work out.

The readership was good (500,000+ people in over 140 countries not counting the numbers from the internal distribution at IBM, which I don’t believe we ever got), but the ad revenue just wasn’t there.

It was sort of a classic catch 22 – the advertisers didn’t want to pay until we’d been around for a not inconsiderable amount of time, but I couldn’t exactly keep going without getting paid since it took up so much of my time. Sadly, this sort of thing happens in life.

You learn from experience and try to come out better for it on the other side.

What does this have to do with anything, you ask? Well, I’ll tell you.

The magazine has finally been declared officially dead.

It’s been rather zombie-like for quite a while (the site even disappeared for a few months at one point), but every time I thought it was all over, there was some new stirring over there. Now, however, it has been stated that the company that bought the magazine isn’t going to continue funding.

On its twitter feed, it was stated that, while the site was not going to be updated, it was going to remain online. However, given its past disappearance and the fact that the site, in my personal opinion, looks *horrible* after the redesign, I’ve decided to host the issues of the magazine on my site.

This is, largely, I think, just to prove that it really existed and that I had a part in it instead of it simply being an entry on my resume and a couple of pdf printouts of the articles that I authored.

So, with all of that said, if anyone actually wants to see the magazine issues, you can look under the “Writing” section of my site for the link, or you could just click here =]

It was released under a Creative Commons license, so feel free to pass it around to your friends if you want.

Current mood: tired
Current music: Loreena McKennitt - Marrakesh Night Market

Saturday, July 18, 2009


It's ALIVE!!!!!!

In case you haven’t noticed, the redesign of the site finally went live about a week ago.

I’d planned to have it rolled out about a month ago, but things kept coming up. Since it wasn’t a huge priority, the redesign kept getting pushed back. Now, however, it’s up and running.

I admit it. I was bad and rolled it out at around 3pm instead of waiting for the middle of the night, but I didn't think there would be much of an issue. Besides, I'd gotten sick of it not being up yet heh

The frames are gone (huzzah!), replaced with CSS and XHTML so it makes everyone’s lives easier. It’s easier to update, easier for search engines to index, easier to navigate, etc.

You should also notice that there are a number of new graphics on the site in order to provide visual cues and break up the flow of the formerly all-text content.

Everyone seems to agree that it looks quite a bit better than it did before.

The only page that wasn’t touched in the redesign was the html version of my resume. That will still be done in Front Page because laying it out otherwise is a pain in the rear, but I can live with that. It opens in a new tab anyway, so it doesn't interfere with the rest of the site's design.

I should mention the resources used in the redesign:

The basis for the site’s CSS came from Stylin With CSS, which has all of the files available here

Most of the icons came from here

And my South Park-like character (which I’ve been using forever) came from the South Park Character Creator.

If you run into any problems, please let me know and I’ll see what I can do to fix them. It’s been looked over by a few people, but there’s always a chance that something got overlooked.

Current mood: tired
Current music: Def Leppard - Hysteria


Slice of Life.

Sometimes things happen that I just find myself wanting to share. This is one of them, taken from an email from Karyl.

“Robert (a co-worker) and I were discussing the amazing batman nipple armor and why it needs to have nipples.

I said maybe they shoot lasers.

He decided if he were a criminal, as soon as he saw lasers shooting from batman's nipples, he'd stop right then and there just to never have to see that again. lol”


Current mood: tired
Current music: Def Leppard – Pour Some Sugar On Me

Monday, June 08, 2009


I swear I’m not dead.


No, I’m not dead. I just feel like it since it’s been a bit crazy lately (as evidenced by the fact that I’m writing this at 1:30am).

Nothing horribly earth shattering, just the standard insanity really. Though somewhere in the middle of everything, I’m working on redoing my site in XHTML and CSS instead of the abomination that it currently exists as. heh

Hopefully it should be up in the next week or so since I can’t exactly devote all of my time to it with everything else I’m doing.

To give you an idea of how little I’ve been sleeping lately, I apparently slept through the carbon monoxide alarm while I was at Karyl’s after the .NET dev group meeting. This, for me, is weird since I tend to wake up at *everything*. Thankfully it was a false alarm and I didn’t die. :P

On the upside, I got a great gift from Karyl for my birthday – a pair of well made Chinese ring daggers. Good steel, good temper, and great balance. They really feel alive in the hand. I have to say that they’re rather impressive and a joy to use.

Yes, I am, among other things, a blade geek. You should have figured this out by now. If nothing else, the sub heading of the blog should have been a clue. =]

Current mood: tired
Current music: Greg Kihn Band - The Breakup Song

Thursday, May 07, 2009


Just A Reminder.

This Saturday, May 9th, I will be out for part of the day. Seeing as how it's my birthday and everything, I thought I'd take part of the day off.

You can still contact me via email. I'll get it that day, I swear (unless something untoward occurs, of course).

As always, in case of emergency, I may be contacted via phone. Friends and those with whom I have fallen out of regular contact are also welcome and encouraged to call, no emergency required. The number is on the contact info page of my website as it has been for quite some time. =]

Current mood: somewhere between calm and restless
Current music: Seal - Don't Cry