One of the really neat things about working in the software development industry is that we have the ability to be as engaged with other people as much as we want or not.

That is, we have the ability to chat with people via Twitter, IRC, or Skype, and we have the ability to learn and educate other people through blogs, screencasts, meet-ups, and so on.

But all of this comes at a cost: We can get near instant feedback while in the process of giving a talk or after people have viewed a course that we spent hours preparing and editing.

Case in point, I recently received some feedback that said something along the following:

You speak in lightening speed with copy/paste codes.

Perhaps I do talk fast (though I deliberately try not to do so), and I certainly do not use “copy/paste codes.” But anyway. I digress.

Years ago, this would have been something that would have seriously bummed me out. I mean, here I am pouring my energy into trying to help other people learn something and it wasn’t well-received.

But now, years later, that’s not the case.

You Are Subpar (Except Not Really)

This isn’t to say that I don’t care what people say – because I do – but how I receive it is very different. Rather than trying to be defensive or sticking up for something that I’ve said or done that ended up either not helping someone or misguided someone, I opt to take it as a point of critique to rectify.

Debbie Downer

That is, regardless of how the person presents you with the feedback, you can opt to take it as you want. Though it’s not always easy, I opt to take it as:

Here are the things that you did poorly and that you could improve on in your next talk/presentation/post/whatever.

I mention this because I know from talking with other people – or simply just watching places like Twitter – that I am not the only one that can be on the receiving end of this. We all end up getting it at some point in another.

On the flip-side, some of us even provide the critique, as well. Personally, I’m a fan of praising in public and offering critique in private via DM, emails, and so on. But, again, that’s just me. I’m not recommending that’s how anyone else should carry on about the way the conduct themselves online.

Things Won’t Change, But You Can

Ultimately, though, the development community should be great at discussing our likes, dislikes, similarities, and differences. All of that said, I’m a pessimist and I don’t really expect anything like that to change on a grand scale.

The more things change, the more they stay the same.

– Jean-Baptiste Alphonse Karr

Granted, individuals can change (and they do) and it’d be great to see more helpful dialog take place in the public arena around whatever-the-topic may be, but generally speaking it’s how things are going to be.

So with that said, I urge those of you who are new to all of this – that is, receiving criticism for some of the hard work that you’re proud of – to flip it around and to take it as a positive. Use it help it make you better at what you do next (whatever that may be).

Category:
Articles

Join the conversation! 3 Comments

  1. You’re so right, Tom. I wish I’d learnt this at the very beginning of my career, but I’m definitely glad I did learn it. Most criticism, regardless how it’s expressed, has something you can take away from it. The trick is to not take it personally, and analyse it to see what that something is.

    On the flip side, I’d like to think receiving feedback that was hard to take has made me more gracious in how I give others feedback too!

    • I wish I’d learned it earlier, too – interesting how it’s one of those things that we come across with maturity when there are so many other people around us that tell us to do the same thing, isn’t it?

      Anyway, I also agree that for as much criticism or feedback we get, it helps to make us more mindful of how we doll it out, as well.

  2. It can be really really difficult.

    For example. I spent years in the video games industry and its just brutal when it comes to feedback on just about anything. From gamers to fellow coders, administration, reviewers and it really does not matter which or who. Fault is found and as often valid as not. The only perfect video game ever coded was Pong. LOL :)

    I guess some years of that trained me up and not necessarily in the best of ways.

    One thing about the VG industry is seldom are punches pulled and in respect to code itself whether back in the old days (Assembler and rather peas poor C compilers) or these days with more refined tools. Even on the original PC’s which didnt have the more dedicated graphics hardware but instead memory mapped stuff. Libraries such as FastGraph. Was nothing to do with graphing. It was a lib of code that basically would plot a pixel in whatever color. Thats it. Except the lib supported heap and heaps of video cards and a few with a few more advanced functions.

    Coders were expected to do more with less. As things transitioned, faster CPU’s, Direct X etc. things moved towards “get it done on time” .vs. “get it done right”. When not getting it done right happened however get chewed on. Even when things all were great, guaranteed users, reviewers etc. chew on things, nice and public, thousands of readers. All that impact revenues and more.

    I think I said it before, interested in pressure? Give it a whirl with a mainstream publisher. Today of course its all a distributed discipline but the pressure is still there, just different and of course distributed.

    I’ve done quite a bit of pro-bono stuff for not for profits as well and there is critical measure. Yes, one tries to not be that way, one tries to get feedback. Example: I did an ENORMOUS conversion of a website to Joomla for a .org. I mean buckets of content, images and then some. Years uopn years of weekly archives from a print newspaper as well they put out that they brought in all digital.

    Site was GORGEOUS. They never even gave a good whirl at understanding Joomla. Administrating it. So instead, they park me in with three college kids, “Please teach them”. So I engage in that, gave them videos, each a sandbox, the works. I get back, “They are not learning”. When in fact they were. BUT what they kept WANTING learn is how to code. I encouraged them learning but I wasnt about to teach class. Yet they were going back and saying they were not learning.

    Amazing.

    I remember quite vivid a special moment. I had to go to this guys house. An executive to be exact of QC at Xerox Corp. (VP of QC to be exact). This to show the site, features, work done again, all pro-bono, months of it, 2-4 hours a day sometimes 8-10 on weekends just to get it done. Anyways, so we are at his house. They have a projector on a laptop. Entire Board for this Not For Profit is there, 12 or so folks.

    I start showing the work done and all are for the most part delighted. Then this Xerox fella who has ALWAYS been more than gracious to me. In fact he was the “tech” lead for the .org (and knew not a thing as far as CMS / Code, his “big thang” was Constant Contact integration and all upset the board decided on vTiger CRM .vs. CiviCRM, yet, he’d never used either. Anyways… I am in the midst of the presentation and he just starts complaining about menu structure. I said, that can all be changed if the board wishes, its not alot of work and I am addressing the audience.

    He stands up and damned near yells, “RICK!” and points to his two eyes. I look at him and he points to them again. Then points with both hands and his index fingers at me. Then at his eyes again and blurts out, “When someone asks you a question you look them in the eye”. I said, “I was addressing the board in stating that the menu structure can readily be changed”. He says, “The Board did not address you, I did”. Everyone there, just silent.

    I basically felt like crying and that doesnt happen often.

    I apologized, asked if its is alright we address this after the meeting and continued on.

    After the meeting, he was casual as could be. Like we are all back to friend friends again.

    I attributed it to him “Hamming it up at my expense” in front of the board.

    No apologies.

    Weeks later he was actually removed from the position after I had a meeting with the President of the .org. Not my decision nor did I influence it. I was called in yet again about “training”. I’d put videos of every aspect of Joomla admin up on the site with a menu for anyone to learn administrating a J! site. It was said I’d never done so. I was smart enough (I guess?) to put access counters and logs on it all through the J! backend. I showed the President. 4 Videos watched out of 30 someodd. Watched by 1 person and guess who?

    That was that I guess.

    Codewise… well, everyone has their own gig. In WP as we all know its all over the place. I’ve looked at code like Tom’s and went, this is really good and I feel it hard to write good code in PHP. I look at alot of the procedural stuff and I am sent back to pre-OOP-la and the memories of C / C++ pointers and memory management where I am spending frustrating time trying to learn the procedural code when its one of the big reasons OOP came to exist. So we didnt have to do that anymore.

    Right as we speak I am doing Pro-Bono stuff for people with Multiple Sclerosis. Its 6:14 AM in the morning, been up 21 hours and ready to hit the hay. Tomorrow (today) need be back up to take my lady on a Garden Tour in 4 hours.

    The MS stuff is important and am havin’ a hoot of a time. Why? Well… I am using WP to do it and there is just buckets of content. But the requirement is for accessibility as well as truly dynamic presentation for those not afflicted in a way that they can use a highly dynamic site.

    Thats not easy.

    So I have opted to go dual template, or trying to. Child theme a really dynamic theme for accessibility is crazy. In fact, any advice be really really appreciated.

    This work is one of those missions from God. Most coders wouldnt touch it more or less pro-bono. But the need is there and I will do it.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.