18
© 2018 Bloomberg Finance L.P. All rights reserved. © 2018 Bloomberg Finance L.P. All rights reserved. Teaching Scala to the Statically Challenged Scala Days New York 2018 June 20, 2018 Rebecca Ely @0hrely

Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

© 2018 Bloomberg Finance L.P. All rights reserved.

Teaching Scala to the Statically ChallengedScala Days New York 2018June 20, 2018

Rebecca Ely@0hrely

Page 2: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 3: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 4: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 5: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 6: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 7: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Filling the gaps

Teaching

Scala

Trailblazers

Page 8: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Why these software engineers?

@l_kang

Page 9: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Why these software engineers?

For you🏆 Rewarding🚼 Learn through beginners’ eyes

For your team🙃 Diverse experiences/perspectives👯 Mold them in your image

For Scala🌠 The next [your favorite Scala dev]😳 “Silly” questions

Page 10: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Communication saves time

🔘 Ask how they like to learn

🙋 Encourage questions

😅 Dialogue not monologue

⭕ Don’t mistake vocab ignorance for conceptual ignorance

Page 11: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Structure and support

👋 Don’t say “Coursera” and disappear for two weeks

💁 Dig up resources

⏳ Set project timelines

🍻 Introduce them to the community

Page 12: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Set the tone

🙊 Never say “just”

📈 Create positive expectations

😇 Model good code

🤷 Don’t mistake inexperience for incompetence

Page 13: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

© 2018 Bloomberg Finance L.P. All rights reserved.

First projects: contain the struggle

Best🌡 Writing tests

Also great🌶 Warm-up exercises🐣 Small projects

Next-best🌔 Partially-complete projects

Not great⏫ Dependency upgrades🐘 Behemoth projects🐛 Bug fixes😕 Concepts new to you

Page 14: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Start simple

SCALA IS A LANGUAGECREATED BY ACADEMICS.

IT’S VERY CLEVER.DON’T TRY TO GET EVERYFUNKY FEATURE NOW.FOCUS ON THE BASICSAND THE FUNKY STUFFWILL COME IN TIME.

- Antal Spector-Zabusky (an academic)

Page 15: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Emphasize

🔰 Types and type signatures

🔰 Tools (one IDE, one build tool, one test lib)

🔰 FP basics

🔰 Vocab: Object / Class / Trait / Method / Type

🔰 Compiler basics

🔰 Options

Page 16: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

Wait for a need

⏸ Implicits

⏸ Currying

⏸ Anonymous functions

⏸ Case Classes

⏸ Recursion

⏸ Compiler intricacies

⏸ FP vocab

(String, Option[Int], Array[(String, List[(String, Double)])])

Page 17: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

© 2018 Bloomberg Finance L.P. All rights reserved.

Learn more

🙀 github.com/ohrely/scala-basics

> bloomberg.com/careers

🍣 Ely

🐦 @0hrely

📬 [email protected]

Page 18: Teaching Scala to the Statically Challenged...© 2018 Bloomberg Finance L.P. All rights reserved. Filling the gaps Teaching Scala Trailblazers

© 2018 Bloomberg Finance L.P. All rights reserved.

How to pair program

👐 Hands off the keyboard

⏸ Pause before bossing

❓ Motivational interviewing

🔬 Give the what with the how

🔁 Expect repetition

💳 Say nice things