Slide 1

Slide 1 text

Imposter.js Jim Newbery
 @froots101

Slide 2

Slide 2 text

My name is Jim and I am a mediocre JavaScript developer * My name is Jim and I am a mediocre JavaScript developer * Fortunately, I have a masters degree in psychology too, so I can always fall back on that. * Unfortunately that was about 17 years ago and I’ve forgotten almost all of it. * I’m mostly going to talk about psychology today. * I love psychology because it requires a taste for the technical, analytical and controversial, just like JavaScript

Slide 3

Slide 3 text

DOM manipulation streams form validation server programming real-time comms compilers data transformation robotics games development database programming real-time systems offline data sync audio programming video programming UI programming wearables operating systems telephony web browsers network programming animation modelling visualization generative art security AI DHTML Here are just a small selection of things that a JavaScript programmer could potentially have expertise in. There is a lot more here than there used to be. Some of these things are very new.

Slide 4

Slide 4 text

DOM manipulation streams form validation server programming real-time comms compilers data transformation robotics games development database programming real-time systems offline data sync audio programming video programming UI programming wearables operating systems telephony web browsers network programming animation modelling visualization generative art security AI DHTML And here are the things that I know at least something about, including things that I’ve read a single tutorial about.

Slide 5

Slide 5 text

DOM manipulation streams form validation server programming real-time comms compilers data transformation robotics games development database programming real-time systems offline data sync audio programming video programming UI programming wearables operating systems telephony web browsers network programming animation modelling visualization generative art security AI DHTML These are the things that I would say I know really well. Oops, that’s not right.

Slide 6

Slide 6 text

DOM manipulation streams form validation server programming real-time comms compilers data transformation robotics games development database programming real-time systems offline data sync audio programming video programming UI programming wearables operating systems telephony web browsers network programming animation modelling visualization generative art security AI DHTML That’s better. This doesn’t look like a lot. And yet I’ve been developing websites for about 18 years, and writing JavaScript for about 14 years. I probably don’t deserve to be in a senior developer role, which is what I do now. It’s taken me a long time to realise that this is completely normal, and to be comfortable with this while holding down a job where I get paid to do this, not to mention all the other things that are part of a developer’s remit.

Slide 7

Slide 7 text

“Programming is near constant failure” – Alicia Liu • In the same vein, it’s good to remind ourselves of this fact • Not only do I know nothing, but the stuff that I’m supposed to know about almost never works. • Programming seems to be an exercise in stumbling to some kind of working solution via uncountable mistakes, hacks and graceless code

Slide 8

Slide 8 text

Imposter phenomenon So, if you’ve ever felt like your successes are undeserved, you only got where you are by luck and that you’ll surely get discovered for the fraud you are any day, you have experienced the imposter phenomenon. It has been estimated that about 70% of people will experience at least one episode in their life. The first academic paper to discuss the phenomenon published in 1979 focused on successful academic women, but people from all groups can experience imposter feelings. Many people refer to the phenomenon as imposter syndrome, but for reasons that will become clear this may be a bit misleading. The original academic paper that described it referred to it as ‘imposter phenomenon’, and most academic research since then has retained this. “Imposter syndrome” is used more in the media and public language. I’m going to look at some of the academic descriptions of the imposter phenomenon, and compare that to how we talk about these experiences as developers.

Slide 9

Slide 9 text

“A psychological pattern rooted in intense, concealed feelings of fraudulence when faced with achievement tasks”
 Harvey & Katz (1985) Here’s one definition ★ This is quite specific to the achievement of tasks ★ Note the description uses ‘psychological pattern’ rather than labelling it as a clinical indicator. This will be important later.

Slide 10

Slide 10 text

Three core factors ★ belief that others have been fooled ★ fear of being exposed ★ inability to attribute achievement to internal qualities ★ Harvey and Katz also described three core factors of imposter feelings ★ A person experiencing imposter feelings may believe that they have somehow fooled others into thinking they have greater ability than they do ★ They are fearful of this deception being exposed ★ And they usually ascribe genuine success to the actions of others, or to temporary causes like luck or circumstances

Slide 11

Slide 11 text

The imposter cycle Achievement-related task Anxiety, self-doubt Over-preparation Procrastination Feeling of relief Discount Positive feedback Perceived fraudulence
 Increased self-doubt
 Depression
 Anxiety The core factors have a compounding effect through the imposter cycle ★ When faced with a task, anxiety and self-doubt creeps in ★ This leads either to over-preparation or terrible procrastination followed by frantic cramming ★ When a task is then successfully completed, a short period of relief might be experienced ★ Any positive feedback received is likely to be assigned to temporary causes of either the over-preparation or the procrastination rather than the person’s own more permanent skills and abilities ★ This leads to further feelings of fraudulence and doubt and for some, guilt, anxiety and depression which is compounded the next time a task comes up.

Slide 12

Slide 12 text

The habit loop Cue Routine Reward This seems to describe a classic behavioural and cognitive habit loop where a feedback loop reinforces learned behaviour.

Slide 13

Slide 13 text

The habit loop Cue Routine Reward Anxiety about task Over-preparation
 Procrastination Feeling of relief The anxiety about a task is the cue to over-prepare or procrastinate. When the task is complete, a brief feeling of relief provides the reward. But this makes it more likely for us to respond in the same way to feelings of anxiety associated with fraudulence the next time.

Slide 14

Slide 14 text

The TDD loop ;-} Red Green Refactor This may also be related to reminds me of this. Just sayin’. No?

Slide 15

Slide 15 text

Is it just me? * The common explanation of imposter feelings in public language is that they are a permanent personality trait * Research suggests various possible causes, such as family expectations, perfectionism and general anxiety, but with mixed results and generally weak associations * More recent research frames imposter feelings as part of a continuum of normal social behaviours

Slide 16

Slide 16 text

‘Neurotic’ imposture Real imposture Perfectly normal everyday fakery * de Vries (2005) suggested that imposter feelings could be considered on a continuum * On the one hand you have genuine imposters. People who really are frauds and have genuinely cheated their way in. Let’s hope there aren’t any of those here! * On the other end are those with imposter feelings who have earned the right to be where they are but don’t recognise it * Both are presenting a public façade that is knowingly different to their private selves * Imposture is an accepted social norm, with limits beyond which it becomes unacceptable * Concealing weakness is practiced by all

Slide 17

Slide 17 text

The engine of misbelief • Psychology is often the study of how wrong humans are • Humans are terrible at understanding themselves and the world around them • In the interests of efficiency and speed, we are constantly making ‘best guesses’ or heuristics about what is happening • Being able to make quick best guesses about something is a big evolutionary advantage, provided the best guesses are right enough of the time • You should read Daniel Kahnemann’s “Thinking Fast and Slow” for more on this. It’s an amazing book. • We use these heuristics for almost everything, whether physical, cognitive or social in nature, and we use them more when under stress or under heavy cognitive demands • But they are often wrong. Completely off. • This includes being wrong when judging our own abilities, skills and even the quality of our own judgements. • We have no idea how wrong we are about everything all the time. • As David Dunning puts it, we are efficient engines of misbelief. Misperception, exaggeration, ignorance and fallacy are the norm.

Slide 18

Slide 18 text

• Here is a quick experiment. • Imagine a ball travelling at speed into the pipe from the centre • What path would the ball take on exit? • If you said C, don’t be daft • If you said B, you are of course correct, and most of us know this • Would you say it is instinctively correct, though? • It might interest you to know that Leonardo da Vinci believed A to be correct, and what’s more he believed it to be self-evident. There was no way he could be wrong • da Vinci was making a poor assessment of his own expertise • We know the correct answer because of education, or possibly real-world experience. But we don’t necessarily remember why we know

Slide 19

Slide 19 text

Let's talk about JavaScript • Let’s talk about JavaScript

Slide 20

Slide 20 text

> [] + [] “” > [] + {} [object Object] > {} + [] 0 • What is array plus array? (empty string) • What is array plus object? (empty object) • What is object plus array? (zero)

Slide 21

Slide 21 text

WAT • WAT • Even an experienced JavaScript programmer may know none of these • Or a beginner programmer could get them all right • Yet both are likely to have a poor understanding of their own expertise. • Apologies to Gary Bernhardt. you should watch his lightning talk ‘Wat’ if you haven’t already

Slide 22

Slide 22 text

"It ain't what you don't know that gets you into trouble. It's what you know for sure that just ain't so.”
 Mark Twain • This quote nicely sums up psychological research into people’s perceptions of their own knowledge and skills • Ignorance is not the absence of knowledge, but the presence of poor, misleading, inaccurate heuristics and intuitions • Ironically, this quote is often mis-attributed itself to American author Mark Twain

Slide 23

Slide 23 text

"It ain't what you don't know that gets you into trouble. It's what you know for sure that just ain't so.”
 Josh Billings • It’s actually by similarly moustachio’d humorist Josh Billings.

Slide 24

Slide 24 text

The Dunning-Kruger Effect • Research by David Dunning and Justin Kruger and later by others showed that individuals are poor at judging their own ability, knowledge or skills in a huge variety of areas. • This effect is repeated time and time again, such that it has now entered popular language, alongside The Imposter Syndrome • Incompetent people fail to recognise their own lack of skills, or the presence of skills in others • They fail to recognise how extreme their incompetency is • Later research showed how skilled individuals generally underestimate their own expertise, so the effect goes both ways. • The study of human understanding of our own cognitive state and abilities is known as metacognition

Slide 25

Slide 25 text

"One of the painful things about our time is that those who feel certainty are stupid, and those with any imagination and understanding are filled with doubt and indecision” 
 Bertrand Russell • Dunning and Kruger’s research was first published in 2000, but it’s been known anecdotally to many others for far longer • This quote also captures the essence of the experimental evidence • Knowledge and experience are burdens to the mind, as you come to realise the sheer scope of what you don’t know and cannot do. • And it chimes extremely well with our own understanding of how we progress through a skilled profession like programming

Slide 26

Slide 26 text

• Here is Phil over there joking about the Dunning-Kruger effect • I’m a big fan of cognitive biases. It’s good fun to spot them in real life. • After you’ve read about some of them, they seem to crop up everywhere. • This in itself is a cognitive bias, called the Baader-Meinhof phenomenon • It’s interesting to me to see how certain biases have started to enter public discourse in the form of memes and jokes

Slide 27

Slide 27 text

From The Imposter Syndrome in Software Development
 http://valbonneconsulting.wordpress.com/2014/08/16/the-imposter-syndrome-in-software-development/ • It’s healthy to make fun of our own deficiencies, but it’s also dangerous to oversimplify things in shared language. • Because of the focus on knowledge and self-confidence about our own knowledge, it’s tempting to simplify our understanding of as in this chart. • This is from a blog article that received a lot of attention when it was published and has a huge number of comments on Hacker News. • Weirdly, most of the comments are sensible and thoughtful.

Slide 28

Slide 28 text

"Sometimes I feel I might have a slight impostor syndrome, then I start to feel better about myself, then I fear I might experience the Dunning-Kruger effect, so I go back to having impostor syndrome." 
 - funky_vodka • Here’s a nice illustration of this from a Hacker News comment on that article.

Slide 29

Slide 29 text

https://medium.com/@aliciatweet/impostor-syndrome-is-not-just-a-confidence-problem-dea670e59f6e • Here is another example. • Alicia Liu wrote how she saw imposter syndrome starting to be portrayed as just a lack of confidence and in some cases others putting a positive spin on imposter feelings, arguing that it would make people more committed. • But adjusting confidence levels is not the goal here. Overconfidence is just as damaging.

Slide 30

Slide 30 text

Me, me, me • Humans do not think and act in isolation, but as an engine of misbelief in the context of a complex social and physical environment • Ironically, while those with imposter feelings fail to credit their own permanent characteristics for successes, they will quite readily attribute negative outcomes to themselves. • So, the emotional effects of imposter feelings are likely to be explained by permanent personality traits rather than temporary or external environmental factors • This is itself a metacognitive heuristic. And it is so widely accepted that it is rarely questioned.

Slide 31

Slide 31 text

Them, them, them • We rarely discuss the origins of imposter feelings outside the self, e.g. family, schooling • And even more rarely discuss the workplace attitudes and social structures that can maintain or exacerbate imposter feelings • Framing imposter feelings as a syndrome (a set of symptoms experienced by an individual) places the onus on the individual to address it, by seeking personal counselling or exploring their own ‘problems’ • Do women and those from ethnic minorities experience imposter feelings more than white men because they have personalities disposed to anxiety, depression, self- doubt, lack of confidence, perfectionism, procrastination and other behaviours associated with imposter feelings? • Of course not. We would be more likely look towards the social context for explanations. Yet, the individual focus persists.

Slide 32

Slide 32 text

Do you even React, bro? • To look at work environments specifically, some of our workplace group behaviours are pretty damaging • Programming, like many other knowledge based professions, has a cultural problem. • Discriminatory practices • a work-hard / play-hard culture • startup glorification • the 10x, superhero, rockstar, ninja developers - “only the very smartest work here” • False meritocracies • Framework wars • Assumed, extra-curricular, self-driven personal development • Many of these things place the onus on the individual to further themselves, and to fix their own problems in their own time • It isn’t very surprising that pressure to perform, its associated anxiety, and the lionisation of individual expertise over team output leads to problems like imposter feelings

Slide 33

Slide 33 text

Healthier environments • You may not be able to fix your work environment of course. If you are a student, it is unlikely that you’ll be able to change the examination system or the PhD assessment process. • If you are in a combative, competitive work environment you might want to think if that is healthy for you • There are things you can do to minimise imposter feelings for yourself and others • Mentoring other developers is powerful, but needs to positive and encouraging rather than combative • And if you hire developers, look out for applicants misrepresenting themselves negatively as well as positively • Be wary of elitist or overtly meritocratic language in job adverts

Slide 34

Slide 34 text

Healthier communities • The same goes for the wider JavaScript community • I used to feel pressured to keep up with all the latest techniques and frameworks, just so I could have some kind of opinion on everything. • That’s just not possible. It’s OK to say you don’t know, even to clients and prospective employers. • If others put you down for knowing less than them in some specific area, or you go to job interviews where you are turned down for not knowing some esoteric DOM API method, that’s not you, it’s them • We should be fostering mentoring, knowledge sharing and group advancement over individual knowledge and status.

Slide 35

Slide 35 text

Tips!
 http://geekfeminism.wikia.com/ wiki/Impostor_syndrome • That’s all • Some great tips for individuals experiencing imposter feelings can be found here • It also has some for friends and colleagues, and for those looking to improve diversity in their hiring

Slide 36

Slide 36 text

Get help
 http://geekmentalhelp.com/
 http://www.samh.org.uk/ • Finally, if you experience persistent anxiety, depression or other feelings related to work pressure or imposter feelings, please get help. You are not alone. • The geek mental help site has some great personal stories and experiences • The Scottish Association for Mental Help is a great starting point for finding local organisations • Most GPs are trained in mental health first aid these days

Slide 37

Slide 37 text

Thanks!