Why would I quit a cool job working for myself to join IBM?
Big Clients. It's that simple. Big companies are going to take Smalltalk to the next level. I wanted to be a part of it. But big companies don't hire little consulting outfits to help them make big decisions.
I was also spending too much time fooling with my web server and needed something really challenging to pull me away from it. And they got to me first. And they made me a nice offer...
A previous client recently asked how things were going for me at IBM. Here's a fragment from my reply...
My work has been like peeling an onion. I work for OTP which is part of OTS which is part of ICG which is part of ... I've decided to focus my attention on the 15 people working at a particular client and then generalize that work to the hundred or so in OTP. The rest I will try to ignore. My message  to them will sound familiar to you. Here I will have the continuity to prove the ideas in an enterprise scale setting. I feel a certain impatience coming over me. I don't want to suppress it. I'm here to make something happen. If its not going to happen, better to find out early.
So now I've got IBM's WebExplorer on a ThinkPad and I can see why people have had a little trouble operating these pages with it. Here are some tips...
Press F5 to reload a page you think you have changed. That will reload the cache. Be sure to do this even when following the fresh reference
on the thank you page.
The search field on the FindPage
doesn't work. Use the
File - Open document
command to retrieve search results by URL.
The following URL would search for Ralph...
Thank You. WebExplorer
can't tell one thank you page from another. This is a real pain when you author more than one page. Every time you save
confuses the thank you page you get back with the first one you got. Then, when you back up, you find WebExplorer
has rerooted you back at the very first edit page you saved.
It does do one nice thing though -- It word wraps the text area of the EditText
page. This is great for editing long bullets like this one. It's important that the wrapping happens only on display. My server only sees CRs that were actually typed.
So, how do CRC cards mix with Use Cases?
They mix just fine. But, you have to understand that they do completely different things. IvarJacobson
's methodology is one of inclusion, mine, exclusion. He assumes that one must forage for requirements and that the use case is the best basket for carrying them. When you've got your baskets filled, you can start organizing all that you've collected. Somewhere downstream in that process objects emerge. In other words, He suggests we CollectAndOrganize
I prefer to FocusAndInvent
. I assume that sufficient wisdom and experience can be assembled in a room such that only a vague requirement is needed to get the process moving. A typical requirement goes something like:
We need a better way to handle out-of-sequence endorsements.
When everyone in the room knows what an endorsement is, and everyone also knows a hundred things that can go wrong when they are entered out of order, the problem is not one of collecting more information. The problem is one of progressively narrowing the focus of the group until the pieces of a solution fall into place, until invention happens.
Those without the confidence to invent find my position hard to accept.
Much of the dynamic of crc modeling involves people communication and confidence building.
Confidence builds as issues are addressed and set aside.
The process blocks when one fails to address or fails to set aside.
- Address an issue by proposing a scenario that exposes it. Work the scenario until a more telling scenario replaces it or the issue melts away.
- Set aside an issue by demonstrating that it has been sufficiently addressed. Does everyone understand each others positions? Have all the parts been labeled so that they can be recalled at will? If so, then you can go on.
Continue until a requirement has been cut to the bone.
When the bare facts are before you,
either invention will come or it won't.
When invention comes it comes quietly.
You can miss it if you move too fast.
An invention is a decision made well.
When you look around the room do you see all heads
nodding slowly. If so, you've got one.
Failing to invent is ok too. The experience turns everyone into dedicated solution scouts primed to see analogous problems and their solutions in every aspect of their work and play. It is from this that their wisdom and experience is built.
Am I an empowered user?
I have a black box with a cord that I am supposed to plug in regularly. The box scolds me when I plug it in. The longer I wait, the more scolding I get. I'm thinking ... maybe I shouldn't plug it in anymore.
More time on the net...
Well, so much for big companies.
I've resigned from my position as a Principal in the IBM Consulting Group.
I expected pluses and minuses, but just had to get inside to see how they balanced out for me.
Now I just hope Cunningham & Cunningham will take me back.
I'm confused (as usual<g>). Not so much, Ward, by your temporary sojourn in the big land of tiny cubes, as by the idea that use cases and CRC are somehow competing approaches to requirements/design. Seems to me that use cases are a great way to gather requirements, CRC is a great way to turn the requirements into an efficient object model. CRC has the added benefit of being a team activity. Rather than the "object architect" coming down off the mountain, rose model carved on stone tablets, the model emerges from active collaboration by the entire team -- so that there is enormous evolutionary pressure on the model, and so that every single team member can GrokInFullness
are both important to successful software development. Or am I missing something? -- BillBarnett
hehe, as an ex IBMer I can appreciate your feelings about getting the big clients. For me, it was all about getting my sweaty mitts on all the hardware and software I could eat. I learned more in the first 6 months there than I did studying computers at University. Bloody cool, and I have warm fuzzies to this day when I think of Big Blue.. -- OtisWildflower?
I'm there... really like it... I find IBM to be one of the most stimulating environments I've ever encountered. No plans on leaving any time soon. -- MattSimpson
I love that bit about the black box that scolds you... I had to read it 3-4 times to get it right! Loved that backlash when it hit! -- AlistairCockburn