Evangelizing Python for...2019/06/03  · Evangelizing Python for Business DATA TECH - May 30, 2019...

23
Evangelizing Python for Business DATA TECH - May 30, 2019 comments/questions? text HELLO to (612)324-8502 Katie: KatieKodes.com Chris: PBPython.com

Transcript of Evangelizing Python for...2019/06/03  · Evangelizing Python for Business DATA TECH - May 30, 2019...

Evangelizing Python for Business

DATA TECH - May 30, 2019

comments/questions?text HELLO to (612)324-8502

Katie:KatieKodes.com

Chris:PBPython.com

Know what you’re trying to accomplish

What inspires you to “preach?”

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

“IT runs on Java 8”-Vicky Boykis

What do YOU want?

• Chris wants to bring Python out of IT and into the business• DOESN’T want to rephrase the documentation• Help people envision the benefits of using Python• Help people see what they will need to learn to get where they want to go

• Katie wants the same, but a bit more hand-holding.• DOES want to rephrase the documentation, to expand its reach

• Chris loves observing what types of problems people solve

• Chris loves watching people “latch on” and have “wow, so efficient!” moments

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

“IT runs on Java 8”

Most business rules are still just that: hardcoded case statements decided by the business, passed down to analysts and done in Excel sheets, half because of bureaucracy and intraction[sic], and sometimes because you just don’t need machine learning

- Vicky Boykis

https://veekaybee.github.io/2019/05/10/java8/

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Pick your battles: peopleHave you shared within your own personal workplace? Why or why not?

💔 Is everyone worth your time & energy? 💔

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Pick the right people

• Chris thinks the best audience is people who already have “substantive expertise” in some business task and are interested in gaining the skills to “automate the boring stuff.”

• Chris has learned that some people would rather collect a paycheck to manually do the “boring stuff” than learn to automate it.

• Neither of us have managed to convert people at our office; both a bit scared off by “lottery factor.”

• There may be a bigger gap between “I can cut and paste VBA” to “I can cut and paste python” than you may think

“Gotchas” when training colleaguesBoss expects me to do

How much work is required outside of normal hours?

Co-worker dynamics

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Colleagues vs. wider community

● Payoff could be higher at work○Personally because you made a difference at a place you spend a lot of time○Professionally because your boss noticed you making a difference

●Tread lightly at work…○Colleagues could be (perhaps even correctly) afraid to be seen struggling by peers or

supervisors○Are there politics/emotions about students you select?○Politics / emotional impacts of who’s told to learn/teach what by hierarchy?

Adjust to your audienceWhat’s surprised you about trying to share what you know?

What have you learned / changed?

What’s changed around you?

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Adjust to your audience

• Chris found the internet surprisingly helpful

• Katie caught off guard by requests for nonexistent take-home documentation

• Katie surprised how advanced “level 2” self-filters to

Imitate better teachersKnowing python != Being a good teacher

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Imitate better teachers

• Neither of us are teachers

• Great sources:• Other blogs• Meetups• YouTube• Other hands-on workshops

•Bring in lab assistants to help out! “You forgot a semicolon”•Might just cost you a burger/pizza•Don’t be ashamed to bring in “better” teachers / python knowledge•“Team of Excellence” not just one person

Know what they’re trying to accomplish

How do you “read your audience?”

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Learn THEIR goals

• Chris: Google Analytics & comments

• Katie: “office hours” & “coding on demand”

Choosing the right problem

Reasons to automate

❏ Save time (easy but not best reason)❏ Get a quick win❏ Learn about the problem❏ Develop improvement mindset❏ “Art of the Possible”❏ Boring task❏ Lots of mistakes and rework

Characteristics of “good problems”

❏ “Large data sets”❏ Well understood problems❏ One step in a long process❏ Text manipulation❏ Does not have to look pretty

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Helping people choose a good first problem

Make sure the person is truly up to the task of owning it once you help them make it.If not, maybe something else to focus on.

Try to avoid “magic show” demos in “coding on demand” / “let me hook you by helping you build your first solution” situations.

If you can’t help yourself & do a “magic show”:● Don’t just do it and leave, like a sorcerer● Bridge the comfort gap: let them know it’s draft 1 & to call you back to iterate if they get stuck

Pick your battles: processWhat’s worked as a way of sharing knowledge?

What’s failed?

What do you want to try?

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Actually teaching (process)

• Chris: watch your “lottery factor;” try to build a training team like Cargill did

• Chris: don’t let the internet get you down (demanding for updates to old code)

• Katie: personally bother alums about new content to try to retain them (Twitter tags, e-mails, etc.) (then don’t let the internet get you down)

• Katie in the classroom:• Take a moment to address confusing things (like df[]’s many meanings) and reassure people• When “teaching a woman to fish,” include some CS 101

• Admit that it’s confusing and in the way of exciting stuff• Admit that people can forget it for now if they remember it exists

• Clarify it’s usually a key part of getting un-stuck• Gamification (riddles with participation/right-answer chocolate & swag) for tough/key concepts

• Katie: balance examples (like Chris’s style) & lessons (like my style); people get excited about the examples.(Even self-learners do love a good magic show now and then.)

Finding the right content

Not a trivial process to find/curate/develop good content

PBPython.com Don’t want to forget a great question? Text HELLO to (612)324-8502 KatieKodes.com

Sharing vs. Creating content

•You’ll do some reinventing the wheel.

•Maybe that’s ok? Human nature?

Takeaways

Know what you’re trying to accomplish

Pick your battles: people

Know what they’re trying to accomplish

Adjust to your audience

Imitate good teachers

Pick your battles: process

Be ready for success -- the reward for good work is more work!

PBPython.com KatieKodes.com

Resources

• Talk Python Podcasts:• Escaping Excel Hell • Beginners and Experts in Software Development Part 1 • Beginners and Experts Panel

• Katie Kodes - Setting Up Python on Windows• Teaching Python podcast