Always Get Better

Posts Tagged ‘work/life balance’

279 Days to Overnight Success

Monday, November 16th, 2009
Victory!
Creative Commons License photo credit: quinn.anya

Chris Guillebeau offers his e-book 279 Days to Overnight Success for free on his blog. This is a great piece of writing that debunks the popular myths about “making it” blogging.

  1. Don’t rely on Google/Adsense as a “get-rich-quick” vehicle – they aren’t
  2. You don’t need millions of visitors and command of Digg to do well
  3. You will have to work hard
  4. Overnight success means ‘months or years’, not ‘days’

See for yourself – download it today.

  • Share/Bookmark

Living With First-Person Shooter Disease

Saturday, November 14th, 2009

Some ailments have no cure…

  • Share/Bookmark

When You Focus on Getting Better

Tuesday, November 10th, 2009

It seems like correcting Seth Godin is a favourite pastime enjoyed by folks online. Sorry to break from the group, but I happen to think he is a deep well of relevant information.

This week he brought up the idea of upsides versus downsides – how much effort do businesses put into minimizing their downside versus the time they put into offering the best user experience?

One of the primary examples from the post is that of a hospital spending a huge amount of time doing paperwork to prevent litigation and prevent people from getting worse when their primary goal (and reason for existing) should be improving the lives of the patients coming through their doors.

The hospital example was interesting and timely because in “real life” the Jewish General Hospital recently came out and said it has been able to improve patient care (upside) by reducing errors (downside) through its new(ish) full disclosure policy. This ties in nicely with Seth’s article because it proves that it is possible for even large organizations to let go of the status quo and achieve new levels of excellence.

In the case of the Jewish General Hospital, it seems paradoxical but by admitting and dealing with errors, the hospital is actually less likely to be sued and face costly litigation. In essence, they have found a way to improve patient care, cut costs, and foster an open corporate culture. Way to go!

  • Share/Bookmark

Losing Weight with Wii Fit

Friday, November 28th, 2008

Let’s start with the conclusion – I lost weight with Wii Fit.  We bought the system in September and my progress has gone like this:

September: First month
October: Down 7 pounds
November: Down 7 more pounds

So to date I have lost about 14 pounds in two months.  Not bad, considering I didn’t really do much else.  That puts me now at my lowest weight in about five years, and all of my clothes are baggier.

Ah, but there is a catch.  In addition to using Wii Fit, I made (and stuck to) a meal plan which included no soft drinks or fast food.  I did not increase my activity levels though.  I basically just improved my eating and used the Wii balance board to monitor daily changes in my weight.

For anyone considering buying the Wii Fit, I would advocate the idea that it should be thought of as a tool and not as a gym.  The software does a great job in getting people off the couch and having fun, but it certainly doesn’t come close to the benefit one would get from actually going outside and walking around.

The real power of Wii Fit is in its ability to track changes in weight over time.  Seeing tangible results on the graph and experiencing spikes in weight due to late-night snacking gave me immediate feedback on my progress.  I found that made all the difference in finally getting me onto a healthy diet.  My next task is to increase my physical activity – maybe I will actually tone up a little.

  • Share/Bookmark

Take Yourself Less Seriously, Manage Scope Creep

Tuesday, May 13th, 2008

Given the oportunity, your boss and your client would add so many requirements to your project that your only hope to meet your deadline was to forsake your personal life and donate your evenings and weekends to your job.

This is uncool.  Unless you’re in Houstin trying to bring home Jim Lovell, no one’s life but yours hangs in the balance of your work.  I urge everyone to ask themselves how important, really, is their function.  We tend ot build up walls around us and believe that our problems are big deals, but the reality is that in ten years we won’t remember what we did at work today.

So next time you’re asked to add “one more feature” to your prototype, decide if it’s best for the project, and if it’s possible for you.  It can be hard to say no, but humans weren’t intended to sit in front of the computer programming meaningless crap all day.  Go out and enjoy your life!

  • Share/Bookmark

Programming Doesn’t Mix With Family

Monday, February 18th, 2008

Back in 2006, George Alexander detailed a great list of traits essential for successful computer programmers. In this entry, we will look at those traits and see how they apply (or not) to the family life of a computer programmer.

In Canada, the Ontario government decreed the third Monday in February would be a holiday known as “family day”. This ends the decades-long stretch from January through March known to Canadians as the “dead zone” – the longest unbroken span of work weeks of the year. Nobody is complaining about a long weekend lightening the dreary winter months; except of course the four million or so workers who don’t qualify for the holiday, but that’s another story altogether.

Computer programmers don’t all fit the secluded, socially-inept stereotype. But for those of us that have families it can be difficult to shut off at the end of the day and become “human” again. Perhaps the shift that has to happen isn’t as extreme as, say, a soldier who comes home from overseas and has to go back to being a functional family member. All the same, the thinking needed to fulfill the duties of an analyst/programmer isn’t always compatible with the thinking needed to helm a family.

1. It’s not about computer languages

Leave you C++ code on your computer at work. It took you years of study, trial and error to warp your mind and destroy your soul enough that programming was opened up as a source of income. Don’t put your family through that.

I’m not worried so much about the blank looks on their faces and their faked encouragement when you go off all proudly about the sorting algorithm you finally managed to optimize. What about the day when they actual understand some or all of what you’re talking about? You’ll feel horrible for killing part of what made your loved ones human.

2. Drive and passion

Hopefully some of the passion that drives you to excel as a program is also present in your personal life. My father-in-law comes home from his job at 2pm, takes a short nap, then works until 1am improving his house and spending time with his wife and kids. His household is one of the warmest and happiest I have ever had the pleasure of being part of.

My father-in-law realizes that what you have now is always temporary – don’t take your loved ones for granted because you don’t know for sure if you will still have them tomorrow. Everyone would benefit from living every day as if it was their last; if that were to happen, computer programming may not seem all that important anymore.

3. Dealing with Change

The nature of IT careers requires us to constantly be aware of “the next thing”. Things always get “better” so in order to provide the best solution we must accept changing ideas as the norm.

In many ways, this is totally incompatible with family life. Families like stability – you’re responsible to come home from work with a positive outlook, provide financial security, consistently enforce household rules… and the list goes on. To provide the best family life possible, you must take reasonable actions to protect your family from change.

Even a move can be hard to deal with, especially for your children. I attribute this to why many workers choose to commute long distances rather than finding homes nearer to where they work. I once met a man on the Ottawa-Toronto train who was commuting to his day job – spending all week in Toronto and coming home to his family on weekends. He was involved in a new startup and wanted to make sure it was going to take off before dislocating his family; he was protecting them from unnecessary change.

4. Break It Down

Every day we apply the divide-and-conquer approach to achieving large tasks. We don’t “go to work”, we have a shower, get dressed, get in the car, drive to the office, park. Likewise, when we show our kids how to repair drywall, we don’t show them the final result and say “make it look like that” – we show them the steps it took to get there.

As important as breaking tasks down to their components can be for solving large problems, it doesn’t have as huge a place in family life as it does in work life. Your family is not a complex set of problems needing analysis and design – you really need to understand how the things you say and do today affect those around you in the long term. Day-to-day financial planning is disastrous – the big picture is far more important that individual transactions.

5. Do Not Reinvent the Wheel

A disciplined programmer knows that quality code can be re-used in other programs – rather than solving very similar problems again and again it is possible to create a single solution that can be copy & pasted or simply linked into the next project. It took thirty years of scientific reasoning to advance our field to this stage; unlike our well-defined little jobs, family life must be constantly evaluated and redefined.

Once my wife and I announced we had a baby on the way, everyone began crawling out of the woodwork to give us their “advice” for pregnancy and raising children. Of course, there is no code reuse when it comes to this stuff – every parent and child is different and it’s our job to figure out what works best for us.

6. Practice, Trial and Error

Here is one area where work skills can transfer over to your personal life. Rather, I would suggest that when it comes to trial and error, the skills you learned in your personal life are serving you well in your programming career.

Do I have to go out of my way to say that no one is perfect, and everyone can always get better with trial and error? Try new things, find out where you made mistakes, try again.

Although not everyone is or wants to be, I’m married now. As I was growing up, every failed relationship taught me a little more about myself and about how I should be treating women. In a sense, each ex-girlfriend was really “practice” for the next. The constant re-evaluation seems to have paid off. The point is – never stop trying to improve, because there’s always room to get better. We have to own our failures as well as our successes.

7. Mentorship

If you have children, they depend on you for food, clothing and shelter. More importantly, they depend on you for guidance – even when they think they know better than you do anyway. As a parent, your job is to be in control and have all the answers even when you aren’t in control and when you don’t have any answers. Going back to #3, you must be a constant source of stability.

The same is true if you don’t have kids yet. Everyone has their own problems and no one needs or wants to solve yours. The world is too full of people who won’t take responsibility for their own thoughts and actions. Solve your issues on your own time and just enjoy being with other people.

As Fernando Lamas (the real one) said, “It is better to look good than to feel good.”

8. Be Open to Criticism

When we deliver a project to a client there is an expectation that the results don’t contain a lot of problems because we have gone through a quality control process to arrive at the best possible solution. Part of that process involves having someone else look at your design and critique it.

In the real world, we get criticism from a myriad of sources whether we solicit it or not. We don’t ask family members whether they approve of the way we installed our cabinets but we get their comments anyway.

No one goes out of their way to hurt or put down someone else – at least, this is what I would like to believe in my naive little understanding of the world. Even the handy family member is trying to be helpful when he complains of how he can’t fathom why you would use plywood instead of… you get the idea.

Like anything else, it all comes down to filtration. Take the good with the bad and don’t let people get under your skin. Sometimes they may just as well offer a tidbit that you can grow on.

9. Bug Off!

As with seeking criticism, software development involves a lot of self-starting even when it’s not strictly requested. Case in point: bug testing. No self-respecting programmer takes the design at face value, programs it, and submits it for testing without evaluating the product in the project’s grand context. We desire our work to be perfect to a fault and when it isn’t our ego takes a blow. Computer programmers especially tend to be obsessive compulsive about having their solutions in perfect order with no strings left untied.

I warn you – the obsessive perfectionist view that helps win promotions at work does nothing for your personal life. Girlfriends, wives and especially kids don’t share your drive for order. You have learned many of your intuitions and must learn how to turn them off when you get home or you will slowly go insane.

A few examples of things that will turn your crank but are worthless to normal people (unlike your mutant self):

  • The kitchen was not tidied during cooking
  • The kids colouring books when shapes were only partly filled in, or coloured over the lines
  • Report cards with any non-perfect grades
  • People not trying to get every last coin in world 1-4 of Super Mario Bros. 3.

10. The Significance of Communication

Computer programmers are not like normal people. Normal people don’t obsess over math problems. Normal people don’t do the mental acrobatics needed to understand pointers and floating point precision. Most people don’t care about x = x+1. Those who do know that at face value it is meaningless (0 = 1?) and can’t comprehend why you would choose a profession in which the most important calculation is nonsense.

So don’t try to explain your work to your family. At best they won’t understand what you’re talking about and at worst you’ll ruin their minds like you have ruined yours. If your kids grow up to be computer programmers they won’t thank you for it.

  • Share/Bookmark

SEO Powered by Platinum SEO from Techblissonline