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

Eclectics Unite - RubyConf 2022

Sijia Wu
December 06, 2022

Eclectics Unite - RubyConf 2022

In addition to writing Ruby for work, I am also an academic translator, a snowboard instructor, and a drummer in a rock band. I am consistently amazed and inspired by the similarities and connections between software development and my seemingly unrelated experiences. What does translating science articles teach me about effectively using coding resources? How is playing drums in a rehearsal similar to test-driven development? How do I apply snowboard teaching principles to pair programming? In this talk, I will share my own story and explore ways you can leverage your diverse background in your tech career.

Sijia Wu

December 06, 2022
Tweet

Other Decks in Programming

Transcript

  1. “ I don’t write code outside of work. Does that

    make me less good of a developer?
  2. “ I don’t write code outside of work. Does that

    make me less good of a developer?
  3. “ I don’t write code outside of work. Does that

    make me less good of a developer?
  4. “ I don’t write code outside of work. Does that

    make me less good of a developer?
  5. Skills used in both activities: ◉ Becoming an expert of

    a certain topic/concept in a short amount of time
  6. Skills used in both activities: ◉ Becoming an expert of

    a certain topic/concept in a short amount of time source: giphy.com
  7. Skills used in both activities: ◉ Becoming an expert of

    a certain topic/concept in a short amount of time ◉ Systematically gathering, digesting and evaluating information
  8. Skills used in both activities: ◉ Becoming an expert of

    a certain topic/concept in a short amount of time ◉ Systematically gathering, digesting and evaluating information ◉ Quick decision-making based on the newly-acquired information
  9. - Explaining highly technical concepts - Providing immediate feedback Teaching

    snowboarding 🏂 Pair programming 󰳕 Teaching Snowboarding VS Pair Programming
  10. Types of feedback Informative - What did the person do?

    - Describe what you see - Be specific
  11. Types of feedback Informative - What did the person do?

    - Describe what you see - Be specific Evaluative - Judge against certain criteria - Do not suggest how to proceed
  12. Types of feedback Informative - What did the person do?

    - Describe what you see - Be specific Evaluative - Judge against certain criteria - Do not suggest how to proceed Corrective - Point out what’s counterproductive - Suggest ways to improve
  13. - Explaining highly technical concepts - Providing immediate feedback -

    Empathy Teaching snowboarding 🏂 Pair programming 󰳕 Teaching Snowboarding VS Pair Programming
  14. - Explaining highly technical concepts - Providing immediate feedback -

    Empathy Teaching snowboarding 🏂 Pair programming 󰳕 Teaching Snowboarding VS Pair Programming
  15. Feedback cycle #1 What the heck was that? Band rehearsal

    Nice and steady beats Now we’re groovin’!
  16. 36 describe Drummer do context "When playing Reptilia - The

    Strokes" do it "has a steady beat" do expect(drummer.play("Reptilia","bridge")).to eq("boots-and-cats-and-boots-and-cats") end end end
  17. 40 . Finished in 1 second (files took 0.2 seconds

    to load) 1 example, 0 failures
  18. See the similarities? Red Test-driven Development Green Refactor What the

    heck was that? Band rehearsal Nice and steady beats Now we’re groovin’!
  19. “ Am I less good of a developer if I’ve

    spent less time writing code?
  20. Ask these questions instead - ◉ Can I deliver? ◉

    Am I meeting expectations? ◉ Are my clients happy with my service? ◉ Do my coworkers enjoy collaborating with me?