Top Banner
Teaching myself to code Neha Batra @nerdneha April 2015
34

Teaching myself to code: the journey and lessons learned

Jul 16, 2015

Download

Software

Neha Batra
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Teaching myself to code: the journey and lessons learned

Teaching myself to code

Neha Batra @nerdneha

April 2015

Page 2: Teaching myself to code: the journey and lessons learned

We’re from all over, you’re not alone

Energy Consultant

Software Engineer

Floored, Inc.

Textile Designer

Front-end Web

Developer

Photoshelter

Materials Science

Software Engineer

Venmo

Community Organizer

Content Intelligence

Research Engineer

Tumblr

History & Sales

Marketing

Developer

Avaaz

Economics, Teaching

Software Engineer,

Cofounder, Teacher

Telegraph Academy

Physics

Data Engineer

Rent the Runway

Operations Research &

Math

Data Science

Mimi Hearing

Technologies GmbH

Page 3: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

Recurse Center

1st Soft Eng Job

Full-stack Engineer at Floored, Inc.

2 years

3 months

9 months

11 months

Page 4: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

1st Soft Eng Job

Full-stack Engineer at Floored, Inc.

(the professional version that gives you ZER0 context)

(this looks WAYYY TOO EASY)

Recurse Center

3 months

9 months

2 years

11 months

Page 5: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

1st Soft Eng Job1st Soft Eng Job

Full-stack Engineer at Floored, Inc.Intro to Logic + Intro to CS [scheme] (9th grade via IMACS)AP Comp Sci A (11th grade)Intro to Python (MIT, not reqd.)Got Mechanical Eng degree

Recurse Center

3 months

9 months

2 years

11 months

Page 6: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

1st Soft Eng Job1st Soft Eng Job

Recurse Center

6 months:Quit 1st jobApplied to Recurse Center 2x (rejected)Used MOOCs/meetups to learnFirst hello world websiteGot into RC on 3rd try

3 months

9 months

2 years

11 months

Full-stack Engineer at Floored, Inc.

Page 7: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

Recurse Center

1st Soft Eng Job1st Soft Eng Job

3 months

9 months

2 years

11 months

Full-stack Engineer at Floored, Inc.6 months:Quit 1st jobApplied to Recurse Center 2x (rejected)Used MOOCs/meetups to learnFirst hello world websiteGot into RC on 3rd try

Page 8: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Specific Resources:

- Codecademy JavaScript

- Girl Develop It: Android Course (small fee, several in-person classes)

- Udacity - CS101 - Intro to Programming

(quit job)

- Coursera course on Scala

- Udacity - Algorithms

- MongoDB - Intro to MongoDB

- Heroku tutorial on hello world

- Vim tutorial

- Github tutorial

(recurse center)

(this is detailed in a blog post if you want more info: nerdneha.tumblr.com)

Page 9: Teaching myself to code: the journey and lessons learned

How I taught myself how to code

Energy Consulting

1st Soft Eng Job1st Soft Eng Job

Recurse Center

1.5 months:Applied like everywhereEmailed like everyoneBloggedmade a shitty websiteGot an internship!!

3 months

9 months

2 years

Full-stack Engineer at Floored, Inc.

11 months

Page 10: Teaching myself to code: the journey and lessons learned

Lessons Learned

1. Forward progress is key

2. Follow your curiosity

3. It takes initiative

4. It’s not you, it’s hard

5. Open source your journey

Page 11: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

I thought once I took a class or two,

then things would be….

I thought at least putting “hello world”

on a website would be….

It was NOT...

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 12: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

For me, was a lot of this….

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 13: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

● do what keeps you motivated

● stop what makes you unhappy

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 14: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

Specific Resources:

- Codecademy JavaScript

- Girl Develop It: Android Course (small fee, several in-person classes)

- Udacity - CS101 - Intro to Programming

(quit job)

- Coursera course on Scala

- Udacity - Algorithms

- MongoDB - Intro to MongoDB

- Heroku tutorial on hello world

- Vim tutorial

- Github tutorial

(recurse center)

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 15: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

Specific Resources:

- Codecademy JavaScript

- Girl Develop It: Android Course (small fee, several in-person classes)

- Udacity - CS101 - Intro to Programming

(quit job)

- Coursera course on Scala

- Udacity - Algorithms

- MongoDB - Intro to MongoDB

- Heroku tutorial on hello world

- Vim tutorial

- Github tutorial

(recurse center)

not my style

not my style

not my style

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 16: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

Specific Resources:

- Codecademy JavaScript

- Girl Develop It: Android Course (small fee, several in-person classes)

- Udacity - CS101 - Intro to Programming

(quit job)

- Coursera course on Scala

- Udacity - Algorithms

- MongoDB - Intro to MongoDB

- Heroku tutorial on hello world

- Vim tutorial

- Github tutorial

(recurse center)

not my style

not my style

not my style

now we’re talking

(I didn’t finish any of them!)

(You don’t have to!!!)

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 17: Teaching myself to code: the journey and lessons learned

1. Forward progress is key

● do what keeps you motivated

● stop what makes you unhappy

I also:

● kept network of positive friends

● got programmer friends to spend time with me/my code

● met others going through my struggle

● figured out my motivating environment (cafes)

● allowed myself days off

● celebrated everything obnoxiouslyForward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 18: Teaching myself to code: the journey and lessons learned

2. Follow your curiosity

● scratch the itch

● break to explore a new topic

● rabbit holes are okay! always something to learn

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

explore the depth, think of it as an investment for the

future

Page 19: Teaching myself to code: the journey and lessons learned

3. It takes initiative

● temptation: learn first, ask after

● fear: wasting others’ time

● skewed reality: “this is a stupid question”

RESULT: you shoot yourself down before you give

yourself a chance to learn

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 20: Teaching myself to code: the journey and lessons learned

advice:

● let others help you

● pair up (pair programming ftw!!)

● get your code reviewed

● coding schools/programs are great environment

● go to meetups!! many meetups have office hours

3. It takes initiative

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 21: Teaching myself to code: the journey and lessons learned

advice:

● let others help you

● pair up (pair programming ftw!!)

● get your code reviewed

● coding schools/programs are great environment

● go to meetups!! many meetups have office hours

3. It takes initiative

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

see what I did there? let others HELP YOU. nothing

better than being asked a question you know the

answer to. everyone wins!!

Page 22: Teaching myself to code: the journey and lessons learned

my mental strategies:

● allow yourself 6 month “stupid questions allowed” period

● only way to learn is to ask

3. It takes initiative

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

if someone gives you shit, it’s a reflection on them,

not you.

don’t let them make you feel bad for asking! you’re

taking charge. do what you gotta do.

Page 23: Teaching myself to code: the journey and lessons learned

just making first “hello world” -- 2 learning curves??

o python

o vim

4. It’s not you, it’s hard

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 24: Teaching myself to code: the journey and lessons learned

just making first “hello world” -- 5 learning curves?!?!

o python

o vim

o bottle framework

o html

4. It’s not you, it’s hard

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 25: Teaching myself to code: the journey and lessons learned

just making first “hello world” -- so many learning curves!!

o python

o vim

o bottle framework

o html

o github

o heroku

o domain

4. It’s not you, it’s hard

7 LEARNING CURVES?!?!

not to mention algorithms, context

changes, translating brainwaves,

googling for forever...

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 26: Teaching myself to code: the journey and lessons learned

4. It’s not you, it’s hard

● so many learning curves!!

● people forget how hard it was

● reflect to help you realize that you can make that

progress

● read/learn about imposter syndrome

o if you feel like you’re the dumbest one in the room

and don’t belong, you’re not alone!!!

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 27: Teaching myself to code: the journey and lessons learned

4. It’s not you, it’s hard

● so many learning curves!!

● people forget how hard it was

● reflect to help you realize that you can make that

progress

● read/learn about imposter syndrome

o if you feel like you’re the dumbest one in the room

and don’t belong, you’re not alone!!!

my personal phrase to help me through this:

“you’re not stupid, you just don’t know it yet”Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 28: Teaching myself to code: the journey and lessons learned

5. Open source your journey

Make yourself unique. Own your individuality. Have an

opinion

● website

● github

● blog

● twitter

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 29: Teaching myself to code: the journey and lessons learned

5. Open source your journey

Make yourself unique. Own your individuality. Have an

opinion

● website

● github

● blog

● twitter

www.nehalita.com

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 30: Teaching myself to code: the journey and lessons learned

5. Open source your journey

Make yourself unique. Own your individuality. Have an

opinion

● website

● github

● blog

● twitter

nerdneha.tumblr.com

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 31: Teaching myself to code: the journey and lessons learned

5. Open source your journey

Make yourself unique. Own your individuality. Have an

opinion

● website

● github

● blog

● twitter

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 32: Teaching myself to code: the journey and lessons learned

Blog ideas:

● cool things you learned from event

● clarify existing instructions

● show how you did something differently

● explain a concept in your own words

● talk about what is SO COOL

● talk about what frustrates you

● make random lists

o my specialty: compile advice and blog it

● reblog/retweet someone else’s awesome

5. Open source your journey

Forward progress is key | Follow your curiosity | It takes initiative | It’s not you it’s hard | Open source your journey

Page 33: Teaching myself to code: the journey and lessons learned

Lessons Learned

1. Forward progress is key

2. Follow your curiosity

3. It takes initiative

4. It’s not you, it’s hard

5. Open source your journey

Page 34: Teaching myself to code: the journey and lessons learned

Go kick some ass

@nerdneha