Slide 1

Slide 1 text

5 THINGS I WISH I S O M E O N E H A D TOLD ME ABOUT PROGRAMMING 1 Tuesday, April 22, 14

Slide 2

Slide 2 text

5 THINGS I WISH I S O M E O N E H A D TOLD ME ABOUT PROGRAMMING 2 Tuesday, April 22, 14

Slide 3

Slide 3 text

NIRD.US 3 Tuesday, April 22, 14

Slide 4

Slide 4 text

ADA DEVELOPERS ACADEMY 4 Tuesday, April 22, 14

Slide 5

Slide 5 text

TALLYING RESPONSES 5 Tuesday, April 22, 14

Slide 6

Slide 6 text

№1 IT’S SUPPOSED TO BE HARD 6 Tuesday, April 22, 14

Slide 7

Slide 7 text

TYPICAL LEARNING CURVE 7 Tuesday, April 22, 14

Slide 8

Slide 8 text

THE LEARNING CURVE IS A CLIFF 8 Tuesday, April 22, 14

Slide 9

Slide 9 text

“ SOMETIMES IT WILL BE FRUSTRATING. IT'S OK TO BE FRUSTRATED. USE THAT AS TOOL TO GUIDE HOW YOU WRITE SOFTWARE OR DOCUMENTATION AND LEARN WHAT KINDS OF PROGRAMMING AND WRITING YOU DON'T LIKE.” -- PETE HIGGINS (@PETE_HIGGINS) 9 Tuesday, April 22, 14

Slide 10

Slide 10 text

“IT'S EASY TO GET THE WRONG IDEA AND THINK THAT BECAUSE YOU'RE SPENDING MOST OF YOUR TIME ON THINGS THAT ARE HARD FOR YOU, YOU'RE NOT DOING A GOOD JOB. YOU HAVE TO SPEND MOST OF YOUR TIME ON THINGS THAT ARE HARD FOR YOU IN ORDER TO DO A GOOD JOB.” -- ANDREW GORCESTER (@MARGINOFERROR) 10 Tuesday, April 22, 14

Slide 11

Slide 11 text

“DON'T BE AFRAID OF TOPICS THAT SOUND DIFFICULT. SOME CONCEPTS IN CS ARE INHERENTLY HARD TO THINK ABOUT, BUT NOT AS MANY AS YOU MIGHT THINK.” -- SAM LIVINGSTON-GREY (@GEEKSAM) 11 Tuesday, April 22, 14

Slide 12

Slide 12 text

1 - IT'S SUPPOSED TO BE HARD ERROR DRIVEN DEVELOPMENT 12 Tuesday, April 22, 14

Slide 13

Slide 13 text

“YOU’RE THE WORST!” 13 Tuesday, April 22, 14

Slide 14

Slide 14 text

“YOU'LL BE TOLD YOU'RE WRONG REPEATEDLY, BY THE COMPILER, BY YOUR FAILING TESTS, BY BUG REPORTS, AND THAT'S TOTALLY NORMAL AND OKAY.” -- MARY ANN MIERAU (@MABMIERAU) 14 Tuesday, April 22, 14

Slide 15

Slide 15 text

15 Tuesday, April 22, 14

Slide 16

Slide 16 text

1 - IT’S SUPPOSED TO BE HARD HAVE FAITH 16 Tuesday, April 22, 14

Slide 17

Slide 17 text

1 - IT’S SUPPOSED TO BE HARD HAVE COURAGE 17 Tuesday, April 22, 14

Slide 18

Slide 18 text

№2 YOU DO YOU 18 Tuesday, April 22, 14

Slide 19

Slide 19 text

DEFAULT ASSUMPTIONS ABOUT RUBYISTS • "We all use vim" • “We all do TDD" • "We all enjoy whisky" • "We all hate PHP" 19 Tuesday, April 22, 14

Slide 20

Slide 20 text

AVOID PEER PRESSURE 20 Tuesday, April 22, 14

Slide 21

Slide 21 text

2 - YOU DO YOU BE NICE TO YOURSELF 21 Tuesday, April 22, 14

Slide 22

Slide 22 text

"ALWAYS WANTED TO GO BACK IN TIME TO TRY FIGHTING A YOUNGER VERSION OF YOURSELF? PROGRAMMING IS THE CAREER FOR YOU!" -- ELLIOT LOH (@LOH) 22 Tuesday, April 22, 14

Slide 23

Slide 23 text

“TAKE CARE OF YOUR HEALTH, BOTH PHYSICAL AND MENTAL. GIVE YOURSELF A BREAK FROM TIME TO TIME, AND BE MINDFUL OF YOUR MENTAL STATE.” -- ELIZABETH NARAMORE (@ELIZABETHN) 23 Tuesday, April 22, 14

Slide 24

Slide 24 text

№3 THERE'S NO MAGIC 24 Tuesday, April 22, 14

Slide 25

Slide 25 text

“IT’S ALL JUST CODE” -- ME, ALL THE TIME 25 Tuesday, April 22, 14

Slide 26

Slide 26 text

“YOU DON'T HAVE TO LEARN IT ALL AT ONCE.” -- @JC_SOCAL 26 Tuesday, April 22, 14

Slide 27

Slide 27 text

27 Tuesday, April 22, 14

Slide 28

Slide 28 text

“YOU ARE MUCH MORE COMPETENT THAN YOU THINK YOU ARE. IF YOU WERE HIRED FOR THE JOB, YOU CAN DO IT! DON'T DOUBT YOURSELF.” -- Cordelia Dillon (@cordeliadillon) 28 Tuesday, April 22, 14

Slide 29

Slide 29 text

“BEING GOOD AT PROGRAMMING DOESN'T LOOK LIKE BEING GOOD AT OTHER THINGS.” -- AN ANONYMOUS ADA STUDENT 29 Tuesday, April 22, 14

Slide 30

Slide 30 text

№4 HONE YOUR CRAFT 30 Tuesday, April 22, 14

Slide 31

Slide 31 text

“EDUCATION IS A PROCESS, NOT A DESTINATION.” -- KEVIN STEVENS (@KEVDOG) 31 Tuesday, April 22, 14

Slide 32

Slide 32 text

“ALWAYS KEEP PUSHING YOURSELF AND LEARNING MORE. THE INDUSTRY MOVES FAST AND PART OF EVERY DAY SHOULD BE LEARNING SOMETHING NEW.” -- GREG TARNOFF (@GREGTARNOFF) 32 Tuesday, April 22, 14

Slide 33

Slide 33 text

“BEING A PROFESSIONAL PROGRAMMER IS BEING A PROFESSIONAL LEARNER, BECAUSE THE CORE SKILLS REQUIRED FOR THE JOB ARE VAST, VAGUELY DEFINED, AND LITERALLY EVERY FEW YEARS.” -- ANDREW GORCESTER (@MARGINOFERROR) 33 Tuesday, April 22, 14

Slide 34

Slide 34 text

“YOU CAN'T STOP PUTTING IN THE TIME LEARNING NEW THINGS. YOU CAN'T REACH A CERTAIN POINT AND SAY TO YOURSELF ‘THAT'S IT, I'VE MADE IT, AND NOW RELAX’.” -- CHRIS ANN O’DELL (@CHRISANNODELL) 34 Tuesday, April 22, 14

Slide 35

Slide 35 text

ALWAYS BE LEARNING • MONKEY PATCH ALL THE THINGS! • Make everything a gem • TDD the living snot out of the next bug you fix • Use an IDE you don’t normally use for a month • Don’t use the letter ‘G’ • Make all actions happen through observers 35 Tuesday, April 22, 14

Slide 36

Slide 36 text

“THE USER WILL BE ABLE TO CONVERT A TEMPERATURE IN CELSIUS TO FAHRENHEIT, AND VICE VERSA.” 36 Tuesday, April 22, 14

Slide 37

Slide 37 text

TEMPERATURE _CONVERTER.RB • Make it a gem • Release it on Github • Make it a website • Make it a mix-in on Numeric • Make it an API • Find other temperature scales you could convert to and from • Have it attempt to resolve the user’s location and give automated temperature conversions • Have it query wikipedia to offer information about the resulting temperature • Have it record the average, median, and min/max the user has calculated 37 Tuesday, April 22, 14

Slide 38

Slide 38 text

№5 FIND YOUR COMMUNITY “Find your people, and take part in the community.” -- Elizabeth Naramore (@ElizabethN) 38 Tuesday, April 22, 14

Slide 39

Slide 39 text

“EVERYBODY THINKS DEVELOPMENT IS HARD SOMETIMES. GOOGLE ANY PROBLEM YOU'RE HAVING AND YOU'LL FIND HUNDREDS OF PEOPLE WHO SWEAT, STRUGGLED, SOBBED AND SWORE OVER THE SAME THING!” -- JAIME LYN SCHATZ (@EDUPUNKN00B) 39 Tuesday, April 22, 14

Slide 40

Slide 40 text

“MUCH OF YOUR DAILY ROUTINE IN PROGRAMMING IS ABOUT COMMUNICATION. TO EXCEL IN THE CRAFT ONE MUST COMMUNICATE AS WELL (OR BETTER) WITH HUMAN BEINGS AS WITH CODE.” -- ZANDER HILL (@_ZPH) 40 Tuesday, April 22, 14

Slide 41

Slide 41 text

“IT'S ESSENTIAL TO FIND THAT DEV ON YOUR TEAM WHO IS WILLING TO TAKE THE TIME TO TEACH YOU THE ROPES.“ -- MITCHELL LEE (@THEEVILDEV) 41 Tuesday, April 22, 14

Slide 42

Slide 42 text

SHARE THE LEARNING • Teach a class • Volunteer at RailsBridge or GDI • Study Group • Book Club • Write a blog post • Give a lightning talk 42 Tuesday, April 22, 14

Slide 43

Slide 43 text

“THE BEST THING I DID FOR MY PROGRAMMING CAREER WAS FOCUSING ON LEARNING BOUNDARIES AND COMMUNICATION SKILLS.” -- SONIA CONNOLLY (@SONIA_PDX) 43 Tuesday, April 22, 14

Slide 44

Slide 44 text

№6 GET STARTED 44 Tuesday, April 22, 14

Slide 45

Slide 45 text

“SOFTWARE IS NEVER ‘DONE’” -- @CAROL NICHOLS (@CAROLS10CENTS) 45 Tuesday, April 22, 14

Slide 46

Slide 46 text

CULT OF DONE MANIFESTO • Accept that everything is a draft. It helps to get it done. • Pretending you know what you're doing is almost the same as knowing what you are doing • Laugh at perfection. It's boring and keeps you from being done. • Failure counts as done. So do mistakes. 46 Tuesday, April 22, 14

Slide 47

Slide 47 text

5 THINGS I WISH I KNEW... • It’s Supposed To Be Hard 47 Tuesday, April 22, 14

Slide 48

Slide 48 text

5 THINGS I WISH I KNEW... • It’s Supposed To Be Hard • You Do You 48 Tuesday, April 22, 14

Slide 49

Slide 49 text

5 THINGS I WISH I KNEW... • It’s Supposed To Be Hard • You Do You • There’s No Magic 49 Tuesday, April 22, 14

Slide 50

Slide 50 text

5 THINGS I WISH I KNEW... • It’s Supposed To Be Hard • You Do You • There’s No Magic • Hone Your Craft 50 Tuesday, April 22, 14

Slide 51

Slide 51 text

5 THINGS I WISH I KNEW... • It’s Supposed To Be Hard • You Do You • There’s No Magic • Hone Your Craft • Find Your Community 51 Tuesday, April 22, 14

Slide 52

Slide 52 text

5 THINGS I WISH I KNEW... GET STARTED 52 Tuesday, April 22, 14

Slide 53

Slide 53 text

“YOU'LL ALWAYS BE MAKING IT UP AS YOU GO ALONG AND THAT'S THE MOST ENJOYABLE PART ABOUT PROGRAMMING.” -- ERIC HODEL (@DRBRAIN) 53 Tuesday, April 22, 14

Slide 54

Slide 54 text

THANK YOU • @srbaker • @marginoferror • @gelicia • @moishel • @ssoroka • @pete_higgins • @_zph • @sonia_pdx • @edupunkn00b • @eassumption • @TheEvilDev • @carols10cents • @shadowspar • @pfctdayelise • @gregtarnoff • @ChrisAnnODell • @drbrain • @geeksam • @muness • @anthonyarnold_ • @CodeFancier • @c9952594 • @mrezaurrahman • @dead_lugosi • @spargonaut • @iosengineer • @ariellauthentic • @kevdog • @_redwire • @dawnmoyer3 • @pestophagous • @phad • @infixum • @mwop • @ElizabethN • @mark_menard • @lornajane • @JC_SoCal • @sammikes • @mabmierau • @needshortername • @scrumdilligent • @cordeliadillon • @ln1draw 54 Tuesday, April 22, 14

Slide 55

Slide 55 text

KERRI MILLER (@KERRIZOR) • glass artist • Vespa mechanic • lighting designer • author & teacher • player of games • software developer 55 Tuesday, April 22, 14