25-01-2022

1145 words 6 minutes

Today's Foci

Focus 1

  1. Bud Forms!! get them done
  2. have 3 done by today

Meet at the Heart Space

When I met my tutor often, I would sometimes travel to uni to see them. I would try to turn up with coffee for us both. I would try not to be late.

Later, I would travel 6 hours to meet them.

Why?

When necessary, we would go to the heart space.

T, your project of 12 months still isn't ready. I know you want to move on. It isn't time.

T, is this really, truly what you want from life?

T, how do we improve your situation?

Maybe that is what makes a fantastic mentor, or fantastic leader.

They will meet you at the heart space.

Empathy Workshop

Empathy

  • putting yourself in another persons shoes
  • attempting to understand how someone else feels
  • self regulation
  • social skills

My morning group are have freat empathy

vicariously emote - feel with one another

how do we distinguish empathy as a reaction vs empathy as a skill

room 1 - why is empathy important; why might it show up as a software developer

room 2 - when empathy is missing, what might be the pitfalls? what can go wrong; how can it manifest

we are

room1

if another dev is struggling, you can help them, they help you everyone wins

why

why is it important? in pairing, if their is a disparity in knowledge, empathy can bring both parties together

during the interviews, important to know fellow coders, code and how they think

beyond coders - sat in meeting with clients, and we need to compromise - meet halfway

think of the user and the accessibility of a web page

good leaders are high in empathy - they care

people dont leave bad jobs - they leave places without empathy, and low social skills

"EQ" & "IQ" are both fundamental skillsets

Room2

People feel isolated within a team: Unsupported, misunderstood Issues unresolved Affects productivity - especially in pairing sessions Effort is not made to write readable code for others to understand Solipsistic world view is incompatible with team-playing

look for talk "code with love"

look for talk "The 5 dysfunctions of a team"

  1. Undertanding empathy

  2. Common hindrances

inattention to results => focus on outcomes

avoidance of accountability => confront difficult issues

lack of commitment => focus on clarity anf closure

fear of conflict => demand debate

absence of trust => be human

  1. Types of empathy

Affective empathy - feeling emotionally with someone else but not driven to directly aid

Empathetic - consciously understanf and internalise the emotions of another person- driven to help or respond approppriately

Cognitive empathy - consciously imagining how someone is feeling without internalising

try to be resilient - breathe

  1. What prevents empathy

Anger

  • numb to another's pain
  • instead of warmth we feel contempt; we scold

Protection

  • feeling as though another's pain is a virus
  • a supporter can catch the pain of others

Identifying

  • Another's painful feelings can be too close to home, bringing up an issue with the subject
  • Try to rationalize/talk them out of/"fix" their feelings in an attempt to avoid your own

Fear of intamacy

  • Being emotionally distant seems easier that the risk of vulnerability and closeness

MEET AT THE HEART SPACE

Remember that this kind of personal development is a privilege that few attain

Sometimes, well meaning adults didn't get the manual

Training Empathy

"just like me"

  • seeing yourself in another
  • we are all closer to one another than we perhaps realise
  • have we academicized and busniessized

Metta Bhavana

Empathetic active listening

Active listening

  1. Reflect back what they say to you
  2. Ask questoins instead of giving answers
  3. Validate emotions, even when you disagree with their logic
  4. Don't offer insolicited advice
  5. Be present - 80/20 listening

Listener and talker how makers has been for you thus far

practice active listening


Empathy exercise

raise your hand if -

"who like working well with others?"

"who needs to get more sleep?"

"the who here has cried at a movie?"

...

"who was picked on as child?"

unexpected. sets the expectation of ( not-the-heart-space )

then -

straight to the heart-space.

I have had three "workshops" with this coach at the Apprenticeship Provider. They have consistently reached toward this level of material - the fundamental stuff. Tomorrow, provided you're willing and ready - how can you actionably be a better human being?


Oystercards as a group of 4

I feel we were all pulling in different directions. This hadn't occured previously. It was the first time I had experienced a team pulling in different ways. Great effort from individuals; and as a team we made progress!

But, and I could be mistaken, perhaps we didn't leave on the same page. Which means as a team; we lost. It's okay. You can't win everyday. How do we improve this in the future? How can I contribute to the teams success?

Usually I try to plan and bring everyone in on the plan. I am a thorough planner - but I am not a fast planner. The team is eager and wants results. This creates disparity.

I need to test new methodology and process. Perhaps plan in broader strokes, and then spiral inward, instead of working methodically, and procedurally through a problem. The procedural approach takes time - useful in scenarios - but not a scrum like fashion where the goal is progress only? I am uncertain.

The methodical / procedural approach is great. But I must think differently, that the teams better succeed. No T is an island.

Maybe the following?...

  1. Scan for the Focus ~45 secs

    1. Scan the material for THE focus at hand.
    2. Report on focus
    3. Agree with others what the focus is.
    4. How do we want the focus to act? (within the system?)
  2. Best test the focus? ~5 mins max?

    1. what behaviour is expected? what is start-state, what is end-state?
    2. what is an appropriate test? what are we really testing?
  3. Implement the test

  4. Best implementation? ~10 mins max?

    1. How can we build this feature in a robust, concise way?
    2. What classes / methods / objects / messages should we use?
    3. Build it
  5. Test green

    1. look for the expect and got statements in RSpec
    2. if error - why? read the error
  6. Refactor

    1. How can we give this feature clarity AND concision for any future programmer, whilst maintaining usability AND functionality?

Useful Tactics

use doubles in RSpec, perhaps to instantiate complex objects in a test without having to build classes for them? i think?

remember to manually test things in REPL

private methods are at the bottom of the class

expect{OBJECT}.to change{OBJECT.METHOD}.by this_much

expect{card50}.to change{card.deduct(15)}.by -15

RSpec predicate method - 'be'

  • expect(OBJECT.METHOD).to be SOMETHING
  • where the SOMETHING is either true or false
  • perhaps be careful with this? this could be vague