Showing posts with label humility. Show all posts
Showing posts with label humility. Show all posts

Tuesday, November 07, 2017

When do I know I'm not a beginning programmer any more?

I was asked, "When do I know I'm not a beginning programmer any more?"

I wouldn’t answer this question, because it’s the wrong question.

You should not ever want to know you’re not a beginner, because a true professional is always a beginner. The world in general, and the world of programming in particular, is so complex, so huge, that one lifetime is not long enough to stop being a beginner.

Your beginner’s mind is one of your most valuable tools. It requires you to look at each situation afresh, and to innovate. (Fundamentally, that's what the Agile movement is all about.) If you know children, watch how they use their beginner’s minds to conquer their world.

I’m very suspicious of people in the programming field who think they are no longer beginners. Myself, I’ve been programming for about 70 years, and I still consider myself a beginner.




Wednesday, August 23, 2017

Basic skills of a good programmer?

Many outstanding programmers were asked, "What are the basic skills required to be a good programmer?" Lots of good and useful answers were given to this question, such as, test before coding, use a particular tool, or use Agile methods.



For me, though, with more than 60 years of programming experience, the one thing that made me a better programmer was my ability and willingness to examine myself critically and do something about my shortcomings. And, after 60 years, I'm still doing that. You could say it's incremental development applied to myself.

I also examine my strengths (long-comings?) because I know that my greatest strengths can quickly become my greatest weaknesses.

For instance, one of my great strengths as a programmer was speed. If something had to be done quickly, I was the guy to do it. But the weakness in my speed was my tendency to omit the last few hours of testing that would make the project rock solid. I had to learn the importance of taking the time to do a precision job.

Many programmers do examine themselves critically, but then they work to improve their greatest strengths, to the exclusion of their weaknesses. That practice takes them a certain distance, but the nature of computers is to limit your ability, by highlighting your greatest weaknesses. 

A computer is like a mirror of your mind that brightly reflects all your poorest thinking. To become a better programmer, you have to look in that mirror with clear eyes and see what it's telling you about yourself.

Armed with that information about yourself, you can then select the most useful external things to work on. Those things will be different for you than for anyone else, because your shortcomings and strengths will be unique to you, so advice from others will often miss the mark.

Good programmers make good use of their best tools, and you are your best tool, so sharpen yourself.


See, for example, 





Monday, June 19, 2017

Feedback to Yourself

Over the years, I've written a lot and taught a lot about feedback. See, for example, our book, What Did You Say?: The Art of Giving and Receiving Feedback. The book has been put to good use by thousands of readers, through two editions, and especially to teams. Recently our handyman, Abel, taught me that we'd missed something 

In the book, we wrote about giving and receiving feedback with one other person and with groups such as teams and projects. What we missed was feedback to yourself.

Abel had been fixing a variety of problems in the kitchen of our old house: broken tiles, a stuck drawer, a slow sink, a jammed ice-cube maker. It was a long list, and Abel worked until he had to leave to pick up his kids from school.

"Did you finish everything?" I asked.

"Yes, and I did a good job."

"You always do a good job, Abel."

Abel smiled. "Thanks. There's a few things I could have done better if I had more time and a few things that weren't in your tool room. Do you want me to come back and touch things up?"

Abel explained what he could improve, and we agreed to another visit two days later, after he made a trip to Ace Hardware. That evening, I showed Dani all he had done.

"That's wonderful," she said. "Some of those things were beginning to annoy me. He did a good job."

"That's interesting," I said. "Abel said the same thing."

"What thing?"

"He said, 'I did a good job.'"

"Of course he did. He always does a good job.Just like you."

"Thanks," I said. "Maybe I always do a good job, but I don't always say so. I  think I was taught not to 'blow my own horn.'"

Dani nodded. "You know, I think I was taught the same thing. Like when you ask me about one of my consulting jobs. I say, 'Yeah, I did okay, but I could have done better.'"

"I do the same. I think it's the 'but' that makes us different from Abel."

"How so?"

"Abel said 'I did a good job," yet he left off the 'but I could have done a better job."

"I thought that's what he said?"

"No, what he said, in effect, was, 'I did a good job, and I could have done a better job.' In other words, he didn't fall to either side—good or bad—but he said both. He provided feedback to himself that was much better than the self-deprecating way that we do it."

In short, what Abel knew how to do was give complete and accurate feedback, something both Dani and I have taught for decades. But what Abel did was give himself that kind of useful feedback. He corrected himself, sure, but at the same time, he affirmed himself for what he did well without discounting it with a big "but."

Do you have a big but? If so, it's time to trim down.


Tuesday, May 02, 2017

Why I Stopped Being a Professor

Here's a story from The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully:

A few years back, I thought I had grown wise enough to be a college professor. I treasured that illusion for a few weeks—that is, until I came in contact with the students. From then on, it was all downhill. I did struggle for a long time, even presuming to teach a course in systems thinking—as if I had anything to teach. It was the systems thinking class that delivered the coup de grace to my professorial tenure.

Judy had lingered after class to tell me she was transferring to Oberlin College. Judy's quick, teasing wit marked her as someone exceptional, so I was disappointed to be losing her as a disciple.

"It's not so much the school," she comforted me. "My sister goes to Oberlin, and we're very close."

"Is she an older sister or a younger sister?"

"Neither."

"Neither?"

"We were born on the same day."

"Aha," I triumphed. As co-discoverer of Weinbergs' Law of Twins, I was now on familiar ground. "You're twins!"

"No, we're not twins."

"Born on the same day, but you're not twins? Are you stepsisters?"

"No, we have the same parents."

"Then you're adopted!"

"No, we have the same biological parents."

"Hmmnh. Born to the same parents, on the same day, and not twins? I'll have to think about that. What am I missing?"

"Think about it. Let's see you apply some of the principles you've been teaching us."

I'll spare you the agonies I endured rather than say the dreaded words, "I don't know. Tell me." By the time the next class rolled around, my eyes were almost as baggy as my trousers.

Apparently Judy had seen the symptoms before. As a pre-med, she couldn't stand the sight of human suffering, so she came up and spoke without forcing me to admit defeat.

"Triplets," she said, and my ego bubble burst. My mind raced through a thousand reasons why the riddle wasn't fair. It would just never do to be bested by this little snippet of a girl. She might lose all respect for higher education. She might behave badly at Oberlin. What would they think of us, sending them such an impertinent student?

"Don't you think that's a little farfetched?" It was the best I could concoct, but I needed time to rationalize.

"How can it be farfetched, Jerry, when I actually am one of triplets?" I should have listened to those other professors. They warned me that letting students use my first name would soon lead to other liberties. And even worse, there were other students watching. Perhaps I could play their sympathies to my advantage.

"Naturally it doesn't seem farfetched to you, but how many of the people here have ever met a triplet before?" I held my breath. No, I had guessed right. None of them knew triplets. "See, it is rather farfetched, at least in that sense of the word."

That should have taught her not to get into semantic arguments with professors, but youth is not wise enough to admit defeat. "I can't accept that reasoning," she continued. "It could be that you've never before met any sisters who weren't twins even though they were born on the same day. But it could also be that you've conveniently forgotten, just to prove your point."

"I certainly wouldn't forget sisters like that, if I'd ever known any."

"I think you would. In fact, I think I can prove that you would. How about a little wager? Would you be willing to put five dollars on it?"

Now I know that no honorable professor would take money from a poor student. But Judy needed a lesson she would remember once she got to Oberlin, otherwise she'd get in a lot of trouble with professors who weren't as broad-minded as I am. "Okay, you're on. And these are our witnesses when the bet is finally settled."

"Oh, that won't take long. We can settle it right now."

"Right now? How can you possibly prove I've met sisters born on the same day to the same parents who weren't twins?"

"Because you've got two such sisters living in your own house!"

"What? In my own house? Don't be ridi—. Arrrgh!"

That was the sound of the air escaping from my over-inflated windbag. At that moment, I decided that laughing at myself was a great deal more fun than being a professor. Besides, I couldn't help myself.

Weinberg's Law of Fetch

I told the story about fifty times that day (even a retiring professor has some privileges). When I arrived home, I just couldn't resist telling Dani. I also told the two sisters, born to the same parents, on the same day, who are not twins. Although they probably didn't fully appreciate the story, Rose and Sweetheart love to bark and wag their tails when they hear us laughing, so they joined in the fun. Because they hear better than they see, and because "fetch" is their favorite game, I composed Weinberg's Law of Fetch:

Sometimes farfetched is only shortsighted.

I did want to call it Weinberg's Law of Triplets, but that would have spoiled the riddle. Besides, Rose and Sweetheart aren't triplets. I believe there were seven in their litter.

So, for more memorable stories with morals to learn, get yourself a copy of

The Secrets of Consulting: A Guide to Giving and Getting Advice Successfully

Saturday, March 19, 2016

Tale of the Recent Gravity Wave Discovery GW150914

[This is a guest blog by Mark G. Gray, a physicist who understands people and many other things. Reading it put a whole lot of perpective in my life.]




Thirteen hundred million years ago in a galaxy thirteen billion trillion kilometers away, a small dark sphere looms ominously near a slightly larger dark sphere.

The small sphere is one hundred thirty kilometers in diameter.  Its surface is neither solid, nor liquid, nor gas, nor plasma.  Nor is it visible except by absence; no light passes through, nor is emitted from, nor reflected by it.  But its presence is felt throughout the universe: any unfortunate structure within a few hundred kilometers of it would be torn apart by tidal forces, with the pieces glowing X-rays as they fall into the surface and disappear from the universe.  Even the light from distant stars streaming around its edges is twisted to form a distorted halo.

The large sphere is nearly identical to the small sphere, but is one hundred seventy kilometers in diameter.

Although they pass within a few hundred kilometers of each other, the spheres do not tear each other apart.  Instead they twirl around a point approximately midway between them, moving closer and faster on each orbit, past the point where their diameters overlap, finally rotating seventy-five times per second.





















When the smaller's center collides with the larger's surface, there is no sound, no light, no X-rays, no ejection of debris, nothing to indicate a collision in the conventional sense, but instead just a wobble in the merged dark shapes and a ripple in space-time that alternately doubles and halves nearby lengths relative to widths as it passes.

The remnant of the encounter is a single dark sphere three hundred seventy kilometers in diameter, a spherical wave in space-time expanding at the speed of light, and perhaps the explosion of a nearby star triggered as the wave passes through it.

Meanwhile, only two hundred forty thousand trillion kilometers from the center of the Milky Way galaxy on its Orion arm, the planet Earth is in the middle of its Mesoproterozoic era.  The super-continent Rodinia has just formed from three pre-existing continents. Eukaryotes, cells with a well defined nucleus and organelles have emerged, but not yet evolved into multi-cellular life.  The Moon, which is still geologically active, orbits the Earth in a little over three weeks.

Two hundred thousand years ago the wave front reaches the Small Magellanic Cloud, a dwarf galaxy in the Milky Way's neighborhood.  The planet Earth is in the late Pleistocene epoch of its Cenozoic era. The seven contemporary continents are in place, the glaciers are in retreat, and modern humans have just emerged and invented agriculture. The Moon, geologically dead for over a billion years, orbits the Earth in a little under four weeks.





One hundred years ago, as the wave front passes through the stars in the Milky Way's Hydrus constellation, the human Albert Einstein uses his theory of General Relativity to show that accelerating masses can produce gravitational waves in space-time.  Karl Schwarzschild publishes the first solution to Einstein's General Relativity for a spherical mass.

Seventy-seven years ago J. Robert Oppenheimer uses S. Chandrasenkahr's work on stellar deaths to predict massive stars that have exhausted their nuclear fuel would collapse under their own weight to form a singularity.

Fifty-eight years ago David Finkelstein uses Schwarzschild's solution to show Oppenheimer's singularity would be surrounded by a spherical event horizon, a black hole, from which nothing, not even light, can escape.

Fifty-four years ago M. E. Gertsenshtein and V. I. Pustoviot describe how interfering perpendicular beams of correlated light can detect gravitational waves.

Thirty-two years ago Kip Thorne, Ronald Drever, and Rainier Weiss establish the Laser Interferometer Gravitational-wave Observatory (LIGO).

Twenty-eight years ago they secure funding for LIGO.

Twenty-two years ago LIGO construction begins.

Fourteen years ago LIGO becomes operational.  LIGO operates for eight years without seeing a gravitational wave.

Six years ago LIGO is shut down for improvements.  The gravitational wave moves among our sun's nearest neighbor stars.

On September 12, 2015 the Advanced LIGO starts its first operational run, with just enough sensitivity to detect the gravitational wave that is now about four times further from Earth than Voyager 1.

At 09:50:45 UTC on September 14, 2015 the Advanced LIGO at Livingston, Louisiana detects the gravitational wave when its four kilometer length oscillates relative to its four kilometer width by a fraction of the size of a subatomic particle.  Several thousandths of a second later and three thousand two kilometers away, the Advanced LIGO at Hanford, Washington detects the gravitational wave.  The signal, designated GW150914, cycles eight times, increasing in both intensity and frequency, until it reaches an intense chirp at its crescendo.

On February 11, 2016 the Advanced LIGO team announces their detection of a gravitational wave.  The coincidence of the signal at the two detectors implies a non-local source.  The similarity of the two signals implies the detection of a single, real event.  The time difference between the signals triangulates a direction, and the red-shift of the signal gives a distance to the source.  The spectrum of the signal matches general relativity's prediction for the inspiral and merger of binary black holes and lets them reconstruct what happened:

    A black hole twenty-nine times the mass of our sun encounters
    another black hole thirty-six times the mass of our sun.  As the
    black holes scatter around their center-of-mass by mutual
    gravitational attraction, they lose kinetic energy radiated away
    as gravitational waves.  The binary black holes, now trapped in
    orbit, centripetally accelerate around their center, radiating
    more gravitational waves, losing more energy, moving ever
    closer together and orbiting ever faster.  They finally merge,
    emitting a blast of gravitational waves, to form a single black
    hole about sixty-two times the mass of the sun, with three solar
    masses converted entirely to gravitational wave energy in a
    spherical front moving outward at the speed of light.  At its peak
    the merger produces several times more power than all the stars
    in the observable universe.

p.s. No, the GW doesn't stand for Gerald Weinberg, nor for anything as small as our Earth or even our little corner of the Universe.