Dreams

Proof Like Comey (Moves Like Jagger Parody) – Annotated

I wrote a parody of “Moves Like Jagger”.

It’s about the Comey memos.

I put the lyrics below the video, and I put lots of links inside the lyrics.

I’ve emphasized the timeliest link, which points to a list of ways you can watch the Comey testimony live on June 8, 2017. (That’s tomorrow, as of this writing.)

Cheers!

-Duke

Proof Like Comey

-whistling intro-

Collude in the dark

Cause it seems right

When wannabe Tsars

Hold your strings tight

And take me aside

With something to hide

Cause Flynn’s a good guy…

You wanted control

Of my process

But I did not fold

To your nonsense

You say I’m a nut

I showboat and stuff

I don’t give a fuck…

Cause of notes like this

You wanted me to stop and just let go

But I wrote it down in my memo

Building proof like Comey

I got that proof like Comey

I got that proooooof like Comey

I did not deny or condone you

But when I testify I might own you

With my proof like Comey

I got that proof like Comey

I got that proooooof

But maybe you’re raw

Cause you realize

You can’t rule us all

Like a real tyrant

Cause we have press

And balance and checks

So may I suggest

Bro.

Just get in your lane

And then stay there

I know you’ve been trained

Not to play fair

But I’m on alert

So if you subvert

I will bring the hurt

With some notes like this

You thought that I would stop if you said so

Instead I’ll take you down like fresh memos

With my proof like Comey

I got that proof like Comey

I got that proooooof like Comey

The power of my pen is like old news

A reading man would know that I’d quote you

With this proof like Comey

I got this proof like Comey

I got this proooooof like Comey

 —

You wanna know

How to be my goon

Just wait a second

(Friends, can you leave the room?)

Now if I share this secret

You’re gonna have to keep it

Nobody else can see this

Now listen hard

To my hushed advice

Call off the guards targeting my Russian ties

But don’t record what we said

And never ever leak it

Cause this is almost treason

Hey, wait! James, wait!

But I wrote that shit!

Try to tell a lie and I’ll roll you

I know a couple crimes that you spoke to

And there’s proof like Comey

I got that proof like Comey

I got that proooooof like Comey

You’re strung up by the tongue that controls you

I really hope your party disowns you

Over proof from Comey

They’ll get that proof from Comey

They’ll hear the truuuuuuth from Comey

P.S. If you’ve enjoyed reading any of the articles linked above, consider supporting the journalists who wrote them. A monthly subscription to a quality journalistic outlet you trust is a pretty small price to pay if you want to cut through the disinformative noise chamber that is social media and/or read articles that are (generally) less riddled with clickbait headlines, editing missteps, and plain old typos.

Advertisements

Rockets’ Red Glare

Action and reaction. Fire and force. In order to soar in one direction, a rocket has to burn furiously against the space it wishes to leave behind.

I’m a lover, not a fighter. I’ve always been a little miffed that my country’s anthem-choosers went with “bursting in air” over “sea to shining sea”. The shining seas are really nice. Bursting is…upsetting.

I remember sitting in classrooms and being told about taxation without representation. About people who were tired of giving so much to a king who cared so little about what they really needed, people who chose to risk what stability they had to fight for something better. And the story always seemed unreal to me, a touch too epic and yet a little too simple, like a fairy tale. Or a koan. Or a parable.

And it was too simple. A 2016 Google search demolishes the distortions and oversimplifications of a 1996 textbook. There was deep loyalism and colonial infighting and there were issues of distance and time and administrative friction and there was religious fervor and exclusion and there were countless tortured slaves and slaughtered indigenous people casting ugly shadows all over the Founders’ stated ideals.

There was also the fact that the colonies were doing alright by themselves in the years leading up to 1776. Why revolt when life isn’t revolting?

But anyway, I’ve been thinking about how rockets work.

So there’s this game called Just Cause 3, and it’s basically GTA meets James Bond meets Batman meets Tropico. You push various buttons in various sequences to make uber-badass Rico Rodriguez run and drive and fly around a sun-soaked archipelago that cowers under a dictator’s iron fist, and you shoot this and blow up that and grapple-tether those two other things into a collapsing heap and rinse and repeat until a town is liberated.

And then you liberate all the towns in a province. And then you liberate all the provinces in a region. If you were wearing a tan shirt instead of a blue shirt, you’d say “conquer” instead of “liberate”. You’re not really a good guy here, so much as the most violent person in the world, whose violence happens to oppose the violence to which most other people in that world have resigned themselves.

The game’s creators understand this grey area they’ve put you in. It’s right there in the name.

For what did you blow up everything in that police station?

A just cause.

And why did you tether a deer to the back of a stolen sports coupe and use it to sideswipe that military motorcycle at 160 km/h while shouting “meat nunchucks, baby!”?

Just ’cause.

The game gives you an unlimited supply of remote mines; you stick a few to a statue of the Evil Bad Tyrant Dictator Guy, grapple up to a rooftop for a better view, trigger the explosion. After enough mayhem, you unlock rocket boosters on the mines, and you can stick them to the back of an empty car, set them off, and watch them propel the car forward (towards the entrance to a heavily-guarded base, perhaps) before detonating after a few seconds.

Fire and force. Action and reaction.

To push forward, you have to put things behind you.

And I’m writing this post so I can hear myself admit to myself that there are things in my life that I am afraid to put behind me, because I’m afraid of moving forward.

I’ve been doing alright by myself, more than alright by any modern standard, but I don’t feel free at all.

In the wide world outside the video game, where my potential for movement and exploration far exceeds the 400 square miles of Rico’s sandbox, I still find myself on the couch, dutifully spending another weeknight living out someone else’s power fantasy. I’ve used a helicopter to hit the ceiling of the game’s skybox, just to see if I could, but there are streets in my own neighborhood that I’ve never set foot on.

I spend 7 hours a week on a train to or from work. 28 hours a month. 330 a year. Between right now and when I’m nearing retirement age, I could potentially spend 10,000 hours getting better at any number of things. All I’d have to do is quit zoning out on Twitter, stop hate-reading bad editorials or idly browsing deal sites, and maybe open a book or a notepad instead.

I get 90 minutes to eat lunch. I keep telling myself I’ll bring my Maschine to work and spend 60 of them figuring out how to make music on it. Instead I hop online again and drink at the bottomless content trough while overeating McDonalds and trying to convince myself that what I’m doing is self care.

I have four waking hours every weekday that aren’t devoted to work or commuting, and my daughter gets one of them, and dinner gets another, so how the hell am I making time to keep up with multiple shows on Netflix and Hulu?

I am losing too much time and energy to things that don’t have my best interests at heart.

I am being taxed without representation. By myself.

And I’ve consented to this taxation. I love these shiny toys that eat up my free time and stall my creative drive. And Twitter is dope. And Mickey D’s is delicious.

I am the tyrant king of an island nation of one, and I’ve spent a year caring so little about what I really need that I’ve almost forgotten what it is.

But I haven’t forgotten completely. I’ve tasted better food before. And I used to have more conversations with real people, and no one ever got cut off at 140. And there was a time not that long ago when I made my own toys, created my own worlds to fly around in, wrote my own stories, told my own story.

I put all of that behind me for a good reason: I needed to move very far, very quickly, in a new direction.

Two years ago, over the course of an exceptionally frantic and joyful summer, I moved to Chicago and learned how to build beautiful and meaningful things on the web. It was a lot to learn, perhaps too much for the time I had given myself to learn it. Tyrants set high bars for success.

But I learned it anyway, by casting aside everything else. No TV, just restorative sleep. No hate-reads, just reflective writing. No vidya, just code and code and code and code. I had left my wife and daughter in another state, and some days I forgot to call them to check in.

I was a rocket, and my trajectory was true, and that meant there had to be a million directions I wasn’t going.

I graduated and stumbled into the most challenging and rewarding and fulfilling job I’ve ever worked, and for a while it felt like I had finally arrived.

I mean, on paper, that’s exactly what I did. I don’t have to grind 60 hours to make ends meet anymore. I can afford date nights and pay the sitter a living wage. My work is recognized and appreciated within a community of like minded people whom I admire and respect. I no longer feel like I have to apologize for or explain away my two college dropouts at family functions; they are now prologue to an adventure instead of a tragedy’s motif.

The changes I’ve gone through felt like arrival for quite a while.

But what is arrival to a rocket?

I press R1 and Rico sticks a mine to the top of an unmanned enemy helicopter. In a couple minutes, I’ll have raised enough hell to raise my Heat Level and they’ll call in air support. Someone’s gonna man this chopper and right as they track me down and start opening fire, I plan to press and hold R1, which should trigger the extreme downward pressure of the pre-splosion rockets and cause the chopper to politely “land” before detonating.

Comically, I hope.

And tragically, I realize that I’ve spent the last year and a half doing the same thing to myself. The bladed bird is my creative life, soaring and explosive and hard to control and dangerous, brought to a standstill by a dramatic push to set my future on more solid ground.

But I hadn’t planned for the explosion after, the glut of timekilling consumer joys that would make me forget how good it felt to record something brand new and share it with the world.

In real life, the detonation is agonizingly slow. You ignite the boosters while playing your songs for 50 bucks a night and feeling like the brokest dude who ever conquered the world (or did you liberate it?); a few months later, you’re planning on writing an Internet radio app to help boost album sales for yourself and your artist friends back home; half a year on and you still haven’t put any new music out but it’s cool because you’ll hit 1000 followers soon and you’re getting really good at teaching and the school’s tri-weekly open mics feel like enough of an outlet for that gasping but ever-quieter voice deep inside; another year gone and Aesop Rock’s “Rings” hits your eardrums for the first time and you realize, holy shit, this song is about you. Or at least, it will be if you don’t change your trajectory, find some different stuff to put behind you.

It’s hard to admit, but I used to rap. And sing, and blog, and strum, and fold paper, and cook, and daydream about big stages in faraway places. I used to go to open mics every week and play billed slots on shows every month. I used to spend train rides refining couplets and reshaping clauses. I used to need to restring my guitar five times in a single summer.

And I was flying high, too high to reliably bring enough money home to my family or spend enough time with them when I got there. So I made my plans and set my mind and set my mines and pulled the trigger and found a more down-to-earth way of living.

But something’s bound to burst pretty soon.

And I’m hoping the pastimes to which I once pledged allegiance are still there.

Because I used to be braver than this. I used to be freer than this.

So I’m declaring my independence – from crafting and polishing my image on social media, from refreshing my feed in search of another like or update or aghast quote tweet to get riled up about, from Netflix binges and memorizing Hulu episode release days, from shopping instead of writing, from critiquing instead of practicing, from blowing up digital regimes instead of making the music that helps me stand up to real ones.

I’m declaring independence from trying to love a little bit of everything as a defense mechanism against forcing myself to fight for the few things I really care about. I’m a lover and a fighter. Some bursts are far more upsetting than others.

The easiest way for Rico to bring down a helicopter isn’t to blow it up or shoot it. All he has to do is grapple tether it to the ground and it will crash all on its own. The pilot AI is too rigidly aggressive to adjust to the tether, and it will pull at the line until it collides with earth and bursts into flames.

But humans aren’t coded like that. We can adapt.

So let’s say you were born yearning to soar, but reality has tied you down to an earth bursting with easy but hollow pleasures.

If you choose to stay where you are, you’ll surely rust from the inside out. But if you choose to fly, you’ll never break that tether, and you won’t be able to get as high up as you’d hoped, and changing direction too quickly or pushing too hard on the attack could disturb your vessel’s delicate balance and put an end to everything.

Why would you risk flight? Why would you even play the game at all?

Maybe you would if you had a good enough reason.

Or maybe the game is its own reward, and you’d give it a shot just ’cause you could.

Happy Fourth. Put something behind you so you can battle for something better. And don’t give up the fight.

 

The Rockwell station.

You Have To Know What Scares You More

I graduated Dev Bootcamp in September, and got asked to come back on contract as a junior instructor, and that job became full-time official last month, and that meant I finally got to reunite my family in Chicago, so we’re together again and my career trajectory has changed in a huge way and 2014 was the most amazing year of my adult life.

But that’s not what’s important for today.

What’s important is that my family moved to Lincoln Square, right off the Rockwell Brown Line stop. That matters because the train is at street level at Rockwell, which means I get to see a drama play out every morning that reminds me of my work.

The Rockwell station is just west of its namesake street. A street level station means there’s no bridge over Rockwell, just a track embedded in the asphalt and four big lighted wooden arms that come down when a train’s about to cross; it’s a railroad crossing, and sometimes people get hit at crossings, so there are bells and flashing red every few minutes before Kimball-bound trains slow down into the station. Or before Loop-bound trains arrive at the station, load up, and then cross Rockwell heading east.

The timing matters for this analogy. Kimball trains come through the crossing faster, since they’re decelerating from speed. By contrast, you’ll see and hear the warnings for a Loop train before the train has arrived at the station, before it has slowed down to a stop before the closed crossing, before passengers have boarded.

And I say all this so maybe you’ll think differently about the kind of person who would ignore bells and flashing lights and duck under a descending wooden arm to make their train. Maybe they’re not ignoring a clear danger. Maybe they have enough context to know when there’s no danger at all.

For many DBC students, the beginning of Phase 1 is all loud warnings and descending arms. Day One hits and it’s FULL – intros given, overviews covered, rules communicated, and on top of that there are several code challenges to get through in what amounts to only a few hours of core coding time. It’s hard to get through everything on the first day, and if you don’t, the fullness of the day gives your ego an easy out: “surely tomorrow, when there’s more time to code, I’ll get through the challenges easier.”

And then comes Day Two and the pace actually increases and it’s really easy to feel like you’re already in danger of total challenge/day/program/career/life failure, depending on how loud your inner authoritarian can yell at you from inside your head.

Before Dev Bootcamp, you were really good at something, art or negotiation or electrical engineering or parenting or sales or being a full-time student, and a lot of your identity is wrapped up in that first expertise. Society messages to us that everyone’s supposed to get good at something and then make some money doing it, and we get nervous enough about the money part that we forget to challenge whether that “something” really needs to be singular for anyone. It’s not that you can’t take on a brand new skill as an adult (I’ve personally watched hundreds do it since last May), it’s that no one’s ever explicitly told you that it’s totally normal, it might even be the default path to happiness, so all you’re left with is the sense that you’re struggling and that you’re doing it alone, because who’s ever done anything this crazy before?

Well, your cohort’s doing it, so that makes you feel safer. And you’ve got instructors who did it, and that helps a lot. But inertia is powerful, and when your brain can’t get its daily expected dose of expertise dopamine, two days in a row, it can make you panic all the same.

I’ve seen a few people have to leave DBC. Sometimes the program just doesn’t fit a student’s learning pace, and it hurts to say goodbye, because you still know they’re going to go off and become great coders one day, but you won’t be there to see it. But sometimes a student just hits an emotional wall and shuts down, and it has nothing to do with their technical prowess, it’s all about their courage.

It goes something like this: “I know I’ve already repeated this phase, and I really need to buckle down these next three weeks if I want to pull through. But what if I summon a Herculean effort and I’m still not good enough in time? Maybe it would hurt a little less if I just tapped out now and failed on my own terms. At least then I could retain some sense of control.”

This morning, on my way in, I saw the gate start to come down, and three people took off running to beat it. Two ducked under, and the third decided at the last moment not to chance it.

If the train represents a perceived danger, and the wooden arms are the ego’s defenses against that danger, maybe the difference between those who go for it and those who hedge is in the context. Maybe Runner 3 didn’t know it was a Loop train and that there was plenty of time to duck even after the arm had dropped completely. And maybe the knowledge that DBC is a safe place to learn and make mistakes, the knowledge that you’re surrounded by students and mentors and teachers who have your back and will help you succeed, the knowledge that so many before you have found success here by trusting the process and bringing their whole selves into the struggle…maybe that knowledge will empower you to pick your moment, stare down the train and get yourself where you were trying to go.

However… what if the train represents a path to somewhere awesome, a path you can miss out on traveling if you hesitate for too long? If that’s the case, maybe the arms and bells and lights are the ego’s defenses against personal change, and maybe Runners 1 and 2 weren’t afraid to duck under them because they knew the ego is a vicious liar when it doesn’t want change, and in that context the warnings weren’t warnings at all, they were just excuses.

But that’s not right either. Coding (and, I’m slowly learning, life itself) isn’t about finding the right solutions, it’s about the best solutions available considering the specific situation and the tradeoffs involved. There’s no black and white, just pros and cons and a choice to be made.

And if that’s true, the train is both danger and opportunity. It’s not your death or your salvation, it’s a risk. It might crush you, or it might open its doors and let you change your scenery. But the tricky part is that when the bells start to go off and the lights start to flash, you will need to decide for yourself what the warning means, and you’ll need to act on that decision quickly.

It’s convenient that I ride toward the Loop way more often than I ride toward Kimball, because it gives the analogy another layer. When I hear the bells and see a train barreling westbound toward the tracks, I know ducking the arm would be a stupid risk, not because I’m more likely to get crushed by a westbound train, but because west is not even where I need to go. Hopefully, long before you started DBC, you got at least a kick out of writing code that works; if not, this might not be the right risk for you in the first place.

But that’s hindsight at this point. You’re here now, and you’re uncomfortably new at this, and the work is really hard, and your defensive brain is warning you that you might be in danger. And yet the train that’s endangering you, these challenges, this process, the uncertainty of what comes after, the uncertainty about yourself, is the very reason you left the house in the first place. At this point, you can hold yourself back or push yourself toward the risk.

I don’t know your tradeoffs, so I can’t speak for you. And it’s a scary choice no matter what side you land on. Scary like running through a railroad crossing is scary, because in both cases you’ve grown up being told to never ever chance it: “A career change? At YOUR age? But you’ve got such a good thing going…”

Still, I’ll bet money that while running through a railroad crossing is scary no matter what, one of those runners was more afraid of getting crushed, and two of those runners were more afraid of missing the train.

I graduated Dev Bootcamp in September, and got asked to come back on contract as a junior instructor, and that job became full-time official last month, and that meant I finally got to reunite my family in Chicago, so we’re together again and my career trajectory has changed in a huge way and 2014 was the most amazing year of my adult life.

For me, putting my head down and going for it was the right move.

No, I Don’t Play Football – Some (Revisited) Thoughts on Stereotype Threat

Author’s note: I wrote this post in June for my Phase 0 blog. The current horror in Ferguson, MO made me think of it again. On dozens of social media feeds, witnesses reported seeing militarized police taunting peaceful protesters, attempting to goad them into violence, as if they were just waiting for an excuse. I see this as an example of stereotype threat in action; the officers came to the scene expecting the predominantly black crowd to act up, and did everything they could to make the crowd believe acting up was what they were supposed to do. It can be dangerous for marginalized groups when other people get the wrong idea about them. But it can devastating when they get the wrong idea about themselves.

It was like being typecast in real life. My fourth grade teacher sat down across from my parents and told them I was not doing well in math because I “just didn’t get” long division. On the surface, that’s kind of how it looked. I’d stare off into space instead of doing the problems when study time rolled around, I rarely turned in my work, and when I did, the paper showed only the answer, with no corresponding calculations. I might be cheating or using a calculator on those, the teacher said. But there was no way someone with my aptitude could be solving those problems in my head. Someone like me wasn’t smart enough.

Except I was. I had been doing the problems in my head, because writing out all my work felt tedious. And eventually I stopped doing the work, because it stopped challenging me. I was a smart, headstrong kid. Other smart, headstrong kids my age were in special gifted/talented courses where instructors harnessed all their mental energy in a positive way. I didn’t get that kind of structure; when I acted out due to extreme boredom, I was sent to the library for hours at a time, devouring books of my own choosing instead of sitting through lessons. Why wasn’t I considered smart enough for the gifted courses? Why was my disinterest in lessons seen as a sign of low potential? Could it be because I was one of only three black kids in my elementary school?

I started high school in a different district, but the attitudes I faced were similar. I lost count of the times I turned down a JV football coach’s sales pitch. I had been a choir kid my whole life, and I wasn’t about to add athletics to my full load of extracurriculars. In fact, I was and am one of the least sporty people I know. But that didn’t stop me from being scouted like an untapped vein of raw talent. In what I can only hope is totally unrelated news, black students were disproportionately well-represented on the football team, even though they made up a small minority of the student body.

I faced the threat of two stereotypes growing up. First, I could have been the dumb, belligerent black kid, and later, I could have been the strong black kid (who doesn’t need to worry about mental stuff because he’s strong.) Obviously, living with either option nets the same result – lowered academic expectations and a general “other”ness that follows you for life once you accept it. But that’s the weakness of a stereotype: it’s meaningless unless it’s accepted.

People in tech do a lot of talking about stereotype threat, but sometimes they get their definitions confused.Throughout my childhood, the danger of stereotype threat was not that other people could have gotten the wrong idea about me. It was that I could have gotten the wrong idea about myself.

In another world, I could have let it sink in that I was probably bad at math, that I wouldn’t belong in a group of smart kids, that I should probably stick to other subjects, that my future would be brighter if I embraced my number-clumsy nature. I could have let myself believe that football was my calling, that I wouldn’t belong with the music nerds and drama heads, that I should probably stick to the weight room and stop pretending I could make any other meaningful contributions to my school’s culture.

But I don’t need to go to that other world to see stereotype threat at work. I’m trying to break into a field with a known diversity problem, one that’s been attributed to self-selection. The argument goes that tech is overwhelmingly male and White or Asian because that’s the makeup of the applicant supply. So why aren’t there more female, Black or Latino people seeking careers in tech? Maybe it’s due to thousands of small social cues that those groups “just don’t get” tech and might be more comfortable somewhere else. Again, the problem is not that these prejudices exist. The threat is that the target will believe the stereotype to be true about themselves. And then the hiring numbers fulfill the recursive prophecy, and we repeat the cycle to the detriment of an industry that could desperately use some fresh perspectives.

So how do we fight back against stereotype threat? Two ideas spring to mind, and we’ve been talking about them at DBC for weeks now. With a habit of mindfulness, people can better monitor their thought processes and more quickly identify distorted self-concepts arising from societal stereotypes. And a well-cultivated growth mindset can build self confidence and counteract thoughts of permanently not belonging or being inferior. If growth is always possible, stereotypes will never tell my whole story, even if some of them start out being true. (And who’s to say I would have had to choose between football and music? Am I not strong enough to tackle both, terrible pun intended?) Like many issues around diversity, the root problems here are systemic, but many of the most easily implemented solutions take place on the individual level.

The kid who “didn’t get” long division ended up getting top-percentile math scores in high school. But that might not have happened, if I’d let myself believe that ignorant teacher. If she’s reading this, by the way, she might stop to consider how uninformed judgements about potential can haunt a child for life, and pray for forgiveness. 

What are we teaching people to believe about themselves? How are we priming the pump that sends talent down this pipeline I keep hearing so much about? How many great programmers are out there, unaware of their potential because they’re believing lies someone else told them about themselves?

And who are you, really? What are your strengths? Your limitations? Your passions? Are they there because they exist, or because you believe they do? Because someone told you that’s who you are?

I don’t care if you think you’re a crappy cook or bad at math or genetically predisposed to violence and opposition. Unless you’ve gone out and proven it to yourself, personally, over time, you might be living under the weight of a self-directed stereotype. And that’s tragic, because it means you’ve been more than you think you are this whole time, and you’ve been missing out.

Call it a sunk cost. It’s never too late to take the next step, to do the next right thing. The next time you notice yourself putting you or someone you know into some box, some category, remember that you have a choice. Pattern recognition is an excellent animal defense mechanism and a terrible way to be a mindful human being. Take a breath, take another look, and really try to see the person behind the category, especially if the person is you. 

The worst thing that could happen is you hate how deeply a world built on snap judgements has shaped your thought process up until now.

The best thing that could happen is you love yourself for who you really are.

The Dev Bootcamp Rap Recap Repository

Here are all the Dev Bootcamp Rap Recaps I’ve uploaded to date. Thanks in advance for listening and pulling your friends over to your screen of choice so they can listen too.

Look for a new one each weekend here or at my homepage.

WEEK 1 (Full post with lyrics here.)

 

WEEK 2 (Full post with lyrics here.)

 

WEEK 3 (Full post with lyrics here)

 

WEEK 4 (Full post with lyrics here)

 

WEEK 5 (Full post with lyrics here)

 

WEEK 6 (Full post with lyrics here)

 

WEEK 7 (Full post with lyrics here)

How to Fail at Dev Bootcamp (and How to Succeed)

When you do nothing but code at top speed for four days straight, you learn a lot about yourself very quickly. Even though I’m still in my first week, I’ve already been through enough ups and downs to offer some advice to anyone willing to listen. Including my stubborn self. This whole post could probably be summed up as “don’t be stubborn,” but I haven’t written it yet, so I don’t know. Let’s find out together.

How to fail: Panic on your own. Picture a circle inside of a circle inside of a circle. You now understand nested loops. Kidding! The inner circle is your comfort zone, where you feel good and everything is safe and you never grow. The outer circle is your panic zone, where you feel terrified and nothing is safe and you never grow because you keep running back to the comfort circle. In the middle is a whole lot of discomfort, and you’ll be living on the outer edge of that at Dev Bootcamp. The easiest way to slide out of the sweet spot and into panic is to isolate yourself from your many supports here. Stubbornness says “I got myself into this mess, I can get myself out of it…” and then it’s been three hours since you’ve looked away from the screen and you’ve written zero new lines of workable code and you start to wonder about the percentage of boots that get sent home and whether you’re one of them. You don’t want that.
How to succeed: Struggle with a friend. You’ll have counselors, speakers, instructors, mentors, and fellow boots to lean on. Get ready to lean a whole lot. There are signup boards for one-on-one instruction. There are sticky notes you can put on your monitor whenever you have a question. And there are your cohort-mates, who are in the same boat as you and equally invested in paddling forward. There is no shame in pairing up on a difficult challenge, and I’ll say it again because there is no shame in pairing up on a difficult challenge. Thursdays tend to be solo days here, but that’s just a suggestion, and it’s a terrible excuse to cheat yourself out of hours of progress because you were too proud to look around for a buddy to code with. When you have a friend by your side, it’s very hard for both of you to panic at the same time. At least one of you will be pulling the average back toward discomfort, and you want discomfort a whole lot.

How to fail: Explore every rabbit hole. Let’s break down a typical day. You get in at 8 in the morning. You code for an hour. You sit in lecture for an hour. You code for an hour and a half. You eat lunch. You code for an hour. You attend an afternoon lecture or activity. You code for two hours. Now it’s 5:00. You can either try to squeeze in a few more hours or call it a day and start fresh. If you head home at 5, that’s less than six hours of coding, and I’ve faced an average of seven challenges each day here so far. Do the math. If you decide to get cute or fancy or clever or insatiably curious and run off chasing an edge case (“Yeah, but what about if the user has a Chinese keyboard?”) or a strange solution (“I’ll do the whole thing with nothing but bracket operators!”), you will run out of time. I know this because I do this and I keep running out of time. I’m not the only one, but there are a lot of people who manage to get through every core challenge by the official end of the day, and they do things differently.
How to succeed: hop like a bunny. The people who finish by 5 block out their days in small chunks and set deliberate intentions for each slice of time. If they only have an hour to get a challenge done, that’s a great motivator to ask for help the instant they hit a snag in their process. These code bunnies are always hopping, from challenge to challenge, from Sublime to Google, from their desk to the kitchen for coffee, from their own work to a struggling friend for a quick head-clearing help break. The point is not necessarily to understand everything 100% before moving on; sometimes you just have to grit your teeth, accept that the last 25% will take 3 hours that you don’t have, get the challenge done the best way you know how and come back to ask about it later on.

How to fail: Blaze your own trail. There is a lot of honor in finding a brand new way to do everything there is to do at Dev Bootcamp. There is also a lot of regret and heartache and heartburn and loneliness. But forget about that gloomy stuff. You paid a lot of money for this particular wheel, and no one can tell you not to reinvent it. Who cares if people think you’re stubborn? They don’t know what’s best for you. You do. You’re going to do things your own way even if it kills you. Well, here’s a spoiler alert. It will kill you.
How to succeed: Read the map. Dev Bootcamp works because it keeps getting better. The mentors keep hearing and answering new questions, the curriculum keeps getting tweaked for clarity and concision, the boots’ cumulative knowledge keeps growing as cohorts keep passing the sum of the previous knowledge on to the next cohort, and now you understand recursion. Kidding! But seriously, they know what they’re doing around here. And unless you’re running the Coca-Cola of coding bootcamps in your country of origin, they know it better than you. Trust the process, do what they say in the order they say to do it, and listen really close when some senior boot suggests that you ask for help if you’re stuck for more than 10 minutes.

How to fail: Be a machine. This is it. Your big chance. All these weeks to do exactly the thing you love to do and nothing else. No one to distract you from your passion. Naturally, you’ll want to code all day and all night. You can handle it. You’re wired for this stuff. There’s plenty of coffee in the kitchen. Neo could study for 12 hours straight, and you’re the hero of your own movie, so you can probably rock 13 no sweat. Which is fine until diminishing returns start to kick in. Your head hurts from thinking hard all day, but stubbornness tells you to keep going instead of taking a nap. Now you’re making stupid syntax mistakes and drifting off every few minutes. Your code starts to suck. But machines power through. Machines soldier on. So you keep on going, even though there’s a way to do the same work in way less time by simply stepping back and rethinking your approach, and now you understand the difference between linear and binary searches. Kidding! But you don’t understand kidding, because you are the warrior robot, and warrior robots have no use for humor.
How to succeed: Maintain your machine. Not your computer. Your body. Even warrior robots need oil. You’ll want to compromise sleep. Don’t. You’ll want to skip meals. Don’t. Your brain needs sleep and food, and your code needs your brain, and your success needs your code, and now you understand how the Ruby require method. Kidding? I’m not sure. See, I’ve been fading fast all day and it’s because I’ve been skipping meals and naps. As much as you may wish you could just be a disembodied mind that only has to engage with code and ideas, you have a body too. Respect it enough to take decent care of it while you’re here.

How to fail: Beat yourself up. Ok, so today kind of sucked and you’re stressing about it. Maybe now is a good time to dissect each moment of your workflow and examine all the ways it’s bad. That will fix things. At least it should, but for some reason you can’t move past the recognition of your negatives and into the implementation of your solutions. You were on the verge of panicking earlier because you made some mistakes, so now it’s time to retreat to the comfort of self-pity. Make no mistake, wallowing in despair is definitely more comfortable than pushing past it into action. But how can you act when all you can think about is how incompetent you are?
How to succeed: Lift others up. The best way to stop thinking bad thoughts about yourself is to think good thoughts about someone else. When you’re floundering in the deep waters of a tricky problem, the counterintuitive solution is usually a good one: stop working on it for a while and go help someone else with their problem instead. If you can offer good help, it will make you feel all warm and fuzzy inside. Plus, you’ll build up a sense of mastery that will renew your confidence when you return to the challenge you were working on before. Sometimes the best way to lean on someone else is to let them lean on you. Put yourself in the position to remind yourself that you’re not alone in this, that everyone else is terrified just like you, that most people feel like impostors at some point in the curriculum.

For me, that point happened this afternoon, and I realized I needed to break after the Thursday evening DBCx talk (XSS vulnerabilities, fascinating and relevant stuff from Phil Corliss) for Vietnamese takeout and some serious decompression time at home. Technically, I’ll start tomorrow behind half a day of challenges; last night, my instinct would have been to lose sleep, neglect meals, and power through them alone in my room, all the while taking detours down esoteric paths that had nothing to do with the craft at hand. Today, I followed that instinct and it made me doubt my potential for the first time since I started Phase 1. It’s an awful feeling. I don’t recommend it.

Don’t be stubborn. Take this advice and succeed when you get here. If all goes well, maybe one day I’ll be standing over your shoulder, keeping you honest and focused and not letting you get away with not asking questions.

On that day, feel free to lean on me.

Poem: Unready

The worrying is back and bold and vicious, all talons and heavy wet fur and dark scales that reflect back the way I looked when I first said yes to this.

It’s happening again and I am part of it because I built it, dreamed it up from need or something like it, and it is just like the last time and the time before that.

Before I got here I wrapped the cord around my neck and turned my back on birth. They say they had to drag me stubborn into the work of breathing, had to twist and pull and wrench my head towards the world in front of me. I was not ready to live.

At five my brain was full of letters, wet and heavy with information, and still they held me back. I was not ready to socialize with second graders. I began to repeat myself, throwing out answers and jokes and punches, all of them perfect in their placement and terrible in their timing. I stared down the principal and dared him to punish me harder. I was unbreakable.

Eleven and counting and I cannot advance, the choir director says it’s immaturity but I’m positive it’s because he’s a butt head, so I must sit and watch the best singers travel to the best places and work through the best vocal warmups, and wonder whether I would ever be ready for anything I really wanted when the time came to take it.

I was not ready for college. I was not ready for the workplace. I was not ready for children. So when this begins to happen again and I can feel it breathing hot and loud and impatient like subway wind, I brace for impact and plan my retreat.

But time is an arrow, and none of my steps are backwards, and when I walked past seeing my path I claimed my life and I found my friends and I sang my song, all in time, and all of time will fade and leave me standing

At the edge of the next thing to happen, I turn back to find the reasons not to turn back around. And Love pulls and twists and wrenches my head back again, toward the world in front of me, and I hold my breath and take one more step.