Transcript
Page 1: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

12 Steps to be a Better Developer (aside from the coding part)

Gregg Pollack @GreggPollack

Page 2: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Code is not Enough

Page 3: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

- Steve Jobs“ ”technology alone is not enough

Page 4: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

- Steve Jobs

technology alone is not enoughIt is in Apple’s DNA that

it’s technology married with liberal arts,married with the humanities,that yields the results that make

our heart sing.

Page 5: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 6: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 7: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 8: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 9: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 10: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

- Steve Jobs“ ”technology alone is not enough

Page 11: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

12 principles

Page 12: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

SET EXPECTATIONeven when you’re not asked to1

Page 13: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Estimation is hard,kinda like riding a bike

Page 14: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Why did your last project fail?

Page 15: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Client closer to Team

Page 16: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Client with the Team?

Page 17: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Short Feedback Cycles

Page 18: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Project Management Tools

Page 19: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Be mindful of yourengineering background 2

Page 20: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Listening to Ideas

Page 21: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kills Collaboration

Page 22: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Often diagnosis soundslike criticism

Page 23: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

“In my wide association in life, meeting with many and great people in various parts of the world, I have yet to find the person, however great or exalted his station, who did not do better work and put forth greater effort under a spirit of approval than he

would ever do under a spirit of criticism.”

~Charles Schwab

Page 24: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Beware of giving Diagnosis

Page 25: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

“yes, and”

Page 26: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Give Attention

Page 27: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 28: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

You might be shy

Page 29: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Be mindful of yourengineering background 2

Page 30: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Software Developmentis an art form3

Page 31: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Software Developmentis an art form3

Page 32: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Software Developmentis a craft

3

Page 33: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

"Craft means making useful objects with perhaps decorative touches. Fine art means making things purely for their beauty." Richard Stallman

Page 34: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Beautiful Work

Page 35: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Beautiful Work

Page 36: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Insert Rant Here

Page 37: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

ConsultingIs usually more challenging

Page 38: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Consulting takes another set of skills

Page 39: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Scratching your own itch is easy.

(see all the PM tools)

Page 40: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Want a challenge? Scratch someone else’s itch.

Page 41: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 42: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 43: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Software Developmentis a craft

3

Page 44: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn how to delegateand improve the system4

Page 45: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 46: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 47: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Project Managers

Page 48: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Scheduling Meetings

Writing expectations

Invoicing

Organization

Page 49: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Can you think of things you can delegate

Page 50: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Just because you CANdo something doesn’t

mean you should!!!

Page 51: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Do the math

Page 52: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 53: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

80 people

average 1 cup a day

15 minutes wasted

Page 54: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

80 people

average 1 cup a day

15 minutes wasted

= 1200 minutes = 20 hours

Page 55: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Do the math

Page 56: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

But I’m not running my own business!

Page 57: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 58: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

If someone does a task better than you

Page 59: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

First Independence,Then Interdependence

Page 60: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn how to delegateand improve the system4

Page 61: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Continue to learninside and outside your company5

Page 62: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

INSIDE

Page 63: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Internal Presentations

Page 64: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 65: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 66: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 67: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Screencasts!

Page 68: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Retrospectives

Page 69: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

OUTSIDE

Page 70: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 72: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 73: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 74: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 75: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 76: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Stay out of yourcomfort zone6

Page 77: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Your Task List

Page 78: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

The Difficult Tasks= More Learning

Page 79: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

But naturally we gravitate towards

the easy

Page 80: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Example = Email Trap

Page 81: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Want to learn the most while you work?

Page 82: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Stay out of yourcomfort zone6

Page 83: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Make friendsand build relationships

7

Page 84: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

“Individuals and interactionsover

processes and tools”-Agile Manifesto

Page 85: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

More friendships = happiness

Page 86: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

More friendships = happiness

happiness = better work

Page 87: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

How much time do you spend at work nurturing

friendships?

Page 88: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

One way you can make everyone around you better:

Become a better friend.

Page 89: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

One way you can make the Ruby community better:

Make more friends

Page 90: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

People love talking about themselves

Page 91: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Set a goal for yourself.Try to meet 5 new people.

Page 92: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Make friendsand build relationships

7

Page 93: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

don’t be afraid toASK FOR HELP

8

Page 94: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

2  hourses)mate

Page 95: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

2  hourses)mate

4  hours

Page 96: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

2  hourses)mate

8  hours

Page 97: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

What would have happened if you asked for help?

Page 98: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Is it better to fail after 2 hours, or fail after 8 hours?

Page 99: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s natural

Page 100: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 101: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 102: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 103: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 104: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 105: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 106: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 107: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Kerplakistan

Page 108: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s human nature

Page 109: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Give yourself 30 Mins

Page 110: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

If something is taking too much time, you’re probably doing it wrong

Page 111: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Who do you ask?

Page 112: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Preempt the problem

Page 113: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn to eliminate distractionsand get in the zone

9

Page 114: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It is not natural to be productive 100% of the time

Page 115: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

20% Fun80% Productive

Optimally.....

Page 116: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Turn offcommunication

Page 117: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Asynchronous Communication

Page 118: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Alternative workspaces

Page 119: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 120: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 121: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn to eliminate distractionsand get in the zone

9

Page 122: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

the most COMPLEX solutionis rarely the BEST solution

10

Page 123: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

communicate better thaneveryone else

11

Page 124: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

“Creating quality software is x% code and y% communication where

y is greater then x.”

~Carlos Souza

Page 125: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 126: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

HIRE GREAT WRITERS

Page 127: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

HIRE GREAT WRITERS

Clear writing is a sign of clear thinking.

Page 128: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

How do you communicate more effectively?

Page 129: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Leverage the right PM tool

Page 130: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Force yourself to communicate

Page 131: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Be more effective withSkitch and JingMonosnap

Page 132: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Communicate through imagesand video. Not words.

Page 133: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

communicate better thaneveryone else

11

Page 134: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

understand what willbring you happiness12

Page 135: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

People aren’t usually good at choosing what will make them happy

Page 136: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s not money

Page 137: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s not fame

Page 138: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s not fame

Page 139: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

It’s not ONLY code

Page 140: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

- Steve Jobs“ ”technology alone is not enough

Page 141: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Doing meaningful work

Page 142: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

SET EXPECTATIONeven when you’re not asked to1

Page 143: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Be mindful of yourengineering background 2

Page 144: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Software Developmentis a craft

3

Page 145: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn how to delegateand improve the system4

Page 146: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Continue to learninside and outside your company5

Page 147: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Stay out of yourcomfort zone6

Page 148: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Make friendsand build relationships

7

Page 149: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

don’t be afraid toASK FOR HELP

8

Page 150: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Learn to eliminate distractionsand get in the zone

9

Page 151: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

the most COMPLEX solutionis rarely the BEST solution

10

Page 152: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

communicate better thaneveryone else

11

Page 153: 12 Steps to being a Better Programmer by Code School's Gregg Pollack
Page 154: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

Each of these can createmore meaning in the work

that you do

Page 155: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

understand what willbring you happiness12

Page 156: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

name author URLCanon EFS 17-85mm nickwheeleroz http://www.flickr.com/photos/nickwheeleroz/2663377622

NEGATIVE APPROACH ALL CHROME http://www.flickr.com/photos/allchrome/5049275868

Kup,Kup & Chloé Kup Kup Land http://www.flickr.com/photos/13937854@N00/416735964

Disney - Partners at Dusk Express Monorail http://www.flickr.com/photos/23322134@N02/3108405260

Darkening Clockwork matthelio http://www.flickr.com/photos/matthileo/3552898254

afternoon perfection janhamlet http://www.flickr.com/photos/janhamlet1/4647870872/

friendship bracelets. amanda.venner http://www.flickr.com/photos/amandavenner/4939925977

SAF#2 Robby Ferarri http://www.flickr.com/photos/roberto_ferrari/281640001

Meeting Table mnadi http://www.flickr.com/photos/mnadi/32325828

Money! Tracy O http://www.flickr.com/photos/37108241@N00/61056391

CareerTech Hall of Fame okcareertech http://www.flickr.com/photos/okcareertech/2234107433

Creative Commons

Page 157: 12 Steps to being a Better Programmer by Code School's Gregg Pollack

name author URLdiary Calinago http://www.flickr.com/photos/65691836@N00/221416101

BarCamp Vancouver kk+ http://www.flickr.com/photos/49503002894@N01/230544325

The Grotto Stuck in Customs http://www.flickr.com/photos/95572727@N00/161483435

His Holiness Dagchen Wonderlane http://www.flickr.com/photos/71401718@N00/3242519210

poor walter JKonig http://www.flickr.com/photos/83156837@N00/470817175

Project Opus Launch D’Arcy Norman http://www.flickr.com/photos/51035644987@N01/398070036

Flickr Mints Neal. http://www.flickr.com/photos/31878512@N06/4704140020

Máquina de Rube Goldberg freshwater2006 http://www.flickr.com/photos/freshwater2006/693945631

Communist Unicorn zoomar http://www.flickr.com/photos/zoomar/141098807

Planet Express gabrielsond http://www.flickr.com/photos/41819939@N00/4665230659

Return Undefined nyuhuhuu http://www.flickr.com/photos/nyuhuhuu/4443886636/

Human Reproduction Vinicius Teles http://improveit.com.br

Creative Commons