Tuesday, May 21, 2013

Everything is harder than you think

From Wikipedia Commons
My title is a cliche, of course. Everybody knows this. Whenever you try to do something, especially something you've never done before or haven't done in a long time, it takes much longer than you think it is going to take. I was just struck by this fact again today when one of my fellow engineers mentioned what a hard time he is having with the project he is working on. Then, just an hour later, another engineer mentioned the hard time she is having with another project. So, I wrote this to them:

I've come to believe that EVERYTHING is ten times harder than you think it will be. And twenty times harder than everybody else thinks it will be for you.
The second sentence is not really new, either, but it makes everything more interesting. We all know we have trouble estimating how long an unfamiliar job will take. That's because we don't know enough about it. As you dig into a problem, you discover nuances neither you nor anyone else thought about when the job was first proposed. But it's even worse when someone else, who doesn't have to actually do the job, is saying how much effort will be involved. There's just something about not having to do a job that makes the job seem so much easier. Trying to estimate the time a job will take is like only relying on what you see in the rear view mirror of your car before backing up. But when someone who won't be doing the work is estimating the effort of the job, it's more like not even looking in the rear view mirror before backing up. Just put the car in reverse, hit the gas and assume everything will be OK! "People will get out of the way if they need to."

I think we all do this to some extent. None of us put the effort into imagining how hard a job will be if we don't have to do the work. It's more critical when that other person estimating the work is your supervisor. But our opinions can carry weight when we are part of a group of "non-workers" telling the "worker" how much effort we think it will be. Our numbers make it hard for the "worker" to disagree. The group's estimate carries more weight.

No matter how carefully you plan something, there are always hidden aspects to the job. I believe this is called The Iceberg Principle. Most of the iceberg (89%) is below the surface so you can't see it. Just like a new project. My conjecture is that when someone else is deciding the effort a job will take and is not doing the work themselves, that number rises to 94% of the job being hidden for that person. But I have resolved to try to cut down on this. When I am estimating the effort for a job someone else is going to do, I am going to try to imagine how I would do that job. I am going to actually think about the steps that will need to be taken. Maybe others will return the favor.

The image is from Wikipedia Commons. Doesn't look that big, does it?

Sunday, May 12, 2013

Happy Mother's Day

I was so proud of myself. I found the perfect gift for my wife for Mother's Day. The kids already had their gifts for her and I already a gift for my mother. My gift was something I knew she wanted but I wasn't expecting to find it. It was one of those exciting times when you just bump into the right thing. I wasn't out looking for it. It just happened. I was in a store and I turned around and there it was!

We were out one day a few weeks ago and Cindy mentioned that she wished she had a small purse. Something that would just hold a little cash, some credit cards and her keys. She has some nice purses but they are all large and, "sometimes they're just too much to take where you're going," she says. So, here I was in a store, turned and saw the little bag in the picture in the upper right. It was one of her favorite colors and it was small. It had a few compartments so she could organize things. I was set. I was the perfect husband (for a little while). It was going to be a great Mother's Day. Then it happened.

We all went to church this morning. That's a good thing, isn't it? Recently, our church has been giving out small little gifts to the mothers on Mother's Day. That's a good thing, isn't it? Guess what they were giving out today? Today's gift was a small purse that could just hold a little cash, some credit cards and her keys. I was floored. The little purse they gave out is in the picture on the left. And it's one of her other favorite colors. How could God let this happen? Hadn't I done all the right things?

So, was the day going to be ruined? Well, I had sold myself (and my wife) short. She loved my gift. My bag came with a little strap and the church bag didn't. My bag had compartments and the church bag had just one zippered pouch. My bag was a little larger but not too large. She liked it so much, she took it with us when we went out to dinner at noon. To tell you the truth, I'm not exactly sure Cindy likes my bag that much better but she likes me that much better. She knows how to make me feel like I'm the King of the World. And I'll love her forever for it. Happy Mother's Day, Sweetheart.

Tuesday, April 30, 2013

Are we under too much stress?

Five people in the Software Group have recently (in the last three months) had to get repairs for damaged teeth. I am one of those people. We've had to get crowns because a tooth broke or cracked. That's five people in a group of fifteen. Does that seem like a lot to you? It does to me. And I think I know the reason.

We are all under a lot of stress. We're under pressure to not only get our work done but to get our work done quickly. We not only have to get our work done quickly but we have to think ahead and plan the work we do so that we don't make things harder for ourselves or others in the future. That means the whole time you are designing your software, you have to be thinking how it might be used in the future. You have to think about how the hardware might change and you have to think about what features the Marketing folks might want to add.

And all the time, we are constantly being reminded of the schedule. We plan our work over a period of months and then set the schedule. The actual writing of code starts and we will work on it for another period of months. But just before we start the coding, we publish a schedule and no matter what happens after that, you get sick, your car breaks down, an asteroid hits the Earth, Jesus returns and takes us to Heaven, all that the directors of the company remember is that first schedule that was shown.

We develop our software using Agile Software Development. I'd like to write more about this methodology in the future but I only have time to write the short description here. Agile Development is meant to help you make schedules that are flexible and to increase the communication among the programmers of the team. It is a really good system but I don't think its ideas have sunk into the people that run companies (not just ours). In previous times, schedules were set and that was it. People treated software (and all types of design, really) like you were stamping out parts that have been made for years. Times have changed and what we produce has changed. When we run into things like illness or problems keeping us from work, Agile handles those well. Every month (or even more often in some cases) you rearrange your schedule. The important thing is to know what you are working on, that everyone else knows what you are working on and what parts depend on other parts.

But old ideas are hard to change. We are all under a lot of pressure and we've been clenching our teeth as we try to deliver good products on time. I go in tomorrow morning to get the permanent crown for my tooth that broke. I hope it lasts. Maybe I should get a mouth guard. Who would have thought that writing software could be as tough as playing hockey?

Thursday, April 25, 2013

"There's a good boy"

That's how my grandmother used to end every sentence to me when I was a little boy and she was asking me to do something. "Would you bring that bag of groceries into the house? There's a good boy." When she would be babysitting me, she'd say, "It's getting close to bed time. Go take your bath. There's a good boy." I always did what my grandmother asked me to do.

I remember this like it happened yesterday but that would have been over 50 years ago. And I remember the thought that went through my head when she used that phase. "Well, she's already acting like I'll do it and that I'm a good boy. I guess I have to do it now." It was her expectation that I'd do my duty and she was rewarding me for it that got me to never refuse to do what she asked. I didn't want to disappoint her. She never bribed me with treats or told me about a punishment if I didn't do it. She just assumed I would and let me know that.

Or it could have just been a phrase she used. I never noticed her saying it to my cousins, my parents, my aunts and uncles or my grandfather but maybe I just didn't notice. Besides, I was just a kid. I couldn't have been more than 8 years old at that time. I like to think she really did think I was a good boy and that she could depend on me to do the right thing. I wasn't perfect but I always tried to make her proud.

I've always said that we all have regrets in our life. Maybe I'm being pessimistic and some people regret nothing they've ever done in their life. But I do have some regrets. One them is that when my grandmother died and we all got together for her funeral, I didn't tell this story. There was just a small ceremony in the funeral home and just grandma's surviving children and my cousins were there. The minister gave a short message and then asked if anyone had anything else to say. Were there any stories anyone wanted to tell? None of us said anything. I always regret that I didn't tell this story. For one thing, it might have prompted the others to tell stories of their own. But mostly, it would have been nice to share this simple case of someone expecting the good from someone else and encouraging it.

Saturday, April 20, 2013

I have not given up on blogging

It's been 18 days since my last post. There is no one reason for it. It just sort of happened. I have a lot of posts in the draft stage but I haven't been able to work on them long enough to be ready for publishing. I've always been torn between the idea of just getting thoughts down or spending the time to make sure a piece is thought out and well written. I seem to have a hard time finding the middle ground. And no matter what I do, I'm never quite happy with the result.

In the past, I've said, "This is just a diary. I should get things down quickly so I don't miss events that happen in my life. The important thing is to be able to go back over these posts and remember what was going on. I want to recall my thoughts - not create the great American novel."

But I've also said, "The idea of this blog is to help me to learn to write better. Just writing down my thoughts could be done in a paper diary. The idea of doing it in a blog is to allow for the possibility of other people reading it, too." That means I may need to explain things that I understand but other readers wouldn't. That means it needs to be written well enough to be understood. It should make sense. Also, I'd like other readers to be moved by my writing. We all have some knowledge that other people don't. One of the reasons God put us all together here on the Earth is to share what we know and to help each other.

The idea that other people might read this blog is both scary and exciting. It's scary because it opens me up to criticism. It exposes things I wouldn't normally share. But with criticism comes improvement and that's the exciting part. Is it better to have an idea that is wrong and hold onto it no matter what or is it better to find out that ideas you think are true and important that turn out to be false or useless? I'd rather try to correct the things that are wrong. I guess that's the engineer in me. And maybe that's how my title Adventures in Engineering is really about my adventure in correcting my own mistakes. Not to create a great piece of software or a product for sale but to create a better me. To extend my knowledge by coming up with an idea, getting it down on paper and then finding the problems with it and correcting those problems. Engineering isn't always about creating things. It can also be about improving yourself. So, I'm left with the difficult balance of trying to write as often as possible but to write as clearly and thoughtfully as I can. Bear with me. It's going to be a bumpy ride.

Tuesday, April 02, 2013

Not our normal walk

You don't expect a problem when you go out for a walk with your dog. Every morning, Charlie (our dog) expectantly looks at me until I take him for a walk. He's 14 years old and can't walk far but we walk slowly for about one mile each morning. We take pretty much the same route every day so we know what we're going to see and what we're going to do. Charlie has his duty and I have mine. Nothing much happens. Except for this morning.

We have to cross a fairly busy road but there is a crosswalk there. In Massachusetts, a vehicle has to stop if a pedestrian is standing between the white lines of the crosswalk. We usually let the cars go, though, because they always seem in such a rush and we are not. Right after the crosswalk, there is a house with a chain-link fenced in yard that has a bunch of (at least five) yappy Boston Terriers that love to bark at us. If they are out, they usually sense us before we get to the crosswalk and start barking before we even get to their side of the road. This morning was one of those mornings.

One thing wasn't the same as normal. I noticed a fellow about 20 feet off to our left obviously looking for something in the woods. He was whistling and calling but I didn't think too much about it. I was concentrating on the traffic that was approaching the crosswalk and the noise being generated by the yappy dogs. As we waited by the road to let the traffic pass, the car closest to us stopped and motioned for us to go. I looked over at the other lane to make sure the car coming from the other direction was going to let us go, too. Then, everything happened at once.

The car going the other way did stop but you could see he wasn't happy about it. The first car that stopped was motioning, impatiently, for us to get going. The yappy dogs were excited that we were coming their way. The guy looking for something was raising his voice and I was tempted to look over at him. But to make the drivers happy, Charlie and I started to run. Well, Charlie is 14 so we trotted, across the road. Just then, the guy looking for something shouted. Loudly! I looked over and my heart stopped. A Pit Bull was running toward us! Our running (trotting) had caught his attention and he left the woods to run after us. We were out in the middle of the road with nowhere to go. The yappy dogs were getting louder. The drivers were getting mad and I was scared into inaction. Then a miracle happened.

The guy who was obviously looking for this Pit Bull yelled and the dog stopped dead in his tracks. He kept his eyes fixed on us but he listened to his master. We continued across the road and got safely to the other side. The cars continued on their way and the yappy dogs continued to get louder as we approached and then passed their yard. I didn't look back. I assume the guy put a leash around his dog and walked him home. I was shaking but Charlie calmed me down with a look of, "Don't worry, I'd have protected you."

I wouldn't have been so scared but a fellow I work with was attacked by a Pit Bull just a couple of weeks before. Actually, there were two Pit Bulls but only one attacked. He described his struggle to free his dog from the grip of one of the attackers while yelling for help. He would get his dog free only to have the attacking dog grab her again. Even though the second dog never attacked, my friend had to keep an eye on him. Finally, a neighbor heard his yells and came to help. His neighbor was able to take his dog away to safety. With his dog gone, the attacking dog focused on my friend. Fortunately, it was cold that day and he had a heavy jacket on. The dog shredded it. He was finally able to pin the dog down until the police came.

That story flashed into my mind as I stood in the middle of the road in panic. I am so thankful I didn't have to really deal with anything beyond fear. I will be looking around a little more cautiously tomorrow morning.

Sunday, March 31, 2013

"He arose!"

"He arose! Hallelujah! Christ arose!" Christ did arise and is still alive. If he hadn't, there would be no Christian religion. If it was proven that he didn't rise from the dead, the hopes of Christians everywhere would end. It ain't gonna happen, though. People have tried disproving Christ's death and resurrection for centuries.

The words at the beginning of this post are from the old Robert Lowry hymn "Christ Arose". I enjoy singing it, along with a lot of the other great hymns. But now, many churches have switched to more contemporary songs. Eventually, they may prove to be as long lasting and insightful as the old hymns but I miss singing hymns from a hymn book. With the music in front of you, you could sing in parts (what's that?) and it helps to have an organ or piano leading the music because that helps pick out parts to follow. And being a bass (that is, singing in the low range of male voices - not a fish) makes it hard to sing along on songs that are mostly pitched for sopranos and tenors. But I don't want to come across as an old curmudgeon. I do enjoy the newer worship songs, too. I love the songs of Paul Baloche, Chris Tomlin, Amy Grant, Michael Card and the artists of Hillsong. Their music is inspired and inspiring. They are all terrific musicians and their songs are deep and worshipful. It's just a shame that churches seem to go all one way (with older, traditional hymns played on organ or piano) or the other (contemporary music played on guitars and electronic instruments).

Our church does include an old hymn once in a while but it's hard to be able to sing parts when all the instruments are just playing chords as accompaniment. But the enthusiasm and musicianship of our church's worship band is remarkable. It really does lift our spirits and helps our soul worship the Lord. I don't want this to come across as a complaint against the use of contemporary praise and worship songs in church. I just miss the old hymns and the loss of the more classical instruments. Why does everything seem to have to be one way or another?

This year, Easter is early and it's still cold outside. To save from the usual crush of people in church on Sunday, we took advantage of our church having a Saturday evening Easter service this year. It was still crowded but it wasn't overwhelming. This morning, we're going to wait for it to warm up before starting the Easter Egg hunt.