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. Eclectics Unite: Leverage Your Diverse Background RubyConf 2022 Sijia Wu

  2. None
  3. I am Sijia Wu (they/them) Hello! Software Developer @ PayPal

  4. I am Sijia Wu (they/them) Hello! Software Developer @ PayPal

    … and many other things!
  5. “ I don’t write code outside of work.

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

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

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

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

    make me less good of a developer?
  10. Similarities & Connections Are those non-technical experiences really as irrelevant

    as they seem?
  11. What does translating articles have to do with coding?

  12. Skills used in both activities: ◉ Becoming an expert of

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

    a certain topic/concept in a short amount of time source: giphy.com
  14. 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
  15. 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
  16. What does teaching snowboarding have to do with coding?

  17. - Explaining highly technical concepts Teaching snowboarding 🏂 Pair programming

    󰳕 Teaching Snowboarding VS Pair Programming
  18. - Explaining highly technical concepts - Providing immediate feedback Teaching

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

    - Describe what you see - Be specific
  20. 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
  21. 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
  22. - Explaining highly technical concepts - Providing immediate feedback -

    Empathy Teaching snowboarding 🏂 Pair programming 󰳕 Teaching Snowboarding VS Pair Programming
  23. source: giphy

  24. source: decathlon.com Centered weight Looking where you’re going Bent knees

    Straight back
  25. source: rootsrated.com

  26. 26 source: gifer

  27. - Explaining highly technical concepts - Providing immediate feedback -

    Empathy Teaching snowboarding 🏂 Pair programming 󰳕 Teaching Snowboarding VS Pair Programming
  28. What does playing drums in a band have to do

    with coding?
  29. Meet - The Way Back!

  30. Feedback cycle #1 Band rehearsal

  31. Feedback cycle #1 Band rehearsal source:giphy

  32. Feedback cycle #1 What the heck was that? Band rehearsal

  33. Feedback cycle #1 What the heck was that? Band rehearsal

    Nice and steady beats
  34. Feedback cycle #1 What the heck was that? Band rehearsal

    Nice and steady beats Now we’re groovin’!
  35. Feedback cycle #2 Test-driven Development

  36. 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
  37. Failure/Error: expect(Drummer.play("Reptilia", "bridge")).to eq("boots-and-cats-and-boots-and-cats") expected: "boots-and-cats-and-boots-and-cats" got: "boots-and-cats-and-boots-and- OOPS" (compared

    using ==)
  38. Feedback cycle #2 Watch it fail Test-driven Development

  39. 39 .

  40. 40 . Finished in 1 second (files took 0.2 seconds

    to load) 1 example, 0 failures
  41. Feedback cycle #2 Watch it fail Test-driven Development Make it

    pass
  42. Feedback cycle #2 Watch it fail Test-driven Development Make it

    pass Improve & clean up
  43. See the similarities? Red Test-driven Development Green Refactor What the

    heck was that? Band rehearsal Nice and steady beats Now we’re groovin’!
  44. None
  45. None
  46. None
  47. 56.8% Had significant experience working in non-technical/non-engineering roles 38.6% Do

    NOT have a background in Computer Science / STEM
  48. Graphic Design Accounting Music Art Sales Ops Linguistics Journalism Farming

  49. Insecurities.

  50. Craft your narrative.

  51. Craft your narrative. Convey confidence.

  52. “ Am I less good of a developer if I’ve

    spent less time writing code?
  53. “ How will I ever measure up?

  54. 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?
  55. Fighting insecurities: an ongoing battle

  56. Find me at - ◉ linkedin.com/in/sijiawu ◉ [email protected] Thanks!