Saturday, September 19, 2009

Desert Island Reading List

Blogger Jon Jagger describes himself as a self employed software consultant-mentor-trainer-programmer etc specializing in agile software development (people and process), test driven development, deliberate practice, design, analysis, OO, UML, curly bracket languages (C#, C++, Java)

Jon recently published a list of 10 (+1) books he would like to have if marooned on a desert island. It's a fascinating list, and not only because it contains three of my books. You can read Jon's justification for each book at:

http://jonjagger.blogspot.com/2009/09/desert-island-books.html

But here they are. How many have you read?

* [1] Kevin Ashurst. (1977 Long out of print). World Class Match Fishing, Cassell, ISBN 0304-297291.

* [2] Phillip Pullman. (1995). The Northern Lights (The Golden Compass in USA, Knopf), Scholastic, ISBN 043995178X

* [3] Douglas Adams. (1979). The Hitch Hikers Guide to the Galaxy, Pan, ISBN 0330258648

* [4] Gerald Weinberg. (1985). The Secrets of Consulting, Dorset House, ISBN 0932633013

* [5] Gerald Weinberg. (1998). The Psychology of Computer Programming: Silver Anniversary Edition, Dorset House, ISBN 0932633420

* [6] Monty Python. (2001). The Life of Brian (screenplay), Metheun, ISBN 0413741303

* [7] Jon Bentley, (1989). Programming Pearls, Addison Wesley, ISBN 0201103311

* [8] Fred Brooks (1985 2nd edition). The Mythical Man Month, Addison Wesley, ISBN 0201835959

* [9] Peter Senge (2006 2nd edition). The Fifth Discipline, Random House, ISBN 1905211201

* [10] Gerald Weinberg (2001). Introduction to General Systems Thinking Silver anniversary edition, Dorset House, ISBN 0932633498

* [11] John Gall (2002 3rd edition). The Systems Bible: The Beginner's Guide to Systems Large and Small , General Systemantics Press, ISBN 0961825170

So, that's Jon's list. What would be on yours? Are any of Jon's choices books that you wouldn't care to have on your desert island?

p.s. Jon's going to be at AYE Conference in November, and so will I, in case you would like to discuss choosing books and other topics with us.

Thursday, September 10, 2009

50 more ways to improve your business

Wolfram Arnold writes:
Here are the points I've transcribed from the meeting today. At some point I lost count as to which one was odd and which one was even and I just recorded them all (touch-typing helped :-):

---------------------
Jerry Weinberg 8/20, 50 things to improve business

2. back up everything

4. Rule: do nothing, revised with 3 caveats: a) don't do it if there's someone that can do it better; b) don't do it if there's someone that can do it adequately; c) if it makes me really happy, do it anyway; d) if someone can do it 85% as well as I do, let them do it; e) anything not worth doing is not worth doing right; f) if in doubt charge for sales trips

6. make them pay something, with their time, their money -- if they don't pay for it they don't value it

8. if it's not on paper, don't do it

9. listen to what other people are telling you

10. don't communicate to somebody, but communicate with somebody

11. always have an exit strategy

12. make them feel like your client has a part in the final outcome; make sure they have their fingerprints on it

13. listen for what they're not saying

14. listen to the "music", body language, intonation

15. always be ready to sell your product

16. if you find yourself reluctant to sell your product, there's something wrong with it

17. any successful services company has some fixed priced product to sell

18. given them entry points that they can buy

19. recurring revenue model, e.g. via contract maintenance plans, or follow-through

20. have a follow-through clause in contract so you can know how you're doing

21. charge more money if they don't want you to come back after some time, e.g. 3 months

22. if you just build it they probably won't come

23. manage expectations, book: Managing Expectations, by Naomi Karten

24. Time spent in reconnaissance is time well spent

25. You can observe a whole lot just by watching (Yogi Berra)

26. Go hard or go home; fully commit all resources needed, or kill it mercilessly

27. Commit enough to learn what you have to learn to find out whether it's worth pursuing or killing

28. People who work in an Agile/iterative way often fail to do the discovery

29. Ideas by themselves aren't as valuable as you think they are; don't guard them too closely

30. Nothing is as dangerous as an idea, esp. if it's the only idea you have

31. Never rest on your past successes; there is always something more you could be doing; if you're not learning, you're dead

32. Sharing competitive advantages brings 10-fold rewards; give it away, it comes back

33. Being able to say 'no'

34. Research clients as if you were hiring them

35. Recognize that every client is unique.

36. You don't have to remember everything to succeed.

37. It's ok to let a client go if it's not the right fit; you should organize your business such that it's ok to let a client go, i.e. don't be over-dependent on any single client

38. The best way to build a business is to stay in business; stay around, build a reputation and credibility

39. Actively solicit feedback from clients; actively extract the feedback, e.g. watch the audience

40. Don't be alone in your work; have someone to talk to

41. Honor the people who are your sounding board and bring feedback, e.g. life partners, friends, ...

42. Anything that's annoying or repetitive should be automated or stopped

43. Track your budget & cost every month

44. Don't make mistakes over your budget or your cost.

45. Don't spend your money on office decoration, esp. if your clients don't come to your office

46. Always try someone out before you hire them

47. Don't fall for the big lies: "we're just about to get funding" "our data is clean" "your check is in the mail" "we're going to sign it next month, just keep working" "don't worry about the contract" ...

48. Preventing any one of these mistakes will pay for this conference

49. Double your reading speed

50. Choose not to read a lot; don't read stuff that's not worth reading

51. Stay off Facebook & Twitter

52. Sometimes you can save money by spending money; and sometimes the reverse. Learn to tell the difference

- Thanks for the great job, Wolfram

Sunday, August 23, 2009

50 Ways to Improve Your Business

At last week's BizConf, I ran a session based on an idea from Dwayne Phillips, where a bunch of independent businesspeople brainstormed 50 small ways to improve your business. The ideas flew fast and furious, so I assigned two participants, each to capture alternate ideas. Even so, it was hard to keep up with the flow. The lists were quite overwhelming, so I'll present them in two separate blogs. Today, it will be Jason Seifer's list. Jason said, "I wound up just logging everything, because I touch type like in your first rule."

So, here's Jason's list:

1. Learn to touch type.
2. Back-up everything. Every day.
3. Keep as much stuff online as possible.
4. Do nothing. Don't do something if someone can do it better. Don't do it if someone else can do it adequately. Do it anyway if it makes you happy. Don't do it if someone else can do it 85% as well as you.
5. Anything not worth doing is not worth doing right.
6. If in doubt charge for sales trips. If they're not willing to pay for it they don't value it.
7. If it's not on paper don't do it. If there's money involved it has to be written down. Never agree to money over the phone. If on phone, confirm in writing.
8. Listen to what other people are telling you. Instead of communicating to somebody, communicate with somebody.
9. Always have an exit strategy.
10. Make your client feel like they have a final part in the outcome. Make sure they have their fingerprints in it.
11. Listen to what they're not saying. Listen to body language and tone of voice.
12. Always be ready to sell your product if they're interested. And if they're not.
13. If you're bashful about your product, there's something wrong with your product.
14. Any successful services company has some fixed product that they sell. Have a ladder leading to your ultimate product. Don't make one big leap to the final product.
15. Make sure your contracts have some kind of follow-through so you can see how they actually came out. You won't know if you're doing well if they don't come back.
16. If you just build it they probably won't come. Alternately: if you build it be prepared to wait.
17. Manage expectations.
18. Time spent in recon is time well spent. But you have to be watching. "You can observe a whole lot just by watching."
19. Go hard or go home. Fully commit the resources to make something work or mercilessly kill it. You may not always know when it's time to kill it.
20. Ideas by themselves are not as valuable as you think they are. Ideas aren't worth anything so don't guard them too closely. "There's nothing as dangerous as an idea if it's the only idea you have."
21. Never rest on your past successes, there's always something more you could be doing. If you're not learning you're dead.
22. Sharing competitive advantages brings back advantages ten-fold.
23. Be able to say "No" to a potential client.
24. Research your clients as if you were doing the hiring.
25. If you're in the services business every client is unique. "We're different" "You are, just like everybody else."
26. You don't have to remember everything to succeed.
27. It's always ok to let a client go if it's not the right fit any more.You should organize your business so it's ok to let any one client go at any time.
28. The best way to build a business is to stay in business. Build your business so that you hang around. You may not make a lot of money but you build your reputation.
29. Actively solicit feedback from clients.
30. Actively extract the feedback. There's a lot of feedback you may not pick up on.
31. Make sure you're not alone in your role. This way someone can be honest with you.
32. Anything that's annoying and repetitive should be automated or stopped.
33. Track your budget/cost every month.
34. Don't make sampling mistakes about your budget and cost. One of the major mistakes that people fail at is expecting that income will stay the same. You might land a big client this month but might not have one next month so don't overspend.
35. Don't spend your money on office decorations. Very few of us are in a business where clients come to your office. You don't want your customers to think you're spending their money on their office furniture.
36. Make sure you've worked with someone before you hire them (if possible).
37. Learn the big lies you get from clients.
38. Double your reading speed.
39. Cut down on what you read.
40. Stay off facebook and twitter unless you can relate it to your business.
41. Sometimes you can save money by spending money.
42. Sometimes you can save money by not spending money.
43. Everyone who wants to sell you something will tell you it saves money.
44. The examples might not always teach what they're supposed to.
45. Many minds can do a better job than single minds. But not necessarily so.
46. You have to be organized.
47. Know your own limitations.
48. Learn quickly whether or not you want to work with someone.
49. If you see an organization with no enthusiasm for what they're doing they probably don't have enthusiasm for what you're offering.
50. If an organization doesn't care enough to organize, nothing is going to happen.
51. Don't mistake a solution idea for a problem definition.
52. People want a recipe but no recipe works for every organization.

So, that's Jason's (half) list. Each one could probably be a blog entry, at least, so if you want clarification, or to clarify, add a comment. I'll post Wolfram's (half) list when the traffic on this one dies down.

Tuesday, August 04, 2009

The Evolution of an Exercise

(Rhonda asks Jerry for a little consultation.)

RHONDA: I'm a little nervous about my "speech" at a conference in a couple of weeks and wanted to see if you have time for some feedback.

JERRY: First feedback: If you weren't nervous, then you'd give a boring speech, guaranteed. Breathe into your nervousness and it becomes excitement.

RHONDA: It's the first time I'm presenting representing my company, the virginal gig so to speak, and I'm unsure what to prepare to make best use of the limited time while not knowing how many participants are going to join my session.

JERRY: Don't worry about "using time." Design the session so that the most important things come first (or early). That way if you "run out of time," you've covered as much as you could have.

RHONDA: "Whatever happens, happens" has been my mantra for a while already, and most of the "what-if's" won't get my blood pressure up (at least not until the hour before I go up front). To be honest, I've thought about this session for so many weeks now and feel so close to it that I feel stuck, like I have blinders on, and can't see alternative options how else to execute it.

JERRY: Stop thinking about it.

Instead of thinking, start doing. Figure out a way to practice it on some friends. Invite some of those friends over for wine and cheese or beer and pretzels or something, then use them as a surrogate audience and listen to their feedback.

RHONDA: I'm advertised thus: Starting Your Own Business - Building the Life You Want. The purpose of this presentation is to share with the audience the journey the presenter followed from international student via international employee and trailing spouse to expat coach and owner of her own company.

JERRY: Rewrite this, if only for your own use. The purpose is not to "share experiences with them." That's a means of achieving the purpose, which is something like "helping the audience members to succeed in starting their own business." IOW, more about them; less about you.

RHONDA: Rhonda draws on over 10 years of personal expatriate experience that made her want to support others. The audience will hear tips and descriptions of how and where she got the necessary information to dot the i's and cross the t's en route to realizing her dream. She will also make time for and encourage the audience to share their experiences and brainstorm ideas to make sure everybody who wants to start a business will leave her presentation motivated and informed.

Objectives I have for the "speech" (assuming participants come to hear about how to start their own businesses - is that a mistake?

JERRY: It will reduce your audience, which could be good or bad. Who else would benefit from this session?

RHONDA: Should I assume anything at all?):

   a) clarify their vision / focus their goals

   b) raise awareness of hidden obstacles

   c) identify concrete action steps to get started

Writing a business plan answers all three objectives.

(I've compiled a handbook with information about expatriate work permits, business structure comparison, business owner character traits, and useful links and resources to cover more start-up info. The handbook will be available either as print-out or .pdf file in exchange for their email address after the presentation.)

JERRY: Emphasize the handbook. People like takeaways.

Also emphasize what Eisenhower said: "The plan is nothing; the planning is everything." Maybe you could have them step through your planning process with you, each one (or team) doing their own planning steps as you go along.

RHONDA: Here are some of the parameters:

   75 minutes

   Should expect between 20 and 50 participants

   Don't know exact number

   Can't put the whole start-up process in 75 minutes

JERRY: So do selected parts, most important first.

RHONDA: I won't spend 75 minutes lecturing

JERRY: You'd better not.

RHONDA: Session Outline

   (5-10 minutes intro/warm-up)

   Exploration: 10-15 minutes to explain benefits, structure, and reasoning for a business plan
   Introduce business plan segments (e.g. client and product profile, market profile, marketing strategy, organizational structure and finances)
   Set up exercise: If I have 20 participants, I'll use one new venture/market scenario. One group per segment. Each group reads background information I provide (or would it be easier if they make up their own venture and background?) and answer business plan questions. Time: ca. 5 minutes

JERRY: Definitely better if they use their own, and you do it incrementally. You don't need to do the overview up front. You want to get them doing things more quickly than that. As it is, you have more than 1/2 hour before they do anything.

For example, pick the part of planning that's most important and start with that. When you've done that, and everyone has done that and questions are answered, move to the next most important. Do as many as you can cover properly without rushing. Then, when you see that ten minutes are left, conclude with an overview of all the segments they need to do to have a plan, and tell them about the handbook--again.

RHONDA: If I have 50 participants, I'll use two or three new venture/market scenarios, e.g. dog-wash salon in Seattle, pizzeria in Paris, recruitment office in Barcelona?

JERRY: No, too much time explaining the scenarios, which do them no good. Doing their own scenarios saves this time and ensures real interest in the exercises. If someone doesn't have one of their own, have them pair with someone who has one of their own.

RHONDA: Discovery/Application:
   Participants write a business plan for their venture. Time: ca. 20 minutes.
   Debrief/Application: In whole group, write executive summary for each venture, taking most important bits from each segment on flip chart, (take a picture, send it to them afterward with a thank-you note). Time: ca. 30 minutes.

JERRY: You can do this with lessons they learned from each different
startup, which lets them see what different startups have in common, and
what are the exceptions.

RHONDA: Question: Is 30 minutes enough debrief-time for an exercise like this and group size of 50 people?

JERRY: No. At least five days would be required to do it properly. But, you don't have that, so do what you can. If you do this incrementally, you can extract lessons after each segment, then do as many segments as
develop naturally.

RHONDA: Am I trying to cram too much in in general?

JERRY: Yes.

RHONDA: Ideas for a possible shorter exercise that would make 50 people feel involved and stimulated?

JERRY: Basically the same exercise, but chopped up and presented incrementally.

JERRY: BTW, if you really have 50, best to have them work in teams of 3-5 people, each formed around one person who has a specific startup in mind. To do this, you have individuals write signs that say, "Dog- walking business," or "Real-estate for the rich and famous," or "Coffin upholsterer," or whatever they're actually thinking of starting. Those that have signs hold them up, and people attach themselves to the ones they're interested in to make teams.

Does this help?

RHONDA: Yes!

Saturday, July 25, 2009

How to Be Happy, Though in a Non-supportive Environment

Jerry: Here's another email consulting dialogue that Larry found helpful.

Larry: My name is Larry. I am a software test manager at an insurance company east of Chicago.  I have faced challenges when trying to do what I consider good testing.  These challenges include standards that mandate scripted test cases, fellow managers who don't want to discuss work, and security policies that don't allow us to quickly get tools that will aid in our testing.

A while back I discovered Cem Kaner's web page and it opened me up to a whole new world of software testing.  I learned of people like you, James Bach, Michael Bolton, and several other great thinkers.  I wonder how many people spend a career in software development/testing/ management without ever learning of these great people.


Jerry: Quite a few. To have a great career in any profession, you have to reach out and find sources such as these. You need to participate in a conference once in a while (the AYE Conference in November would be my number one choice in your situation). After that, our Problem Solving Leadership workshop would be an ideal goal to aspire to. You should certainly join your local interest groups, and participate.

Larry: This has led me to a question that I hope you can help me with.  How smart does someone have to be, to be happier when they read your books?

Jerry: Sometimes, just reading is sufficient, but most of the time, the reader has to begin doing something they weren't doing before. Like the suggestions above. Or like tackling one of the problems you cited--the standards, your fellow managers, or security policies. Or some smaller problem that nags at you.

But only ONE at a time, to learn what works for you and your organization. And what doesn't work.

(If nothing works, you want to be looking for a better place to work.)

Larry: It's almost like you know me. I think I have an NT temperament (QSM Volume 3 helped here) and based on some of the other research I've done it is definitely true that when I have a lot of tasks and become stressed I almost lock up. I rationalize that it is because I can't devote enough time to do a good job on any one thing, but I know I need to just suck it up and handle on item really well. That may go a long way to improving my happiness.

Jerry: From the little I know, I think if it were me, I'd try to find (at least) one of my fellow managers who is willing to spend some time with me discussing things that we could accomplish to improve matters for our company.

But any little thing you could move forward would be educational--even if it "fails" you can extract some learning from the attempt.

Larry: I have read five of your books so far:

* Are Your Lights On?
* Quality Software Management: Volume 1
* Quality Software Management: Volume 3
* Exploring Requirements
* Weinberg on Writing

To be honest I probably can't say "read" in the same sense that you might. I read some areas in depth and browsed others. I'm making second passes through several.


Jerry: That's exactly the way I read.

Larry: My worry is that I feel less happy after having read your books.  They have shown me how much I have to learn, and I believe that I'm not in the right environment to continue this learning.

Jerry: At least you haven't run out of things to learn. Now THAT would be really depressing.

As for the environment for learning, no environment can stop you from learning, if you really care. But, yes, you may eventually decide to keep an eye out for an opportunity in a different environment.

Larry: Each step I take towards more critical thinking, a strong thirst for knowledge, a greater understanding of how much I really don't know is a step I'm taking away from my peers at work.

Jerry: As for your peers, by taking a step ahead of them, you may well be modeling a new way for them to be happier. It's called being a "leader."

Larry: This has led to a lot of work related stress and unhappiness, and I'm more unhappy than I have been in a long time.

Jerry: In volume 4 of Quality Software Management, you'll learn about the Satir Change Model, and why significant change is usually preceded by a period of chaos, which might feel unhappy until you realize that it's a natural step on the way to happy change.

Larry: That's interesting. My personal experience says that I do tend to have phases of unhappiness, but I come out of it much stronger. It is just hard to know where I am in my journey at a specific point in time. Am I climbing up or falling down?

Now, I'm not writing to blame your great books for my unhappiness. I just have a feeling that other people have had similar journeys, and I was wondering if you've encountered a similar phenomenon. Do you have any more insights for a young unhappy software tester?


Jerry: I suspect my newest book, Perfect Software might be a good read for your manager and your fellow managers

Larry: I actually forgot about that book on my list. It is sitting on my desk pointing anyone who walks in. I'm hoping someone will pick it up and be interested, but that hasn't happened yet.

Jerry: You need to be more patient, and more aggressive, at the same time. Not easy!

Tuesday, July 07, 2009

Peter Principle Simulated

Some Italian professors have tried to simulate the famous Peter Principle:

"All new members in a hierarchical organization climb the hierarchy until they reach their level of maximum incompetence."

http://www.technologyreview.com/blog/arxiv/23800/

The Peter effect arises from the practice of promoting the best performer at Level N to a position at level N+1.

The Italians also simulated two other promotion policies:

1. Alternately promote first the most competent and then the least competent individuals.

2. Promote individuals at random.

According to their simulations, each of these methods improves the efficiency of an organization over the Peter method.

My thought: They could try promoting on the basis of who is most suited for the next level job. Duh!

Or maybe they could try not mixing the concept of "promotion" with that of "reward."

Or maybe even getting rid of the hierarchical notion altogether.

The Paul Principle

As a relevant post-script for my audience, they might want to look into the "Paul Principle," proposed by Paul Armer, who, like me, started out in computing as a desk calculator operator (or "computer" as we were known back then).

"People become progressively less competent for jobs they once were well equipped to handle."

Paul proposed his law in 1970, the year after Peters proposed his. Paul claimed his principle was more relevant in high-tech fields, when the complexity of jobs grows faster than the people doing them. The Paul Principle has been virtually forgotten, but I think it is still worth some careful thinking by IT managers and consultants.

The Other Paul Principle

It seems there's another "Paul Principle," after St. Paul's treatise in Corinthians:

"Continue to provide people with what they need to succeed."

I suspect this management principle would also prove more effective at growing an organization than the Peter Principle.

Perhaps those old Pauls knew something that's still worth studying today.

Friday, July 03, 2009

Why Choose One Conference Over Another?

In these days when money is short, lots of people cannot afford to participate all the conferences they might have attended last year. Money may be the first criterion for choosing conferences, but it's not the only one. I'm going to three conferences this year, each chosen by different characteristics. For me, money doesn't enter into it, so my reasons might be helpful for those who can afford to be in at least one conference, but are trying to choose. my first step in choosing a conference is to eliminate the majority of conferences by applying the following guides.

What Makes Conferences Less Attractive


I generally eliminate conferences that


- overschedule event with no time or place for spontaneous meetings


- overcrowd, usually to maximize profits, with just too many people, which encourages people to hang out only with their old pals


- lack adaptability so opportunities pass by without notice or care


- offer too much lecturing, not enough interaction, and insufficient experiential work--or none at all


- invite presenters of widely varied and untested skill and preparation


- do not name their presenters in advance, or give biographical information


- provide insufficient time and space for socializing, meeting new people


- allow little or no interaction with the presenters (In some conferences, presenters eat in a special area, intentionally separated from the participants. In others, presenters speak and run.


- schedule sales pitches instead of teaching presentations


- schedule canned pitches instead of original material


- offer too many plenary sessions, when participants have no choice of what to attend



Few conferences meet all my criteria, but I look for those conferences that do, like the three (below) that I am attending this year. I have long-ago reached a stage in my life where I cannot tolerate several days sitting in an uncomfortable chair listening to someone read bullet points from PowerPoint slides.

CAST

[http://www.associationforsoftwaretesting.org/drupal/CAST2009]

I participated in the Conference of the Association for Software Testing (CAST) last year, and I'm returning this year because the subject of the conference is precisely focused on my current interest: promoting and improving the practice of software testing.

The sessions I attended were all of high quality and interest to me. Also, it's a reasonably small conference with numerous opportunities to participate in spontaneous hall sessions.



BizConf

[http://bizconf.heroku.com/]

BizConf is a new conference this year, and I'm participating primarily because of the other participants, who, like me, are small entrepreneurs running technology businesses. It's a small conference, limited to 75 participants, and scheduled once again to encourage spontaneous hall and meal sessions. All of the presenters I know are of the highest quality.

AYE (Amplifying Your Effectiveness)

[http://www.ayeconference.com]


You might say I participate in AYE every year because I'm a host--one of the people who created the conference. But I wouldn't have been a host in the first place if I had been satisfied with most of the conferences available. When we designed the conference, we had several issues in mind in addition to the ones listed above. We wanted the conference to be reasonably priced, easy to reach, and easy to learn more about than could be found on a simple website. We created a wiki that registrants could write on and anybody could read. We retained a small staff of intelligent, personable people (Lois and Suzy) to give information and solve problems over the phone. I hope we've made it easy to get to AYE, and I hope to see you there or at one of the other two conferences I'll be attending.