Software dev, tech, mind hacks and the occasional personal bit

Category: Book Reviews

A few choice quotes from “The Unbearable Lightness Of Being” by Milan Kundera

Starts slowly with quite a philosophical bent, but becomes really compelling once the main characters are introduced. Some memorable quotes:

Happiness
“If Kerenin had been a person instead of a dog, he would surely have long since said to Tereza, ‘Look, I’m sick and tired of carrying that roll in my mouth every day. Can’t you come up with something different?’ And therein lies the whole of man’s plight. Human time does not turn in a circle; it runs ahead in a straight line. That is why man cannot be happy: happiness is the longing for repetition.”

Love
“The brain appears to possess a special area which we might call poetic memory and which records everything that charms or touches us, that makes our lives beautiful… Their love story did not begin until afterwards: she fell ill and he was unable to send her home as he had the others. Kneeling by her as she lay sleeping in his bed, he realized that someone had sent her downstream in a bulrush basket. I have said before that metaphors are dangerous. Love begins with a metaphor. Which is to say, love begins at the point when a woman enters her first word into our poetic memory.”

A feeling of importance
“We all need somebody to look at us. We can be divided into four categories according to the kind of look we wish to live under. The first category longs for the look of an infinite number of anonymous eyes, in other words, for the look of the public…
The second category is made up of people who have a vital need to be looked at by many known eyes. They are the tireless hosts of cocktail parties and dinners…
Then there is the third category, the category of people who need to be constantly before the eyes of the person they love. Their situation is as dangerous as the situation of people in the first category. One day the eyes of their beloved will close, and the room will go dark..
And finally there is the fourth category, the rarest, the category of people who live in the imaginary eyes of those who are not present. They are the dreamers.”

Kitsch
“Kitsch is the absolute denial of shit, in both the literal and the figurative senses of the word; kitsch excludes everything from its purview which is essentially unacceptable in human existence
Kitsch causes two tears to flow in quick succession. The first tear says: How nice to see children running on the grass! The second tear says: How nice to be moved, together with all mankind, by children running on the grass! It is the second tear that makes kitsch kitsch. The brotherhood of man on earth will be possible only on a basis of kitsch…
And no one knows this better than politicians. Whenever a camera is in the offing, they immediately run to the nearest child, lift it into the air, kiss it on the cheek. Kitsch is the aesthetic ideal of all politicians and all political parties and movements…
In the realm of totalitarian kitsch, all answers are given in advance and preclude any questions. It follows, then that the true opponent of totalitarian kitsch is the person who asks questions…
From that time on, she [Sabina] began to insert mystifications into her biography, and by the time she got to America she even managed to hide the fact that she was Czech. It was all merely a desperate attempt to escape the kitsch that people wanted to make of her life.”

The Secrets of Consulting by Gerald Weinberg

The Secrets of Consulting by Gerald Weinberg is one of the most entertaining (largely?) non-fiction books that I have read – a heady mix of How to Win Friends and Influence People, Fear and Loathing in Las Vegas (just look at the illustrations!) , and the 10 Commandments. The book provides general advice, case studies/stories and then derives general “rules” and recommendations from these.

Personally, I found the chapter on the pricing of consulting to be particularly interesting. Thinking about setting a price previously, I would have suggested it should be enough to cover costs and make a bit of a profit. Weinberg points out that price is more than this – it is a big factor in the relationship and the level of respect for the consultant.

The Weinberg’s consulting “rules” are quite numerous – my personal favourites are:

  • “If you can’t fix it, feature it.”
  • “It may look like a crisis, but it’s only the end of an illusion.”
  • “You’ll never accomplish anything if you care who gets the credit.”
  • “If something’s faked, it must need fixing.”
  • “The name of the thing [label] is not the thing.”
  • “It tastes better when you add your own egg.”
  • “You don’t get nothin‘ for nothin‘. Moving in one direction incurs a cost in the other.”
  • “Whatever the client is doing, advice something else.”
  • “What you don’t know may not hurt you, but what you don’t remember always does.”
  • “Clients always know how to solve their problems and always tell the solution in the first five minutes.”
  • “When change is inevitable, we struggle most to keep what we value most.”
  • “The biggest and longest lasting changes usually originate in attempts to preserve the very thing ultimately changes most.”
  • “Effective problem-solvers may have many problems, but rarely have a single, dominant problem.”
  • “Make sure they pay you enough so they’ll do what you say. The most important act in consulting is setting the right fee.”
  • “The more they pay you, the more they love you. The less they pay you, the less they respect you.”
  • “Spend at least one day a week getting exposure.” and “Spend at least 1/4 of your time doing nothing.” and make sure your fee covers this.
  • “Set a price so you won’t regret it either way.”
  • “If they don’t like your work, don’t take their money.”
  • “Cucumbers get more pickled than brine gets cucumbered.”
  • “Give away your best ideas.”
  • “Look for what you like in the present situation and comment on it.”
  • “Study for understanding, not for criticism.”
  • “Never promise more than 10% improvement.. if you happen to achieve more than 10% improvement, make sure it isn’t noticed.”
  • “Consultants tend to be the most effective on the third problem you give them.”
  • “The child who receives a hammer for Christmas will discover that everything needs pounding.”

How to Win Friends and Influence People

“How to Win Friends and Influence People” by Dale Carnegie is a very interesting and practical book. Of the personal/professional development books that I have read, this one is probably the most valuable.

Carnegie summaries each chapter in one sentence as a “principle”. Here they are:

  • Don’t criticise, condemn or complain.
  • Give honest and sincere appreciation.
  • Arouse in the other person an eager want.
  • Become genuinely interested in other people.
  • Smile.
  • Remember that a person’s name is to that person the sweetest and most important sound in any language.
  • Be a good listener. Encourage others to talk about themselves.
  • Talk in terms of the other person’s interests.
  • Make the other person feel important – and do it sincerely.
  • The only way to get the best of an argument is to avoid it.
  • Show respect for the other person’s opinions. Never say, “You’re wrong.”.
  • If you are wrong, admit it quickly and emphatically.
  • Begin in a friendly way.
  • Get the other person saying “yes, yes” immediately.
  • Let the other person do a great deal of the talking.
  • Let the other person feel that the idea is his or hers.
  • Try honestly to see things from the other person’s point of view.
  • Be sympathetic with the other person’s ideas and desires.
  • Appeal to the nobler motives.
  • Dramatise your ideas.
  • Throw down a challenge.
  • Begin with praise and honest appreciation.
  • Call attention to people’s mistakes indirectly.
  • Talk about your own mistakes before criticising the other person.
  • Ask questions instead of giving direct orders.
  • Let the other person save face.
  • Praise the slightest improvement and praise every improvement. Be “hearty in your approbation and lavish in your praise.”
  • Give the other person a fine reputation to live up to.
  • Use encouragement. Make the fault seem easy to correct.
  • Make the other person happy about doing the thing you suggest.

Although these points give a bit of an idea what Cargnegie is advocating, I’d highly recommend reading the book. Each chapter is filled with stories – they are the valuable part as they provide examples of speeches, letters and conversations.

People have criticised the book as coldly manipulative. From reading the table of contents and the title of the book, I would be inclined to agree. Personally, from the content of chapters themselves, I find that a different story emerges. My reading is that Carnegie suggests that most people are fundamentally nice, and if they enjoy your company and you make them feel good they will reciprocate by looking out for your interests. Similarly, people will feel guilty if they are in the wrong, and will resolve their mistakes, as long as they are not angry from hurt pride or similar. Carnegie paints people as highly emotional beings, driven by pride and ego, but with huge untapped potential and happy to help others.

If I had to choose the 3 most important points from the book, I’d say:

  • People desire a sense of importance. Anyone will be pleased to have their opinion sought, talk about something of interest to them or have their achievements recognised and praised.
  • Use a light and indirect touch when trying to change people. Rather than criticising directly, explain a how you made a similar mistake in the past and the consequences, or give the person a good reputation to live up to.
  • When you make a mistake, don’t hide it or argue. Instead, admit it straight out and blame yourself in the strongest terms.

I borrowed the book from the library, but am planning to buy my very own copy. It is worth having on the bookshelf and re-reading.

Neuro Linguistic Programming – Part 2

This is the second part of my post on NLP. Part 1 is available here.

Building Rapport
To build rapport, the book recommends that you pay careful attention to the person you are speaking with and match their physical posture, expressions, breathing, movements, voice and language patterns. Whole body listening is important – this means you are curious and focused on the person you are speaking with and your language is ‘you’ focused, rather than ‘I/me’ centered.

Perceptual Positions
Perceptual positions are a way of appreciating situations from different standpoints and gaining different perspectives. 1st position is when you are in your own body – this position is good for concentrating on what you want and being assertive. 2nd position is when you imagine yourself in somebody else’s shoes – good for trying to understand their perspective/actions. 3rd position is when you imagine yourself as a fly on the wall looking at the scene – good for detaching yourself emotionally and considering things logically.

Setting Anchors
Anchors are particular stimuli (eg, a touch, smell or taste) that automatically trigger a linked memory or emotion. Everyone has unconscious anchors – eg, smell of food makes you feel hungry and think of eating. However, you can set anchors for yourself which you can then call up at will to change your emotional state:

  1. Choose a state/feeling that you have experienced in your life that you want to be able to access whenever you choose.
  2. Choose an anchor – eg, touching index finger to thumb on your left hand.
  3. Recall the time when the feeling was it its strongest for you. Make sure you are seeing the memory out of your own eyes (1st position). Think about the time – what colours do you see, what do you hear, what do you feel etc.
  4. Just before your emotions peak, set the anchor and then remove it at the peak of your emotions.
  5. Shake yourself to break state, and then repeat the process several times.
  6. Test the anchor – think of something else and trigger the anchor. You should feel the emotions/state you associated with the anchor.

I had a little bit of a play with anchoring emotions. The technique seems to work at least to some extent for me. I intend to play around with it a bit more.

Neuro Linguistic Programming – Part 1

I recently finished reading “NLP at Work” by Sue Night. It was quite a nice introduction to the topic. Here’s some of the more interesting bits through the filter of my interpretation.

Styles of Thought
Visual/Auditory/Feelings – from the way people speak (eg, “that sounds good”), you can guess what style of thought they prefer.

Eye Movements
The way you move your eyes is meant to reflect your thought patterns:

  • Looking up (or straight ahead defocussed) => remembering/constructing images
  • Looking sideways => remembering/constructing sounds
  • Looking down => feelings/internal dialogue

As an aside, if you’re talking and somebody looks away, they are probably thinking, and you should wait till they meet your eyes again before continuing.

Empowerment thought Word Choice and Questions
Empowerment means you take responsiblity for your own experience. Resolve ambiguity and abdication of responsiblity though challenging your thoughts with questions.

  • Deletions: “They overlooked me in the recent promotions” – who are they?
  • Vague actions: “We are going to develop Joe’s ability to learn” – how are we going to do that, and when?
  • Baseless comparisons: “The company is doing well” – compared to what?
  • Abstraction: “It was a difficult conversation” – who was involved, and what made it difficult?
  • Hidden opinion: “This is the right way to do it” – according to who? The speaker?
  • Generalisations: “She never listens to me” – how do you know that? Has there ever been a time when she listened to you?
  • Blame: “the company demotivates me” – how does the company demotivate you?
  • Drivers: “I want to see my friend” vs “I should see my friend”. The former (driven by you) empowers and motivates, the latter (forced on you) triggers opposite feelings.
  • Assumptions: “he is fiddling with his pen => he is bored” – how does fiddling with his mean mean that he is bored? Maybe it is just his habit.

With this approach, you can untangle your beliefs. Eg,
“These presentations never go well” – Never? Has there ever been a time when one did go well? How do you determine if it went well?
“Giving these talks makes me feel stressed” – How exactly does giving the talks cause you to feel stressed? How do you want to feel?

The power of imagination
If you imagine something sufficiently strongly and sensually (when, where, sight, smell, touch, taste, sound, etc), your feelings will be similar to what they would be if it was really happening. Ie, your feeling do not differentiate between what is really happening, and what you imagine.

Hence, if you want to know how you would feel if you did X, simply imagine it in great detail and you’ll find out. Similarly, if you want to achieve something, imagine what it would be like in detail and it will be as though you have already achieved it. Believe it is true, and you will act as though it is true, and then it will be easier for it to become true!

No negatives
The unconscious mind does not understand negatives. Hence, if you say “Don’t worry” to yourself, you are in effect triggering the “worry” emotion.

Rewriting Memories / Modifying Perception
Bring up a memory in detail, and bring in as many senses as you can. Try changing the lighting, the background sound, the relative size of objects etc and see how you feel. If you do this enough, you can change how you feel in the memory, and how you will feel when something similar arises.

I think that this could be done mentally in real time in real situations as well by changing your perception. Eg, somebody is screaming at you. If mentally imagine yourself to be larger, and the screamer to be smaller and imagine a glass between you, you could avoid feeling overwhelmed or getting angry yourself. You could then respond in a better manner.

Beliefs of Excellence
What you believe will influence how you act. Hence, if you take on positive beliefs, you can become more friendly, productive and motivated. Similarly, negative beliefs (eg, “I can’t do it”) are often self-fulfilling. According to the book, the important beliefs for excellence are:

  • Each person is unique
  • Everyone makes the best choice available to them at the time
  • There is no failure, only feedback
  • Behind every behaviour is a positive intention
  • The meaning of the communication is its effect
  • There is a solution to every problem
  • The person with the most flexibility in thinking and behaviour has the best chance of succeeding
  • Mind and body are part of the same system
  • Knowledge, thought, memory and imagination are the result of sequences and combinations of ways of filtering and storing information

Presuppose that these beliefs are true for you – try them out 🙂
Or go back into memory and imagine how you would have behaved differently had you had these beliefs.
Practice should make the belief become more fixed in you, and change your automatic behaviour.

Outcomes and Goals
What do I really want to achieve in 3 months/6m/1yr/3yrs, beyond..
List, prioritise and choose top 3. For each goal,

  • Imagine it with all senses – how does it feel/look/sound
  • When, where and with whom?
  • What have you got now you’d need to give up?
  • Is it worth the risk/pain? If not, chose another goal and start again.
  • If not self-maintained, chunk up (“recession to ease”, ask “what’s important about that?”) to find the higher level need (eg, “security”)
  • Ensure the outcome fits with who you are and who you want to be
  • What alternative ways are there to satisfy this need that will allow you to move towards the outcome?
  • How does having the outcome fit with the other people who are important in your life?
  • Act by dividing what you need to do into many small steps that you can work through in a real way every day or every week, potentially with time frames.

This topic is continued in Part 2.

Successful Negotiating

Recently, I read “Successful Negotiating” by Julia Tipler. It’s a pretty quick read (just under 100 pages) but has some interesting info. Here’s some titbits from the book:

Relationships
Try to build long term relationships based on win-win deals rather than scoring points / grinding down opposition.

Language
Use precise language with dates rather than “ASAP” or “when you have time”. Use simple language, and do not assume both sides hold the same assumptions and clarify often with questions.

Preparation
Prepare well by deciding your objectives (needs & wants), non-negotiables, what you can compromise on and limits. Research your opposite number – what do they need and do they have power to sign off?

Agenda
Create agenda and send to other party in advance of the meeting, emphasising that it is a draft and they can add items to it (aim to create a climate of agreement even before discussion begins). Place items that you think will be easy to reach agreement at the top to get momentum.

Place
If you are selling, you should go to the customer as you are making the most effort and people feel more comfortable/polite on their “home ground”. Second meeting could be on “your territory”. If there’s a history of conflict, “neutral ground” may be best.

Time
Make sure you’ve had time to prepare. On the phone, check that now is a convenient time for the other person.

Exploration

  • If person says they need or want something, ask why and encourage them to explain.
  • “If I can’t meet that condition, is there something else that would make this deal work for you?”
  • Identify mutual interest.
  • Chunk down to find out the details of what people want and also chunk up to find out the big picture of why/when. With this understanding, you can then negotiate solutions which meet the needs of both partieis.
  • Show you understand the reasons that lie behind wants/needs as this may reduce resistance to alternative suggestions.
  • Once understanding is reached, move to middle ground of bidding and proposing. Both sides will need to compromise to some extent. At this point, you are asking the other party to consider what a good deal is, rather than firm agreement.
  • Ask “what if” questions (eg, “what if I could offer you slower delivery but lower costs”?) and ask “why not” if they do not agree. Ask direct questions if this fails (eg, “what is the minimum delivery size you would agree to?”).
  • Aim to uncover variables in the negotiations and come up with possibilities based on these.
  • Don’t concede, exchange – doesn’t need to be of equal value however.

Reaching Agreement

  • Summarise and restate after each point is agreed on. Eg, “We’ve agreed on W, X and Y. That only leaves Z to be decided”.
  • Ask series of questions which are closed/leading, where the answer to each is yes, leading to the final question which closes the deal.

Closing

  • Always put agreement in writing (start with a draft framework for discussion).
  • Agree on review and complaint handling processes.
  • Agreement should be specific, measurable, agreed, realistic and time-bound.

Body Language
When interpreting somebody’s body language (or projecting your own), consider these aspects in decreasing order of importance:

  • Eye contact (around 70% of the time ideal, too little suggests disagreement or disinterest, too much suggests aggression, looking up suggests thinking, looking down suggests discomfort)
  • Facial expression (smile, make sure you show what you are feeling, don’t be deadpan, that’s unnerving)
  • Posture (Relaxed and upright, leaning forwarding slightly, crossing legs are all signs of interest. Folding arms or turning body away suggests discomfort with the proceedings. Mirroring other person suggests agreement.)
  • Hand gestures (open hand gestures suggest open mind, fiddling or doodling suggests disinterest or nervousness)

If body language is unclear, clarify. Eg, “Is this still all right with you?”

Listening

  • Do make listening noises such as “uhuh” and “mmm”.
  • Do not finish other people’s sentences for them, as they may find this irritating.
  • Take notes to show you’re interested and to help you summarise the agreement as you approach the close.

Respond

  • Keep cool and respond, rather than react. Stay adult and detached and offer time out if the opposite part is losing it.
  • Show respect at all times.

Dance Dance Dance

Just finished reading Dance Dance Dance by Haruki Murakami. Amazing novel. Not exciting, but totally gripping. I couldn’t put the thing down. The plot is a little unconventional to say the least, but my empathy with the narrator was overridingly strong and it is really this that made the novel so gripping.

Our narrator is 34, and in many ways, leads a normal and boring life. The boring parts of his life are described in detail. If you counted the pages devoted to descriptions of his every day life such as cooking, eating etc, I think you’d count about 1/3 of the novel. Rather than making the novel boring, as you would expect, it instead makes our narrator more real and human. And since he is so real, and so like you and me, even the “boring” parts of his life are interesting and enjoyable. For example, having a good meal and reading a book are nothing “exciting” in the traditional sense. However, since the narrator is so real, and so human, you can easily remember your own feelings when doing a similar thing.

There is something so real in the mediocrity of our narrator that strikes a chord with me. Our narrator is a good, fair guy, playing his part in an “advanced capitalist society”. He’s not amazingly talented at anything, he doesn’t fit in and he’s not very socially ept. He “shovels cultural snow” writing pieces for magazines. He has a few friends and romantic interests. He tries not to hurt people but doesn’t know where his life is going or what he really wants. When you look at him, and think about him, it forces you to look at yourself, in a very similar advanced capitalist society, shovelling virtual snow, or whatever you do. At the end of the day though, he’s the best of the bunch. He’s responsible and he cares. Maybe that’s cause for hope.

Dance Dance Dance follows on from A Wild Sheep Chase, although you could probably get by without reading the earlier novel. It’s a great book, go forth and read it 🙂

“Norwegian Wood” by Haruki Murakami

Norwegian Wood is an excellent novel. I finished reading it at lunch today, and haven’t stopped thinking about it since. The novel is really subtle, and at the start, I wasn’t immediately interested. However, once I got into it, I couldn’t put it down. Toru, the narrator is so well developed in the novel that he seems almost like somebody I have met in real life. If you haven’t read it, don’t hesitate – start reading it right away! And don’t read any more of this post.

If you have read it, what do you think of the ending? I’ve read people suggesting that Toru committed suicide or similar, but I don’t believe that that is the case. For one thing, he’s got to live to 37 and catch a plane, as described at the start of the novel. I think the “dead centre” reference is due to Toru being dead centre of the “countless shapes of people walking by to nowhere”, rather than having died. I think the ending is happy. Or maybe I just want it to be. Here’s my interpretation. Toru is lost in the middle of nowhere. His old life was based around Naoko and Kizuki (plus Reiko as a link to them). They have all died or left. He is in the middle of nowhere. But Midori can rescue him from this. She is his anchor to reality and a new life. She will give his life direction and meaning – that’s why he calls out to her again. If anyone in the novel is a symbol of life, it is Midori, and by calling out to her, I can only understand that Toru has chosen to keep living and to pursue happiness. Midori’s silence is “the silence of all the misty rain in the world falling on all the new-mown lawns of the world”. That’s a positive image for me at least, pregnant with possibility.

If only I could read Japanese, perhaps I would understand better.

PS – Many thanks to my friend Jim for lending this most excellent book to me.

Book Review: UML Distilled

UML Distilled: A brief guide to the standard object modelling language
(3rd Edition)
by Martin Fowler

UML Distilled is good. It is written carefully and concisely and has been heavily revised to cover UML 2. It is a opinionated book – it presents Martin Fowler’s view of UML. This is a good thing. Fowler concentrates on the parts of UML that he has found widely used in the industry, and the most useful in his own work. Fowler is not bound by the UML specification, he also describes “non-normative” diagrams (ie, variations on UML which are not standard but widely used). Fowler often provides his own view on a particular diagram or component. For example, I’ve often wondered when to use aggregation rather than association in a class diagram. Fowler cleared this up for me:

“Aggregation is strictly meaningless; as a result, I recommend that you ignore it in your own diagrams. If you see it in other people’s diagrams, you’ll need to dig deeper to find out what they mean by it. Different authors and teams use it for very different purposes.”

UML Distilled starts with an introduction about UML’s history and aims, and then a rapid look at different development methodologies and where to fit UML into them.

The core of the book covers the following diagrams/specs:

Class Diagrams
Sequence Diagrams
Object Diagrams
Package Diagrams
Deployment Diagrams
Use Cases
State Machine Diagrams
Activity Diagrams
Communication Diagrams
Composite Structures
Component Diagrams
Collaborations
Interaction Overview Diagrams
Timing Diagrams

Class diagrams and sequence diagrams are covered in detail, the other diagrams more briefly. The book is quite short, but gives enough information on each topic to allow you to understand and draw the diagrams. At the end of each chapter, there is a helpful “where to find out more” section and a “when to use this type of diagram” section.

There is also an appendix at the end of the book on changes between various versions of UML.

The book is surprisingly easy to read. Fowler’s style is clear and friendly and examples are well chosen.

My only complaint is that perhaps the book could have been a little longer to allow a bit more detail on some of the diagram types. I would have liked to have read a little bit more on object diagrams in particular.

I’d recommend the book to anyone who wants a rapid and concise introduction to or revision of UML 2.

Rating: 9/10

Book Review: My Job Went to India, 52 Ways to Save Your Job

Full Title: My Job Went to India (And All I Got Was This Lousy Book), 52 Ways to Save your Job

Author: Chad Fowler of the Pragmatic Programmers

185 pages, Paperback

An interesting book written by Chad Fowler, who spent 1.5 years in India hiring and managing an outsourced team of developers. The book’s main focus is on how you can make yourself as, a developer, more valuable to your company / community so that your job is not outsourced. There are quite a lot of valuable and interesting ideas in the book for professional development, and “getting your name out there”. The book also gives the reader some idea of what development is like in India, some tips and the pluses and minuses of outsourcing.

The style of the book is conversational, and easy to read. I finished it in 2 days. I’d recommend it to developers wondering about outsourcing and looking for some tips on professional development.

Rating: 8/10

Page 3 of 3

Powered by WordPress & Theme by Anders Norén