The Quiet Programmer
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 65 | |
Author | ||
License | CC Attribution - ShareAlike 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this | |
Identifiers | 10.5446/37647 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Producer |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
Ruby Conference 20144 / 65
2
3
4
6
9
11
14
17
18
19
20
25
27
29
30
32
34
35
39
40
46
47
50
53
55
56
58
61
63
00:00
Programmer (hardware)40 (number)InternetworkingComputer programTwitterMixed realityProgrammer (hardware)
00:31
InternetworkingTwitterIntegrated development environmentFlow separationSinc functionGroup actionLocal ringPlanningShared memoryMultiplication signScaling (geometry)Meeting/InterviewComputer animation
01:16
Service (economics)SoftwareMultiplication signComputer animation
01:38
Surjective functionTwitterComputer animation
02:11
SoftwareSoftware developerSoftware developerSet (mathematics)Software testingWater vaporComputer animationLecture/ConferenceUML
03:19
InfinityInternetworkingFlip-flop (electronics)Arithmetic progressionComputer animation
03:50
Food energyDataflowData modelAgreeablenessWordTwitterTheoryDataflowMereologySoftware testingMeasurementFood energyOrder (biology)Interactive televisionElectronic mailing listFlow separationEndliche ModelltheorieObservational studyOpen setGroup actionRight angleDifferenz <Mathematik>Direction (geometry)Machine visionAreaTerm (mathematics)GoogolDirected graph
07:25
Ideal (ethics)Term (mathematics)WordGoogolReflection (mathematics)Goodness of fitMultiplication signIdeal (ethics)Set (mathematics)Identity managementOffice suiteMetropolitan area networkCuboid40 (number)QuicksortComputer animation
08:34
Software developerIdentity managementMetropolitan area networkCuboidOffice suiteArchaeological field surveyObservational studyComputer animation
09:04
Software developerRight angleField (computer science)Software developerGraph (mathematics)Observational studySoftware engineeringScaling (geometry)Bit rateExpert systemSoftwareTraffic reportingDiagram
09:52
Speech synthesisSpeech synthesisMultiplication signGoodness of fitMathematicsTheory of relativityInterpreter (computing)Level (video gaming)Observational studyData conversionRevision controlSound effectInteractive television
10:54
Exclusive orSet (mathematics)Multiplication signInteractive televisionQuicksort
11:21
MeasurementSensitivity analysisPressureVideo gameElectronic mailing listFacebookNegative numberObservational studyDirection (geometry)Arithmetic progressionMultiplication sign
12:41
Dependent and independent variablesSoftwareDirected graphSoftware developerDependent and independent variablesLevel (video gaming)Computer animation
13:19
SoftwareoutputUnit testingLevel (video gaming)Execution unitSoftware developerWordComputer animation
14:16
SoftwareSoftware developerSoftware developerReading (process)Field (computer science)Power (physics)SoftwareUMLComputer animation
14:47
Medical imagingSensitivity analysisMultiplication signComplex (psychology)Axiom of choiceGradientGame theorySoftware developerMereologyObservational studyDifferenz <Mathematik>Natural numberSoftwareComputer animation
16:20
Software developerPower (physics)Complex (psychology)Computer animation
16:45
WordSoftware developerSoftware bugMereologyWhiteboardMedical imagingIdeal (ethics)Condition numberComputer animation
17:37
Arithmetic meanVideo gameRight angleSet (mathematics)Event horizonData conversionArithmetic meanProcess (computing)Form (programming)Bus (computing)Multiplication sign
19:04
Process (computing)Right angleMaxima and minimaMoment (mathematics)Integrated development environmentHypermediaNumberVolume (thermodynamics)Software testingMereologyLevel (video gaming)SoftwareGroup actionFlow separationWordNP-hardDependent and independent variablesMultiplication signRight angleSoftware developerProcess (computing)Different (Kate Ryan album)Graphics softwareSet (mathematics)Mathematical optimizationAveragePoint (geometry)Complex (psychology)Observational studyNoise (electronics)MathematicsResultantSpacetimeBitSystem callComputer programTwitterSoftware engineeringInternetworkingTelecommunicationLine (geometry)Computer animation
23:57
MIDIIntegrated development environmentInternetworkingProduct (business)TwitterMatching (graph theory)Software developerSoftware testingPower (physics)Shooting methodComputer animation
24:57
Extension (kinesiology)Condition numberSign (mathematics)Software testingObservational studyResultantExploit (computer security)Sound effectFlash memoryCodeSoftware developerComputer simulationPosition operatorCodeMeasurementOntologyGame controllerComputer animation
27:21
Arithmetic meanSoftwareArithmetic meanIntegrated development environmentSoftware developerLecture/ConferenceComputer animation
27:47
Maxima and minimaSoftware developerSoftwareContext awarenessIntegrated development environmentExpert systemReal numberSoftware developerRevision controlVideo gameReverse engineeringComputer animation
28:25
Coma BerenicesPerturbation theoryArchaeological field surveySoftwareIcosahedronDigital photographyEvent horizonVideoconferencing
Transcript: English(auto-generated)
00:19
Okay, welcome to the last full session of RubyConf 2014.
00:26
Woo-hoo, and welcome to The Quiet Programmer. I am Mark McSpadden, creatively you can find me at Mark McSpadden on the Twitters and the GitHub and the internet. I'm from Dallas, Texas, and for several years
00:44
I ran the local Ruby group there, Dallas Ruby Brigade. You can find them at Dallas Ruby. For the last two years, I've run a conference there called Big Ruby. What we do is we bring together people that are using Ruby in large environments, with large teams
01:00
that care about performance and scale, and we put on a two-day conference to kind of share stories around that. We've done that for the last two years, and we'll be looking to make announcement in the next few weeks about what our plans are for 2015. I work at Sabre, and since I've already answered this several times this week, we don't make printers.
01:24
What we do is that we provide software services to the travel industry, both for travel agents, airlines, and hotels, and on the traveler-facing side, through Travelocity. I run our labs team there, which I work with
01:44
with some really, really talented people, and we research trends in technology that we think will become important to travel over the next three to five years. At home, I'm a husband and a dad of three girls, the youngest of which is just over two months.
02:01
Yes, I left a two-month-old at home to come to San Diego for four days. It's been nice to sleep. But this talk is not about me. Well, actually, it kind of is about me, but it's about us, at least it's about some of us.
02:22
Actually, it's about a lot of us. This talk is about the intersection of two sets, one, software developers and introverts. And this is important because an estimated 50% of the U.S. population is introverted,
02:41
and that's reported by Myers Briggs, who does the personality test for people. A lot of people in this room have probably done some kind of Myers Briggs personality test. 50% of the U.S. population is introverted. That's like close to half. Now, this is surprising to most people because people have this idea in their mind
03:01
of what an introvert is, and they can't imagine that half of the people that they know are actually introverted. And when I talk about this picture of what an introvert is, I've got a pretty good idea of this because I'm researching for this talk. I've seen a lot of pictures associated with articles of introverts, and I can tell you that the picture of an introvert includes a lot of wool sweaters.
03:23
It also includes hot chocolate and lots of books. So this is the picture of an introvert as the internet portrays it. And this kind of scares me because I feel like half of the U.S. is stuck in some kind of infinite winter, and that's not like a metaphor.
03:41
That's like real, like if we could just get an introvert out to San Diego or show a picture of one in flip-flops, like maybe this would be progress. But this is nothing new to introverts. Introverts have a history of being misunderstood, and even being misunderstood by the professionals that spend their lives studying psychology.
04:03
So we're gonna do a quick history of introverts and extroverts 101. We're gonna start in the 1920s, not that long ago. C.G. Jung is the person who popularized these terms, introvert and extrovert, and his idea was centered around the flow of mental energy.
04:21
So extroverts have mental energy that flows outward, and introverts have mental energy that flows back in. And this is actually not that bad a definition of an introvert and extrovert. In fact, if you're an introvert, this might resonate with you fairly well compared to some other definitions you might have seen. The problem with this definition
04:41
is that the measure of mental energy and its directional flow is not quite a science. And this makes it hard to adopt in the study of the mind. So inevitably, this definition is going to have to change. And the next contributor to it is Heinz Asink, in somewhere around the 1950s.
05:02
And he creates this model of personality that's based on three things, one of which is extroversion. And he's the first to really introduce this idea of personal interaction as part of this. And what he does is says that there are some sub-traits of extroversion that you can look for to determine how extroverted somebody is.
05:22
And he gets specific about these sub-traits, and it's not good for introverts. An extrovert is defined as stable, mature, integrated, good character, unemotional, and dominant. An introvert, on the other hand, is persistent, which is not bad. Cautious, okay.
05:42
Schizotyne, I think I'm doing that right. Dysothymic, melancholic, and disurgent. You don't even have to know what all the rest of those words mean to know they're not as good as the list above it. I did look these up. They're not good. Disurgent isn't even a word anymore.
06:01
That's how bad it was. We were like, we don't even call people that anymore. And so this starts a trend that is in the wrong direction for introverts. And subsequent work and theories are actually built on top of this work. In the 70s, you have what kind of emerges as called the big five personality traits.
06:21
And one of these is extroversion. If you look at all the big five, openness, conscientiousness, extroversion, a groove on this, and neuroticism, they spell ocean. That's why they do them in that order so they can remember them. But here again, we have this definition of extrovert and introvert,
06:40
and not good for the introverts. I pulled several online personalities, tests you could take based on the big five. And these were some of the words, outgoing, assertive, sociable, fun-loving, talkative, and cheerful for the extrovert, and the introvert reserved, somber, quiet, and cold-detached. Fun-loving is the one that gets me here.
07:01
I don't know what fun-hating is. Like, I don't know if that's a thing that if something gets more fun, you like it less. But apparently, an introvert would do that, or an extrovert would not do that. And so what we have is this idea that to be an extrovert is good and positive, and to be an introvert is negative
07:22
and may require medical attention. I'm serious about this. As I Googled one of those terms earlier, Google on the right, you see this arrow, it says, consult a doctor if you have a medical concern. I'm really interested to see the ad words that I get over the next two months from Google based on the research just for this talk.
07:42
But back to this idea that extroverts are good, introverts are bad. Whether this is a reflection of what's going on in the culture or what drives the culture, Susan Cain in her book, Quiet, puts a really good term around this. This is called the extrovert ideal. So the concept that the ideal member of our society
08:01
is outgoing, that they have lots of friends, that they're assertive, they may even be dominant. One of the ways I think reflects this that maybe we can relate to is superheroes that are popular at different times. So during the 1940s, you have a really popular set of animated cartoons for Superman.
08:21
And this set of animated cartoons is where the idea of Superman's secret identity, Clark Kent, is first described as mild-mannered. So a superhero whose secret identity is mild-mannered. I fast forward to today. This is our superhero of the time, the one that we all go to the box office to see. This is billionaire playboy Tony Stark
08:42
who does not mind telling the world that I am Iron Man. I don't need a secret identity. I am out here and I'm in the world. And so this creates some problems as we start to talk about being an introvert and an extrovert in the world in general and in software development. So when I got accepted to give this talk, I did what any one of you would do.
09:01
I went to Google and I said introvert and software development. And sure enough, there was a study, a survey last year, so not too long ago, is prepared by Evans Data Corporation. They surveyed 457 software engineers. And one of the many questions that they asked them is to rate themselves on a scale of introversion and extroversion.
09:23
Extroversion here is on the right. What you may notice from this graph is that apparently as self-reported, software development is one of the more extroverted things you can do. Our field is ripe with extroverts regardless of what your personal experience would be. That's right, sales and marketing lookout.
09:41
Extroverts are headed to software. And so this isn't a problem necessarily with the study itself. This is the problem of self-reporting in a world that values and rewards extroverts. It also, we have this problem that we associate activities that may be neutral on introversion and extroversion scale, but they're positive.
10:00
We associate those with extroverts. So public speaking is not an extroverted activity. Like you may, when I first got up and you said, oh, well, he's gonna give a talk about introversion. How can he do that on a stage? Is that even possible? The act of public speaking is not necessarily an extroverted activity. In fact, many introverts do it. They feel like it's more of a performance
10:21
than a conversation with lots of people. And the fear of public speaking affects 75% of the population. So even a basic math would say, well, introverts are only 50%, fear of speaking is 75%. We can't, that's a little more than the introvert population. And there's actually some good hard psychology behind it. A study that showed that when controlling
10:41
for introversion and extroversion, that only 84% of public speaking fear had any relation, no, 84% had no relation to whether you were introverted or extrovert. This is true on the flip side where negative things get associated with introverts. Introversion is not the same as shyness. Shyness is an anxiety around social interaction.
11:03
There are shy extroverts. This sounds extremely terrible to me that you would get pleasure from spending time with people and enjoy it, but be scared of it. That sounds like a special set of badness that I'm glad I don't experience.
11:21
But all is not lost. Like there is hope for us as an introvert. A lot of work that's been done probably over the last 20 years is really trying to understand the introvert kind of within their own realm and not being like the kind of negative opposite of whatever an extrovert is.
11:40
And so work by Jerome Kagan, who spent his life doing studies of temperament, worked with lots of young children to measure temperament and reactivity at a young age and watch them progress throughout their lives to see how that impacts the way they interact with the world. Researchers like Elaine Aron, who does work with high sensitivity people,
12:03
which is correlated with introversion, they're not exactly like it. And even beyond just research, so when you look at pop culture, Susan Cain's book, Quiet, spent 16 weeks
12:21
on the New York Times bestseller list in 2012. And last week, my wife reads me a post off of Facebook that came from Huffington Post about the 10 myths of introverts. I don't know if Huffington Post is in the right direction or not, but regardless of that, when you're coming from a place that's cold and detached, it'll basically take any pressure you can get.
12:41
And so to go forward as we talk about introverts in software development, I feel like we need a really good working definition of what introversion and extroversion is. And we're gonna do this in a way that actually goes way back to Async, even though he tried to talk about the underpinnings of personality and why this could be.
13:01
He had this idea that it's mostly due to arousal in the brain in response to external stimuli. So this is where a lot of the definition towards introverts and extroverts is going. And so it's really based around external stimuli and your response to it. So extroverts, I mean, no, it says introverts,
13:23
really big. Introverts are more sensitive to external stimuli and therefore require less of it. This idea that we're all trying to reach this kind of comfort level with the stimuli around us, and introverts require less of that stimuli.
13:48
Sorry, excuse me. On the other end of things, extroverts are less sensitive to stimuli and therefore require more of it.
14:02
So introverts, more sensitive, require less. Extroverts, less sensitive, require more. And as software developers, we should like this. We've reduced our really complex problems down to inputs and outputs. We can maybe unit test this later, I don't know. But what does this have to do with software developers? Well, I believe that based on my reading
14:21
that there are some superpowers that introvert software developers naturally have, things in the way that our brains are wired that help us in the field of software development. This isn't to say that extroverts can't exhibit the qualities that we're gonna talk about. It's just that they come naturally to introverts. And really, after 50 years of being told
14:42
to be more extroverted, maybe we can have at least a few things to hang our hats on. So the first one is that as an introvert software developer, you are a natural, deep thinker. So they take people that have high sensitivity, which isn't exactly extroversion,
15:01
but is correlated with it, and they show them two images. Sorry. Now in these, when they describe these studies, they have to do a lot of work to talk about what is basically an image diff. There's two images, there's a diff.
15:34
High sensitivity people have higher brain activity when looking at these diffs. They use parts of the brain that involve complexity,
15:42
and they spend longer thinking about them naturally. This is just what happens. And Jerome Kagan, who I mentioned earlier, says even as young as first grade, children he called high reactive, so respond to stimuli, spend more time analyzing choices
16:01
in matching games than other children. And the ability to think deeply and complexly about things is a major advantage in our industry. It's basically what we spend most of our time doing. The other amount of our time we spend searching for animated gifs. But this is a serious talk, so we're definitely not gonna show any,
16:21
oh yeah, we are, we're just gonna. Oh, maybe you'll get it this time. No, so the first superpower you have as an introvert software developer
16:41
is that you can think deeply and complexly about things naturally. The second superpower you have is that you have a few strong meaningful relationships. And these are extremely valuable in your career as a software developer. Now conditioning towards the extrovert ideal may make you focus on the word few here.
17:03
Like you may say, oh, I only have a few strong, only a few, I need more. I'd urge you to focus on the strong and meaningful part of this. Because strong and meaningful relationships are what happen when you have people that sit down with you and help you solve the unsolvable bug. They're the people that tell you you really do know what you're doing.
17:22
They're the people that actually want to know how your exploration into Elixir is going and what you're feeling about that and what you think the advantages are. They're your soundboard for barely formed ideas. But if you don't have this yet, maybe you're new to the industry, you can totally do this.
17:40
So there's a conception that introverts are bad at making relationships. Introverts aren't bad at it, we're just more selective about it. And so you have to build a relationship around something that's meaningful. The idea that because I sat next to somebody on the bus, that's not a very meaningful thing, event in my life. So it's gonna be hard to build a relationship around that
18:02
no matter how long as an introvert. Because remember, I'm responding to stimuli. And a conversation is a very high form of stimuli. And so the cost of that is very high,
18:21
the meaning behind it needs to be high as well. But there are some things to do so that you can get meaning around relationships, even in settings like a conference.
18:41
So I'm gonna give you the one tip, trick that's in this whole thing. Right now, I use this all the time, it works, it's really nice. So you meet somebody, and you ask them where they work, and they tell you, you ask them what that means, and they tell you, and then you tell it back to them just to kind of make sure you understand what's going on.
19:01
And then you ask this question. You say, what is the hardest thing about your job right now? Now you get bonus points if instead of saying your job, you actually insert what they told you their job is. This is actually really important in interpersonal communication, the idea of mirroring.
19:23
So if they tell you that their job is a senior software engineer, and you tell them that, if you ask them what's the hardest part about being a programmer, that creates distrust. Very subtly, very slightly. But if you say, what's the hardest part about being a senior software engineer? There's an amount of trust there in that mirroring.
19:41
And so two things will happen, is number one is they will answer the question and they will talk for a long time. People like to talk about what's hard about what they do and they will talk. The second thing that will happen is the answer they give you will be fairly deep and complex. This is great as an introvert because your brain's gonna pick up a little bit,
20:00
you're gonna get this activity that keeps you engaged. Now that's not gonna last forever, that engagement, but it's at least a way to get started. And so this is a great question I like to use. There are several others like this, but ask somebody, what's the hardest part about your job? This works with non-developers too. This works at like Christmas parties and stuff.
20:21
We have to talk to the marketing people. Like you say, what's the hardest part about being the social media marketer? And they will tell you, resist the urge to try to fix it in that moment. Just listen. So deep, meaningful relationships are an important part of software development
20:41
and your career growth, and I encourage you that this is one of the things that you do well naturally as an introvert. So superpower number three, is you're aware of your work environment
21:00
and have optimized it for max productivity. Now this is my favorite study, so I wanna make sure that I'm not gonna cough through it because this is my favorite study in the whole talk. Okay, so we take 70 introverts and we have them one at a time go into a room
21:21
and we put headphones on them. Not we, but professionals do this. And they ask, they send a burst of noise through the headphones and they ask the introvert to adjust the volume to where it feels comfortable. They do this for 70 extroverts as well. And then they average the results.
21:40
For an introvert, the average volume set is 55 decibels. For an extrovert, it's 75. That's the difference in talking about like this and talking pretty much like this. This is a big difference and that's interesting in its own right. They do another great thing in this study, is they ask the participants to solve
22:02
a complex word puzzle with the headphones on. Both groups do the best when they're at the volumes they have chosen themselves. When you ask an introvert to turn the volume up to an extrovert level, the number of tries it takes to solve the puzzle
22:20
increases by 50%. They perform worse on the test. When you ask an extrovert to bring the volume down to the introvert level, the extrovert does worse as well, but only by about 30%. So this idea here is that people perform better in environments that they've selected and meet their level of stimuli.
22:42
Now as an introvert, you're more sensitive to those changes. And so chances are, you've finely tuned your environment. This is why you have what Michael Lopp, when writing his rands, calls the cave. He says that my cave is my intellectual home,
23:01
my kitchen is where I eat, my bed is where I sleep, and my cave is where I think. You have a space that is finely tuned to provide the optimal level of external stimuli that keeps you engaged in your activities, but does not distract you from them. I believe this is also why we spend a lot of time optimizing our tools and our editors.
23:23
Every tweak that you make to one of those things is really saying, I feel like that was too much stimuli for the thing I was trying to do mentally.
23:43
And finally, this response to stimuli is also why companies that embrace remote work, I feel find that they have employees that are very productive and very satisfied. So I don't know Nathan Ladd at all.
24:02
This tweet showed up in my timeline as magic of Twitter does. Somebody retweeted it two days ago. And so I reached out to Nathan in my least creepy internet voice. And I said, Nathan. I said, have you ever taken a personality test?
24:20
And he said, yes. And I was like, great. I said, were you an introvert or an extrovert? He was like, I'm an introvert. I was like, yes. He's like, can I use your tweet in my talk? He said, yes. I said, where do you work? And he said, Well Match. Well, I know several of the people that work at Well Match. They're a fully distributed company. They work very hard at making distributed work,
24:42
something that their employees enjoy, both from a productivity standpoint and from an interpersonal standpoint. So your third superpower is that you have a finely tuned work environment that allows you to be productive. And your fourth superpower is that you can work
25:02
late, late into the night. Now software developers are famous or infamous, either way, about late night coding exploits. So whether it's getting into a new technology and coding through the night, fixing a late night bug, or signing up for one of those 24 hour hackathons,
25:20
I'm a sucker for those things. Man, I'll sign up. I won't sleep. I'll code something. It's crazy. As an introvert, you're actually better positioned to perform under sleep deprived conditions than your extroverted colleagues. They're studies.
25:40
It's science. So the first study comes from the Walter Reed Institute of Research, run by the Army. They care about performance under sleep deprived conditions. And so they take introverts and extroverts and keep them up for 77 hours. And every two hours they administer this test
26:01
that flashes a light at them. They're supposed to push a buzzer when you see the light. And they measure how long it takes you to press the button and how many of the light flashes you actually miss, just totally miss. This was their finding. Above and beyond the effects of caffeine, they control for caffeine here, higher extroversion was significantly related
26:21
to more extensive declines in speed of responding and more frequent attentional lapses. So this makes sense when we think about the idea of stimuli. Extroverts are less sensitive to stimuli
26:40
and require more of it. When you're sleep deprived, you become even less sensitive to stimuli. This hurts an extrovert a lot. And introverts, like I didn't need that stimuli anyways. I didn't like it. I'm fine, at least for a while. The results that follow says from that test, but only for the first overnight testing session.
27:00
So you've only got about 24 hours of headway and then everybody does poorly. Other studies have shown that introverts perform better than extroverts in driving exercises under sleep deprived conditions. I think these were done in simulators. I really hope so.
27:21
And just because you can, doesn't mean you should. It's important to take care of yourself, but it's nice to know that if you need to stay up and fix a bug, that as an introvert, you have an advantage here. So I went through that pretty quickly with a lot of coughing and I apologize.
27:42
And those are the superpowers I believe that you have in introvert software development. So recap, that you're a natural deep thinker. You have a few strong, meaningful relationships. You're aware of your work environment and have optimized it for max productivity. And you can work late into the night.
28:00
The final thing I want to say is that if you've spent your life hearing or feeling like there's a thrill-seeking, outgoing version of yourself, that you're somehow suppressing and that you'd be more successful or important if you were that version of you, well, I'm glad you found software development because we need you, the real version of you,
28:21
the introvert version of you. Thank you.