Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sara Packman - The Journey Over the Intermediate Gap

Sara Packman - The Journey Over the Intermediate Gap

Congratulations on finishing your first tutorials or classes in python! In the parlance of the hero’s journey myth, you’ve had your ‘threshold moment”: you’ve started down a path that could lead to a long and fulfilling career. But the road to this glorious future is frustratingly obscured by a lack of guidance in the present. You know enough to realize that you don’t have all the skills you need yet, but it’s hard to know how to learn those skills, or even articulate what they are. There are no easy solutions to this problem. There are, however, a few fundamental things to know and advice to keep in mind. Drawing from my own experience and with input from others, I’ve compiled some helpful hints about the skills, tools, and guiding questions that will get you to mastery.

https://us.pycon.org/2018/schedule/presentation/108/

PyCon 2018

May 11, 2018
Tweet

More Decks by PyCon 2018

Other Decks in Programming

Transcript

  1. Difficult to find materials for your level Consider: Django Girls

    Tutorial: • Install Python • This is your terminal • This is Django • Here’s some models • Here’s how to display the data • Go forth and build things!
  2. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  3. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  4. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  5. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  6. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  7. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  8. Effective Python Functions are first-class objects in Python, meaning you

    can refer to them directly, assign them to variables, pass them as arguments to other functions, compare them in expressions and if statements, etc. -- Effective Python: 59 Specific Ways to Write Better Python, by Brett Slatkin Page 32, Item 15
  9. But you can get past this! How do I know?

    • I held an open space last year • I did it myself!
  10. Who Are Mentors and Allies? People who are working in

    the same area as you (often, but not always with more experience) • Explain different technology disciplines • Help you get started on projects • Answers questions when you’re stuck
  11. How do I find Mentors and Allies? • If you’re

    working, coworkers • Alumni associations • Community groups: PyLadies, Software/Data Carpentry • Domain centered groups, like ‘Programming for Historians’ • Open source projects
  12. Use python’s ecosystem to move forward • The CSV module

    in the standard library takes care of parsing details • Requests takes care of HTTP details • There’s so many more in the standard library • And even more 3rd party packages
  13. Tooling: time-consuming but worth it Some benefits of a well

    configured toolset: • Editor goodies! • Linters • Debuggers and REPLs
  14. Books and MOOCs: Choose wisely Books can be a great

    supplement to learning through practical work • Pick books that match your learning style. • It’s okay to do things that seem too easy. • Go at your own pace, but don’t get bogged down
  15. BUT WHAT DO I LEARN? Some concrete things that are

    always good to know: • Version control • Testing • Command line and shell navigation • Environment management tools like pyenv or conda.
  16. To Summarize: • Step over the threshold • Find &

    rely upon your mentors and allies • Work collaboratively • Make use of libraries • Learn to use your tools • Study up, but choose carefully