- agents
- AI
- ambiguity
- architecture
- augmented reality
- books
- bureaucracy
- career
- change
- Christmas
- cloud
- collaboration
- communication
- compliance
- corporate life
- data
- decisions
- delivery
- devops
- disagreement
- end user tools
- ethics
- failure
- fear
- fundamentals
- government
- halloween
- history
- hype
- identity
- inclusion
- infrastructure
- innovation
- language
- leadership
- learning
- legacy
- management
- measurement
- mental health
- money
- networking
- New Year
- operations
- philosophy
- physics
- platforms
- prediction
- privacy
- process
- procurement
- products
- programming
- quantum
- reliability
- resilience
- risk
- robotics
- science fiction
- security
- shadow IT
- space
- strategy
- talent
- teaching
- teams
- technical debt
- technology advocacy
- testing
- thinking
- transformation
- TV
- virtues
- vision
- writing
Agreement is optional; understanding is essential
Technology architecture is characterised by debate: we spend a lot of time arguing with each other. Given how much time we spend, we should ask ourselves whether we are any good at it. But being good at arguing doesn’t mean that we win all the time: in fact, winning all the time might be a sign of badness. Arguing well means that we are reliably successful at discovering the truth and making decisions - which may mean that we have to change our minds.
Some time ago I wrote that, as a technology architect, one of your jobs is to get ideas from your head into other people’s heads. I still believe that to be true, but realise that I left something very important out: it is also your job to get ideas from other people’s heads into your head. It is your job to understand the objectives, motivations, constraints and thinking of other people, and to see how these change your perspective.