Context In Context

Understanding context is incredibly important. Without it, you might end up saying the following:

  • “You have depression? You should try meditation.”
  • “I’ve just started, but I think we should rewrite the whole frontend in React.”
  • “Hotels are too expensive, we should make an app where people can rent out their houses instead.”

On their own, these aren’t bad thoughts to have; we’ve been presented with a problem and our natural inclination is finding solutions. But the issue with all three of these suggestions is we don’t understand the context behind each scenario. Our initial understanding of the problem is very limited and we don’t have a depth or breadth of knowledge about the scenario to start solving it because there is likely a lot of unknown (to us) factors that our solutions either won’t fix or will cause more problems.

Yoga Is Probably Not The Answer To Depression

I’ve struggled with depression as a comorbidity of schizophrenia and been working on it in therapy for over 18 years. More than half of my life. I’ve also had an uncountable number of people, upon fiding out I am depressed, tell me unprompted that I should:

These people never stop to think that if I’ve been the parent of this depression so long that I can now legally take it to the pub (do not recommend) that perhaps I have already encountered this advice and tried it. Most people with chronic health conditions do not like their chronic health conditions and are both very aware of what does and doesn’t help their particular situation. Very likely they know a lot more about their condition than you do.

You have just tried to solve a problem based on a single fact without understanding any context.

I’m not saying that meditation/hydration/etc don’t have a positive impact on mental health. What I am saying is that you’re (unintentionally) infantilising someone by assuming that they haven’t tried those things or aren’t doing them, as the recipient it feels very condescending. I’m also saying that it’s very likely there’s a lot of factors to that person’s condition and existence that yoga alone won’t help. Yoga isn’t going to fix permanent chemical imbalances in the brain, nor will it fix a toxic relationship that is eroding them.

And mostly, I’m saying that you don’t have enough information to be giving good advice. A better approach is to listen and learn about their situation. You’ll likely find out they already do (or have tried) anything you would recommend and that there’s a lot of other factors leading to their situation which a few stretches and some new greens in a salad won’t cure.

A while back I read that one of the reasons we want to provide ‘helpful’ advice on chronic illness is because deep down we’re afraid that we could end up with something similarly debilitating and the idea that we can’t just fix it by eating healthier or exercising frightens us and makes us confront our own mortality.2

Technical Opinions As A Service

Opinions are like assholes, everyone has them.

Although if tech folk had as many assholes as we have opinions we’d be separated from the rest of society and studied by medical science to discover what is wrong with us.3 But this time I’m not talking about the usual Vim vs Emacs vs Nano stuff, I’m talking about our propensity to see a problem and immediately think we know the solution. Couple of quick personal examples:

  1. Damn this Ext JS web application is so clunky, we should just rewrite it in AngularJS.
  2. Why are we using ArcGIS Online for webmap hosting when it’s such a pain to upload to? Let’s swap to Mapserver.
  3. Those hosting costs are outrageous, you’d save a lot of money with Hugo and static hosting.

The reason I say these are personal examples is in all three cases I was the impatient one suggesting these things without learning how and why these decisions were made before my time. And in all three cases I am infinitely thankful to the people who were patient with me and explained why those weren’t good ideas (at least not right now) based on the context I was missing:

  1. Nobody on the team knew AngularJS so everyone would have to learn a new framework and the rewrite process would take months during which we’d be able to deliver none of the other features we needed.
  2. ArcGIS Online was a pain point we wanted to remove, but for now we uploaded data so rarely that it wasn’t worth it and the cost was already covered by our use of other Esri services compared to spinning up and maintaining our own Mapserver instance.
  3. While a tech-confident person would be configuring and initially managing the site, it would eventually be transferred to non-tech users who wouldn’t be comfortable learning Markdown or Git.4

I tried to solve a problem based on a single fact without understanding any context.

Now, each of the points I had raised in my original solution-focused examples were valid: the Ext JS codebase was rough as guts and ArcGIS Online was developed by the devil to punish GIS professionals - but rather than trying to tell the team what to do I should have focused on asking why those decisions were originally made. In doing so I would have found out that Angular didn’t exist when this app was written and at the time still couldn’t do half the stuff we needed for our application.

This is one area where I will make a recommendation for businesses and developer teams:

Develop a defensible decision-making procedure.

When you’re making a big choice you should:

  • List the alternatives you looked at,
  • The information and assumptions you had at the time,
  • And what lead you to your final decision.

This means that when someone asks a question about it in the future you have a handy document which shows the reasoning. It also allows you to see whether that decision is still relevant. You may now be in an entirely different situation or have disproven a bunch of assumptions and it actually makes sense to make the change rather than just hanging on because it’s what you’ve always done. You can then write up the business case for the change based on the new information.

Disruption Without Consideration Is Destruction

Ill-conceived tech solutions aren’t just limited to inside tech teams. It’s very common for techbros to see a problem outside of technology and think it can be easily solved with technology or worse: an app.

Taxis suck so why don’t we just replace them with an app? In doing so Uber created a new class of below-minimum wage workers doing 7-day weeks to survive and a whole new raft of social problems in transport and society.

Hotels are expensive so let’s just replace them with an app? In doing so AirBnB helped destroy housing and rental markets in many jurisdictions and created new venues for perverted voyeurs to spy on people trying to vacation.

If ‘disruptors’ had learned that part of why hotels are expensive is due to regulations, licensing, inspections, maintenance, etc, they would realise that trying to create an entire business model that shirks those things leads to a whole bunch of unsafe situations and unhappy people. When disruptors have to face the problems they cause, they pivot to “we’re actually an uninvolved third party marketplace” to absolve themselves of any responsibility for the issues they directly created.

They have tried to solve a problem based on a single fact without understanding any context.

When people look to disrupt an industry or existing paradigm, the ethical thing to do is to try and learn as much as you can about the existing situation and why it is like that. There might be heaps of bureaucratic and legal red tape around something but it’s important to work out the historical reason why, because it’s very likely those regulations were written in blood. This is the crux of Chesterton’s Fence:

“Change should not be made until the reasoning behind the current state of affairs is understood.”

A common knee-jerk response is that people are scared of change or that the people who benefit from change would lose whatever privilege it’s given them. And that sure as shit is true sometimes, but it’s also just as likely that there’s a bunch of stuff we don’t understand until we unravel the history of the current system and consider the wider impacts of our potential solution. I’m not arguing against change, I’m just arguing for ethical, strongly-considered change. It’s where a Devil’s Advocate or a red team is really useful; internal and external groups who interrogate your proposed solutions with the specific goal to find issues with it. It sucks to have our ideas torn to shreds, but it’s much better than implementing some half-cocked idea like a real names policy or using your own crypto and fucking up things for a lot of other people while not facing any lasting consequences yourself.

  1. Ironically I already do all of this stuff. It’s a simple pleasure showing one of these people my diary with my daily water intake, gratitude, affirmations, meditation, yoga, stretches, walks. ↩︎

  2. It’s probably rooted in our desire to be able to control all aspects of our life. If the idea of losing that control frightens the shit out of you I would recommend seeing a shrink, something like Acceptance and Commitment Therapy (is not a panacea but) can be pretty dope at dealing with this. ↩︎

  3. This is probably a good idea even sans extra assholes. ↩︎

  4. No one should have to learn git, but if you must I know of a book that contains a good introduction to using git. ↩︎