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

Friday, April 24, 2009

Digital Memories.

Events of the past few weeks in the technical arena have caused more than a little reminiscence on my part, because they touch on things that sort of helped shape my technical adolescence.

First, Oracle decided to buy Sun.

It seems odd that the company whose database I have both sworn by and sworn at (depending on the time in question) has bought the company whose hardware and OS I have also both sworn by and at (again, depending on the time in question and whether or not I had slept in the last 2 or 3 days).

When Jeff Blankenburg asked on twitter how Java developers felt about the move (I have also been a Java dev on top of it all, alternately swearing at and by *that* product as well – there’s a lot of swearing involved if you haven’t noticed. Heh), I said that it sort of felt like the end of an era.

I didn’t feel like it was the end of an era because I thought Java was doomed. Oracle really likes and leverages Java, so that wasn’t a big concern. In fact, I was more concerned when they started moving Java to open source because I know what fork hell can do to a project if you aren’t lucky.

The reason it struck me so deeply was because I cut my collegiate programming teeth on Sun hardware running Solaris. I have fond memories of being in the Sun labs at OU - cranking out code (generally in xemacs, if you really care to know), chatting with my friends and classmates, alternately teaching them and learning from them, and generally causing trouble.

What came to my mind were the late night coding sessions (the labs were one of the only academic areas that never really closed, and if we found the doors locked, we had the go ahead to call the prof who eventually became the dept chair to open them), leaving quotes on the blackboard that covered one wall, and the 2am call to Papa Johns one Saturday to order half a dozen pizzas.

For some reason, the guy who answered the phone at Papa J’s thought it was a prank. He argued with me even when I offered to pay in advance. I finally got in touch with the manager, who, it turns out, was covering for the normal night manager and recognized me from all of the orders I placed at the Center for lunches (we tipped *really* well. The drivers used to fight over us.)

The manager sent the guy who answered the phone on the delivery run and included several free two liters of soda as an apology for the treatment. (Don’t worry. We were nice to the guy. After all, it *is* weird being the only academic building open 24/7 on campus.)

As for the quotes on the blackboard, some of them ended up generating entire written conversations over the course of multiple days. My favorite to post during finals week was “If you wish to drown, why torture yourself with shallow water?”

These are the sorts of things that *I* associate with Sun – learning, camaraderie, occasional crazed nights bug hunting, and generally great times in the academic/professional sense. So, like I said, it seems like the end of an era and I feel kind of sad that Sun may not be Sun anymore after this.

I haven’t even touched a Solaris box in a few years, but I still feel nostalgic. In fact, as silly as it may sound, If I get stressed while working on code, I try to picture myself in my favorite lab and it tends to relax me and cheer me up a bit.

The second event of the last few weeks stirred up its own set of feelings as well.

What event, you ask? Today, I found out that Geocities is officially dead.

Now, before you all gag and wonder why I would miss Geocities of all things, keep in mind that I was on it when it was really about the only option for free web hosting out there. We’re talking probably 1996 or 1997.

A few of my friends and I had sites there. One was in CapeCanaveral, one in Soho/Flats, one in Hollywood, and I was off in Tokyo/Tower (yes, I was off in Asia even then heh). We’d had computers for several years, but this was one of our first trips out into the internet as participants instead of mere spectators (largely because none of us had modems at home at the time. Hey, it *was* the mid 90’s after all).

Geocities may not have had as large of a direct influence on my life as the Sun labs at my alma mater or, say, #dalnet (which, if that ever disappears, I may well cry), but it still means quite a lot to me.

It sounds trivial, I know, but it really helped to get me interested in a lot of other things, and for that, if for no other reason, I will miss it. After all, we think things on the internet will be around forever (and in some sense, they may), but all too often they are lost to time or at least lost in the noise.

It is for that reason that I want to take my hat off and pay my respects to the newly deceased Geocities and the changed Sun which will continue from this day forward. While I am at it, I would also like to pay my respect and give my thanks to all of those people who have helped me along the way, both in person and out across the ether as well as those who will help me in the future.

I promise that I will try to pay it forward.

Current mood: contemplative
Current music: Melissa Etheridge - If I Wanted To

Tuesday, January 27, 2009

Print Media.

A few days ago, Slashdot ran a story about technical book publisher O’Reilly laying off people. Frankly, this isn’t a big surprise considering that everyone and their brother seem to be cutting jobs.

Even though I don’t care for the man because of a lot of the things he says, I’ll give Tim O’Reilly credit for one classy thing he’s done in the midst of this. He has posted that, if anyone has a position that they think one of O’Reilly’s laid off employees would be a good fit for, they can email him and he’ll see what he can do about referring one of them.

For that he gets some respect. That’s a genuinely decent thing to do. It’s also good business (contrary to what a lot of people seem to think).

The thing that gets me is that everyone on Slashdot was basically saying “duh. O’Reilly realizes print is dead.” They apparently think that the internet is the answer to all of life’s problems (not surprising with that crowd).

Even Bruce Perens, the man I love to hate (though not as much as RMS), got on the bandwagon, claiming that you can find all the answers on the internet and asking when the last time anyone cracked open a reference book was.

The honest answer to his question? This afternoon.

I like the internet to look up something random quickly, and I carry electronic copies of most of my books with me when I’m out since it’s a little impractical to keep a bookshelf in my messenger bag, but sitting at my desk, I really prefer paper - it's easier on the eyes, it doesn't take up screen space, I like the tactile sensations, you don't have to worry about the batteries running out, you can take it to the bathroom...

The reasons for my preference go on for a while.

The truth is that, while the internet is great for quick answers to little problems, it tends to suck for in-depth knowledge – a place where a good book excels. There are, however, a couple of problems with this:

1) A lot of people code in snippets, not knowing or really caring what’s going on other than “it looks like it works,” which is why they prefer the quick and dirty answer. They don’t care about why, just that they can plug in some code.

They are, at best, mediocre, and it shows when they run into non-trivial problems.

2) A lot of technical books suck.

As far as #2 goes, I can remember when O’Reilly was basically the gold standard of technical books. Now, however, they tend to be horrible. In fact, their Nutshell series has basically devolved into a printed version of the documentation for the technology that it covers.

The sad thing is that the last O’Reilly book I purchased, Ruby in a Nutshell, was written by the *creator* of the language and still wasn’t very good. In fact, in the notes, he admitted that it was a slightly expanded version of the Pocket Reference.

I bought two books on Ruby when I started with it – Ruby in a Nutshell and Programming Ruby by the Pragmatic Programmers. I’ll let you guess which of them is sitting by my computer right now and which of them is in a box in storage.

In fact, looking around the room, I see books by the Pragmatic Programmers, a couple of decent ones from Wrox, a few from MS Press, some from Sams, and a few others.

There is exactly *one* O’Reilly book in this room – XML in a Nutshell, and I’m using that to elevate my DVD burner off of my desk so that it’s easier to hit the eject button.

I will admit that there is an O’Reilly book that I want to pick up because it’s actually useful, but it’s been around for a while. What’s that, you ask? Mastering Regular Expressions.

Other than that, in my opinion at least, O’Reilly has been a disappointment for quite a while. Then again, there are a lot of crap technical books out there from other companies as well so it’s not just a problem with O’Reilly.

Current mood: Tired
Current music: Default – Wasting My Time

Thursday, January 08, 2009

Netcraft Confirms It.

I've been meaning to make this post for a few days now, but I've been sidetracked by a number of things that have been going on.

Dr. Dobb's is dead.

I just got their last issue last week.

Guys, I know I gave you a hard time about the typo on the front cover, but you didn't have to react *that* badly to the criticism :P

They say that they're still going to be around as a monthly section in Information Week (a magazine which I view as a waste of paper 99.9% of the time), but really they're dead.

They've been going downhill for years, so it's really no surprise to most of us that they're closing shop. It's still a shame to see it go though.

Current mood: tired
Current music: Queen - Hammer to Fall

Thursday, January 01, 2009

Happy new year.

May this year bring positive things for those who deserve them.

Current mood: contemplative
Current music: Breaking Benjamin - Here We Are