Slide 1

Slide 1 text

Swift Emerging Best Practices in Ash Furrow

Slide 2

Slide 2 text

Crave Beginners Rules

Slide 3

Slide 3 text

How do we find new ones? Best practices

Slide 4

Slide 4 text

Agenda 1. Learning is necessary, but not sufficient 2. Like coding, learning is a skill that can be refined 3. Being awesome is actually pretty banal

Slide 5

Slide 5 text

Necessary Insufficient but

Slide 6

Slide 6 text

Job Description • Learning is a part of your job description • If it’s not, you’re being cheated

Slide 7

Slide 7 text

Whole We are all part of a

Slide 8

Slide 8 text

What good are nifty coding tricks if you can't show them off to anyone?” –Jeff Atwood “

Slide 9

Slide 9 text

New best practices New Ideas

Slide 10

Slide 10 text

Every act of creation is first an act of destruction.” –Pablo Picasso “

Slide 11

Slide 11 text

Improving Ideas • There are very rarely new ideas • Invention is not enough • We should look for ideas that are new to us

Slide 12

Slide 12 text

Improving Ideas • Embrace the new • But never throw away what you know • You can have preferences! • And your preferences can change!

Slide 13

Slide 13 text

Learning can be learned

Slide 14

Slide 14 text

Skillful Learning • Learning is a skill, like any other • It can be learned, practiced, refined

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

How to Learn • Seek out new ideas • Ideas you disagree with • Try things you think will fail

Slide 17

Slide 17 text

Finding New Ideas • Open source code • Blog posts, books, podcasts, screencasts, conferences, etc • Newsletters make these easier • Follow people on Twitter (people who are not iOS developers)

Slide 18

Slide 18 text

Don’t Dismiss • Never dismiss an idea or a person • People will stop talking to you, ya jerk! • People are allowed to disagree with you

Slide 19

Slide 19 text

Discovering “Best Practices” • You’ll know it when you see it • It is a feeling, an intuition • This happens with experience

Slide 20

Slide 20 text

Discovering “Best Practices” • Ask yourself why this? • Write your answer down • Collect your answers, and form principles • Reflect on them • Everyone’s are different

Slide 21

Slide 21 text

Using Principles • Use principles to evaluate new ideas • Not “is this useful?” but rather “when would this be useful?” • Use principles to get better at evaluating ideas • Refine principles over time

Slide 22

Slide 22 text

The banality of Awesome

Slide 23

Slide 23 text

Use the System Buddy

Slide 24

Slide 24 text

KPIs Write down some

Slide 25

Slide 25 text

• Specific • Measurable • Achievable • Relevant • Time-bound SMART Goals

Slide 26

Slide 26 text

Specific • “Read 10 blog posts.” • “Try one new library.” • “Open source a playground.” • “Give a lunch-and-learn.” • “Read a book.”

Slide 27

Slide 27 text

Measurable • How will you know when you’ve accomplished a goal? • Make a “definition of done”

Slide 28

Slide 28 text

Achievable • Be realistic, but ambitious • Remember, this is a part of your job – take it seriously

Slide 29

Slide 29 text

Relevant • Everything is relevant ¯\_(ツ)_/¯ • Just reflect on what you’ve learned

Slide 30

Slide 30 text

Time-Bound • We need deadlines • Use Google Calendar with reminders • Set up recurring events to meet & discuss progress

Slide 31

Slide 31 text

Wrap Up 1. Learning is a part of our job 2. It’s not easy, and it’s not comfortable 3. So we need to hold ourselves accountable

Slide 32

Slide 32 text

Intuition Experience

Slide 33

Slide 33 text

Wax on