Wednesday, April 6, 2016

Perfect Code is Bad Code

Today I'm speaking about programming.  Yesterday, I made a concession that I find myself making more and more lately.  I fixed code { programming } that was working, but wasn't perfect.  This originated from adding a feature that wasn't necessary, but another programmer asked for it.  Upon review, the change I made introduced more less-than-perfect functionality.  This required more rework.

Why is this 'bad'?  Because perfect is a state not worth attaining.  It costs time, money, momentum, energy.  And frankly speaking, perfect isn't attainable.  Not for a human being, anyway.  Perfect and personal opinion do not work.  Period.  Someone is always going to find a better way, a cleaner way, a faster way.  But at what cost?  Isn't the idea to give someone something that works and provides them value, all the while being a good steward of their trust, money and time?

I'm not saying don't do a good job.  If you're in the business you're in and are successful, then you must be competent.  What I'm saying is be mindful of what is important to the customer.  A functional product that provides a customer value.  They don't want perfect... no one wants something perfect.  

Tuesday, February 9, 2016

Transform your job: Form a new committee. Part 2 of 3

In the last post, I talked about making changes to your job to transform a normal job into your dream job.  This time, I'm going to talk about solving problems at the work place.

No matter the industry, there will always be problems that arise or areas that could use improvement.  The problem is, everyone talks about it but no ones does anything.  To make changes in an organization, it's employees need to accept ownership.  When you see something that needs fixing, take it upon yourself to form a 1-man committee to resolve to fixing it.  Now I'm not talking about overstepping bounds or calling people out.  Fix it by ending the complaining and come up with a solution.

At my last job, when a new employee was hired, they were added to various systems and ordered a laptop.  On the new employees first day, they would receive their laptop, only to realize none of the software they needed to be successful at their job was installed or they didn't have the correct permissions to access what they needed.  So rather than do something to fix this disconnect, people just gossiped and complained.  This creates silos within the company and breeds conflict.  Instead of joining everyone and  complaining about it, do something about it.  In this example, go down to the IT department and ask questions.  Ask if they were to be provided a list of software needed, could they load it before the new hire started.  Propose a new line of communication to notify managers when permissions were set for new hires.  Create a checklist for departments to sign of on when their part of the process is complete.  Solve problems, don't fuel gossip and sore a company culture.

In 2016, I challenge you to form a new committee, led by you, for tackling something that needs improvement at your job.  It could be anything.  Employee orientation improvements, retention recommendations, social outings for team-building.  As long as it's something you care about and are ready to make a difference.

Friday, January 15, 2016

Resolve to transform your job instead of finding a new one in 2016. Part 1 of 3

Every year we strive to make changes that make our life better.  Maybe you resolve to lose weight.  Save money.  Go back to school.  Each of these are very rewarding, but often require much work to achieve.  The same is true for finding a new job.

A new job is an excellent goal if you are unemployed or fresh out of school.  But is it the right decision if you currently have a job?

In the next few weeks, I'm going to provide you with a fresh perspective on your job and how you can change jobs without actually finding a new job.

To start, let's look at your current job.  We all heard about that dream job.  Maybe we don't exactly know what that job 'is', but we know it's the promise land and we want it.  People who have this job know the secret to finding it.  That secret I'm going to share with you.

The secret about the dream job is... it doesn't exist.  There is no job interview you go on that will land you your dream job.  The truth is, those who can honestly say they have their dream job didn't get it by chance or happen into it.  They have a dream job because they CREATED IT.  That's right, they took their existing position, whether it be a cashier, a graphic designer or a CEO at a Fortune 500 company and made it into their dream job.

How did they do it and how can you do it too?  You can by changing your circumstances.  Each job, no matter what line of work, comes with a description.  But if you notice, rarely do you actually do the tasks outlined in it.  Often times, you find yourself doing stuff not even part of your job description.  I myself attend speaking events, help organize and motivate our employees to speak at events and am active in any committee that will have me.  None of these are part of my job description.  I'm a programmer.  I could simply sit on a computer all day and punch keys and I'd be perfectly aligned with my job description.  I'm able to do this because my job allows me to be flexible in my position.  I'm able to raise my hand and say I'd like to try something.  With this flexibility, I'm able to mold my position, even if slightly, into what I want to do that's meaningful to me.  The more I succeed, the more freedom I'm given to try things that are important to me.  If you make small changes to your job long enough, over time you'll find that all you do is stuff you love and care about.  You will have the perfect job... your dream job. 

What can you do today that you're passionate about in your job?  Start with something small.  Make those small changes over time, and before you know it, you will be boasting to people about your dream job.



Next week, in part 2 of this series, I'll be talking about tackling issues that bother you at your job.

Friday, January 8, 2016

Going to pull an all-nighter at work? Think twice!

The deadline is fast approaching.  Your next big release is riddled with bugs.  The users who are testing your features just sent you two dozen emails about issues they found.  It's now 9pm at night.  You put on a pot of coffee and prepare for a long night of bug fixes.

Let's pause for a moment.  What is it exactly that you're about to do.  You're obviously tired.  You've probably already put in a full-days work.  Is this really the best use of your time???  I can promise you it won't be the most productive use of your time.

Pulling an all-nighter to fix some bugs is not a good idea.  By doing so, you'll not only be exhausted for the next several days, you won't help solve the problems one bit.  In fact, you could end up introducing new problems.  Why is burning the midnight oil a bad idea?  It separates you from the team.

Look back to a time where one of your teammates worked all night on a problem or project.  Most likely, they fired off emails at all hours of the night updating the team on their progress.  "Successfully pushed latest build to test environment.  No issues.  Attempting a restore to...."  Great.  Fantastic.  So, why are they telling us this and why is it bad.  There can be many reasons why people do this.  More often than not, it's to simply inform the team of progress.  But could it be also to let them know how dedicated you are?  Or that your staying up all night until this is resolved?  Maybe a little bit of insecurity can attribute to this.  This can, however, put you into a sticky spot if something goes wrong that requires others to assist.  Assuming you've fired off multiple emails, the recipients have most likely stopped checking their email/phones and attribute any notifications by you as status updates.  So you now lose the ability to reach out to others if need be.  A lesser form of 'The little boy who cried wolf'.

Now, fast forward to the next day.  Assuming you fixed or resolved anything { remember, you just pulled an all-nighter after a full day of work to begin with, so that probably wasn't your most productive time }, it's 8am and you're tired.  You may even be a little pissed.  The day still goes on.  There's still meetings, people are still working on their tasks for today.  But it's not a normal work day for you.  Chances are, you'll leave early... or not come in at all.  Your team now has to carry on for the day without you.  If anything comes up that requires your attention, you've now likely made yourself unavailable { you have to sleep } at a time when all team members and clients are actively engaged in the project.

So the next time a crisis comes up, don't pull an all-nighter.  Formulate a plan and communicate it to the team.  You're much more valuable to the team when you're there and well-rested. 

 


Friday, August 21, 2015

Create Margin

So I recently came across a problem while upgrading my computer to Windows 10.  I run Windows on a VM { virtual machine } on my MacBook Pro.  So when I upgraded, my Windows machine now has a 1 inch margin on the left and right side that I cannot get rid of.  If I hover over my mouse on either side of the margin, the cursor changes from an arrow to a pointer.  When I click in that space, the mouse automatically goes to the center of the screen.

Now I'm not telling you this out of frustration towards my computer or bad upgrade experience.  Believe me, I've vented enough to my tech friends.  While annoying, this real-life example illustrates something I believe we could all benefit with.  Margin.  Margin in our time and margin in our money.

So what does margin in our life look like and why is it needed.  Lets start with time.  Imagine a day... perhaps today, when you left your house late.  Maybe you speed, maybe you run a red light or stop sign.  Maybe you pass someone in need.  Because you've left yourself no margin, your life is now in panic mode.  You are less considerate of others, more prone to errors and risk.  You're in a hurry and can't be bothered.  By leaving yourself no time to spare, you drastically limit your opportunities and experiences.  Add more margin in your days for travel to work alone can completely change the whole outlook on your day.  Give it a try.

Now lets talk about money.  Margin in money can be tricky.  Most people live life paycheck to paycheck.  "Too much month at the end of the money" is our theme song.  But what would it look like to have a little margin in our monthly budget?  Say $100 a month.  Is that doable?  When we leave no margin in our money, disaster strikes on a regular basis.  I am constantly telling my wife we always have '$1,000' problems.  Each time something happens, it's a grand.  With no margin, money problems become money disasters.  Fights over money, fights over spending... fights over anything.  A little margin in our budget would turn those disasters into inconveniences.  I think we could all live with a few inconveniences once in a while.

Try adding a little margin in your life and see what a difference it makes.  Start by being aware of situations that would be better if you had more margin.  Whether it be time or money.  Then add some in and see if it makes a difference.  I know you'll be surprised!

  

Friday, July 24, 2015

Deceptive math in business

I begin with a statement:  100,000 + 1 = 1.  Now from a mathematical statement, that's obviously nonsense.  But from a business standpoint... is it??  What if I said sometimes, for people, 100,000 + 1 does equal 1... to us.

Okay, enough talking in riddles.  What I'm referring to by my premise is that if in whatever profession you are in, be it programming, sales, marketing... if 100,000 people come up to you and say "Looks good.  Love it!  You did that?  Great job!" we smile and continue about our day. Sometimes we will even dismiss it all together.  "Ah... it was nothing."  or  "It wasn't me, they did all the work."  But if 1 person approaches us and says our idea is dumb or that we failed, all of those praises fall by the wayside.  We focus intently on the one negative and try to understand it.  Why did they not agree with us?  Why did they attack us?  Is there something wrong with me?

Do not play victim to this.  See the comment for what it is.  Criticism based on someone's opinion.  Don't let the voice of one drown out the echo of thousands.  Believe in what you do and what you stand for.

One last note.  More times than not, that one person criticizing your idea or calling you a failure might just in fact be the person in the mirror.  Be your greatest cheerleader, not your worst critic!


Friday, July 17, 2015

Privilege vs. Burden

Lately I've had a very poor outlook on things.  Whether it be in my home life, work, trouble with vehicles, my daily commute.  All of these things collectively have been weighing on me.  I'm afraid I have a case of the 'have-tos'.  { Shutter }.  What are the have-to's?  Good question.  Here's an example.  I have to go to work today!  I have to drive to Grand Rapids today.  I have to watch the kids tonight.  I have to make dinner tonight.  I have to take my son fishing this weekend.  Ugh... exhausting just typing it.  What a burden on me. All these things I have to do.  What if, I wonder, we changed the sentence a little.  What if I changed one word???  Would it make a difference.  Lets try it.

I get to go to work today.  I get to drive to Grand Rapids today.  I get to watch the kids tonight.  I get to make dinner tonight.  I get to take my son fishing this weekend.

Wow.  Now just reading that I feel energized.  I feel excited.  Privileged to do such things.  Just by changing one little word, I change my whole outlook on things.  You see, in reality, I don't HAVE to do any of that.  I could be unemployed.  I could be without a vehicle, or without children.  I could have no money to buy food for my family.  All of these things which I day-in and day-out take for granted are privileges in my life.  No, I don't HAVE to do them.... I GET to!

My wife is always telling me that it takes 2 weeks to create a habit.  So for the next two weeks, I'm going to be aware of the words I choose to use in my vocabulary.  Any time I catch myself using the word 'have', I'm going to auto-correct myself in real-time and change my vocabulary... change my thinking... and change my life.

Now, you have to.... err.... you GET to join me.  See what an impact it has on your life!  2 weeks.  Go!