How and when to avoid meetings and have more time to write code
Meetings are a problem for any organisations, because they dull the attention-span of otherwise intelligent people, and prevent otherwise productive people from getting any work done. Software developers suffer more than most, because they can’t even pretend that they’re getting any work done when they’re sitting in meetings. After all, getting your laptop out and writing code during a meeting is (rightly) considered rude.
This presentation introduces various approaches that software developers can use to reduce the number of meetings in their organisation, so they have more time to write code. In particular, developer contributions to project management can drastically reduce the number of meetings.
2. M A N N I N G
Peter Hilton
Erik Bakker
Francisco Canedo
FOREWORD BY James Ward
Covers Play 2
Play for Scala
(Manning)
Peter Hilton
Erik Bakker
Francisco Canedo
http://bit.ly/playscala2p
3. Agenda (for this meeting)
3@PeterHilton •
The problem with meetings.
Getting out of meetings.
Positive approaches.
Reducing project management cost.
Sharing management tasks.
5. 5@PeterHilton •
‘M&Ms,
managers and
meetings’
Why work doesn’t happen at work,
according to Happy Melly
http://www.happymelly.com/why-work-does-not-happen-at-work-the-mms/
6.
7.
8.
9.
10. 10@PeterHilton •
Although we cannot avoid all
meetings, developers can
greatly reduce the number of
meetings they have to attend.
It isn’t good enough to make
meetings more effective.
12. Tactic 1: Don’t turn up
12@PeterHilton •
You can avoid wasting time in meetings by
simply not showing up.
Pros: extremely effective way to avoid
pointless meetings.
Cons: passive-aggressive behaviour is
considered rude.
Worse: likely to cause follow-up meetings
with your boss.
13. Tactic 2: take a laptop to the meeting
13@PeterHilton •
You can avoid wasting time in meetings by
doing work in the meeting.
Pros: you get to attend the meeting and
write code - the best of both worlds.
Cons: using a laptop in a meeting is also
considered rude.
http://randsinrepose.com/archives/the-laptop-herr/
14. Tactic 3: sit back and relax
14@PeterHilton •
Instead of fighting it, you can accept the
meeting, relax and enjoy the time off work.
Pros: avoids confrontation with colleagues
that may lead to more meetings.
Cons: not productive and can become an
unbreakable habit (i.e. company culture).
15. Tactic 4: make sure there’s beer
15@PeterHilton •
If you’re stuck in a long meeting, then beer
can make the experience more enjoyable.
Pros: even if the meeting drags on for
hours, you won’t care.
Cons: you have to throw away any code
you write afterwards.
16.
17. Tactic 5: sneak out of the meeting
17@PeterHilton •
You can limit the damage a meeting causes
by sneaking out after it has started.
Pros: disguises your unwillingness to
attend the meeting.
Cons: it is extremely difficult to sneak out
in plain sight and get away with it.
18. Negative tactics considered harmful
18@PeterHilton •
Negative tactics for avoiding meetings are
ultimately counter-productive.
These tactics will not help you or your
project.
More constructive approaches are needed.
22. 22@PeterHilton •
‘Programmers are typically stereotyped as
non-communicative individuals who like to
sit in darkened rooms alone with their
computer screens.
‘It is not a true stereotype, though.
Programmers just like to communicate
about things they like to communicate
about.’
Agile Software Development,
Alistair Cockburn
23. What developers can contribute
23@PeterHilton •
Communication skills.
A wide selection of communication tools.
More efficient information-sharing.
Developers are good at solving
information problems.
25. Project communication tasks
25@PeterHilton •
Planning:
communicating what you are going to do
Tracking:
communicating status
Reporting:
communicating with external stakeholders
26.
27. Planning refactored
27@PeterHilton •
Reduce planning cost by making all task
information fully accessible.
Publish on a wiki.
Use a task tracking system, e.g. Trello.
The plan is visible (to all) and flexible.
The plan is therefore easy to update.
30. 09:06 You joined the channel
09:01 <phb> meeting! we need to discuss the status
09:05 <phb> @#!
09:06 <dev> it's in Trello
09:06 <phb> oh
09:06 phb [phb@dilbert.com] left the channel.
35. Planning refactored
35@PeterHilton •
Participate in task planning.
Understand what the planning is for.
Self-assign tasks.
Self-manage the development process.
Beware planning that is just time wasted
managing predictions.
36. Self-managed software development
36@PeterHilton •
XP, Scrum, Kanban…
Agile software development has reinvented
development management.
Smaller iterations and continuous delivery
reduce project management effort.
37. Tracking refactored
37@PeterHilton •
If tracking is hard, you’re doing it wrong.
Continuous delivery makes project
tracking so easy it feels like cheating.
Counting completed items of work is easier
and more useful than estimating progress.
38. Reporting refactored
38@PeterHilton •
Continuous delivery reduces demand for
reporting to external stakeholders.
If you continually deliver results, you get
more trust and fewer status questions.
Working out loud (continuous reporting)
helps too…
39. 39@PeterHilton •
‘If a day goes by, and I haven’t done
something that was publicly visible to
someone in the world, then I get really
nervous...
I feel like I haven’t done anything that day’
Jeff Atwood, Stack Overflow podcast 15
43. Stand-up meetings - no chairs
43@PeterHilton •
No chairs – therefore short
Fixed agenda – no chair(person) required
More effective - no longer work-avoidance
Discourages people from sitting in
pointless meetings
(which leads to meeting-avoidance)
49. Warning!
49@PeterHilton •
The purpose of a meeting is not always
communication and collaboration.
Beware organisations where meetings are
used to assert status and power.
Organisational change management is an
altogether different topic.
50. Meeting-avoidance
50@PeterHilton •
Find cheaper alternatives to meetings.
Use good tools. Talk to each other.
Cancel recurring meetings.
Find other ways to talk regularly.
Hack the working environment.
Get meeting-avoidance hardware.
51. Project management
51@PeterHilton •
Reduce the cost of project management.
Use better development methods.
Don’t try to eliminate project management
Understand what it is needed for.
Take on project management tasks.
Increase your responsibilities.