Y U No Epistemology? Critical Things All Tech Jobs Depend On

Epistemology is the study of how you know something for sure versus how you just might believe something might be true. I know the sun is coming up tomorrow. In my mind it is a justified belief. I have an opinion that people who wear nice shoes can be trusted. It’s something I believe to be true for reasons of my own. Others may find this belief completely unjustified. Some things I know for sure. Some things I have faith in. Some things I believe. I have reasons for sorting those things out. Things that involve a lot of hard science I know for sure. Things I read on reddit I may believe — but not as much.

How do we know stuff? How do we sort out what we think might be a good idea from just stuff people like to talk about and think is true? The ancient Egyptians built the pyramids using slave labor. Should we go back to beating people with sticks to get them to work faster? Why or why not? I’m not asking whether it’s a good idea or not. I’m asking how do we agree on whether it’s a good idea or not. What’s our shared basis for knowledge and value?

To a blind man, the elephant looks completely different depending on where he’s at. wiki

We have to have some basis for thinking some things are better than other things. Maybe it is morals. Slavery is bad. Maybe it is agreed-upon studies. Studies show slave labor much less productive than self-motivated labor. Whatever the thing we use to determine what’s good or not, if we’re going to work together, it has to be the same thing. This is especially true in technology, where we create universes out of thin air. If you don’t like your universe because it’s blue and you hate blue? That’s great. But if I like your universe because it’s written in COBOL? We not only disagree, we disagree on the basis of what the criteria for agreeing is. That’s the first thing to fix before we can work together at all: what are our agreed-upon ways of knowing things for sure?

I keep seeing online conversations and essays that talk about doing things with technology (programming, configuration, automation, etc.) as if it were all the same sort of stuff. Form a startup, build a web app, learn a new language, configure 100 servers. It’s all just the same, right? Learn a bunch of skills, set up a Trello board or something, start coding. Coding is coding, right?

It is not. Different kinds of tech jobs involve thinking in different sorts of ways. In different kinds of jobs, you can know certain things. Some things may be unknowable. If you find yourself in one kind of job applying the work patterns from another you flail around. Sometimes you make things much more difficult than they have to be. Sometimes you make things impossible. Your mental model of the work in inaccurate. Maybe we should be teaching this ahead of everything else when we teach developing technology. Sure sucks to come in years later and have to grok it.

Epistemology is the study of how we know things. We have to agree on how we know what’s valuable — or we’ll never agree on what value is

I will attempt a tl;dr on each one of these.

What kind of job is it?

How are the people grouped?

On any tech job, there are three, and only three, kinds of people:

  1. People you’re trying to help with your job.

  2. People who are doing the job.

  3. People you need to make happy while you’re doing your job.

These types of people can be split up or combined in various ways. For instance, many times you are paid by somebody who doesn’t directly care about the people you’re trying to help — or they are 4 levels removed from them. These kinds of splits can cause a lot of pain. Instead of splitting, the goal is to combine as much as possible.

What kind of domain are you working in?

Where the tech lives is critically-important to how to evaluate it. A Mars Rover lives in a different world from a database, even though both may be coded in C and run on the same CPU.

(The following is from the cyenfin framework)

Projects just don’t work differently in each of these different situations depending on these variables, the way we understand the project and what it’s trying to do changes. In the first section, we’re trying to understand what’s good or not. In the section section, we’re trying to understand each other’s opinions on what’s good or not. Come to a working arrangement. In the third section, we’re trying to understand how the technology itself will interact with the world around it, how it views its own functioning. All of these are critical for any tech job, and the work can change drastically when any of these change. Y U No Epistemology? It’s the most critical thing in your work.

This is important, so important I wrote a book on it. You should read it.


Follow the author on Twitter

September 2, 2018

Leave a Reply

Your email address will not be published. Required fields are marked *