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

Hermione Granger and the Wizard Information System

Hermione Granger and the Wizard Information System

While her first six years at Hogwarts School of Witchcraft and Wizardry are well documented, most know that Hermione Granger did not attend Hogwarts for her scheduled seventh and final year due to unforeseen circumstances involving Voldemort, hunting horcruxes, and saving the world. Many are unaware that Miss Granger returned to Hogwarts after Voldemort’s death to complete her seventh year and take her N.E.W.T. exams. During this time, Miss Granger consulted with Professor McGonagall to arrange several short-term internships and independent studies, including a three-month stint at Maleficus Revelio, the software development consulting firm responsible for the Ministry of Magic's Wizard Information System (WIS). Last year, I conducted a series of interviews with Miss Granger, now with the Department of Magical Law Enforcement, about her experience as a software developer intern; this presentation is the result of those interviews.

Although Hogwarts gave her no direct experience in maintaining a large software system, Hermione discovered that her time as a student, researcher, and activist had excellently prepared her for this role. In particular, her experience at Hogwarts and in fighting the Dark Lord involved collaboration, creative problem solving, research and documentation, and critical thinking skills. Her prior mishap with Polyjuice Potion helped her understand the vital role that testing plays in software development, and her experience with solving logic puzzles while helping recover the Sorcerer’s Stone aided her in outlining her code before she began writing. Her passion for research made her a natural at documenting her code; it was vital to her that others be able to understand her work. Miss Granger is still very active in the magical open-source community; for example, in addition to her many other useful projects, she’s made her translation of “The Tales of Beedle the Bard” available online. This presentation will help audience members relive their own Hogwarts glory days while discovering how those lessons can help them bring more magic into their daily lives as developers.

Given at DjangoCon Europe, March 2016.

2c7f0a1020fbd01942166122190180f8?s=128

Lacey Williams Henschel

March 31, 2016
Tweet

Transcript

  1. Hermione Granger and the Wizard Information System Lacey Williams Henschel

    @laceynwilliams
  2. ✢ FOREWORD ✢

  3. For those select few who possess the predisposition, I can

    teach you how to bewitch the mind and ensnare the senses. “
  4. And finally, I must tell you that this year, the

    fourth talk on the second day is out of bounds to anyone who does not wish to experience a very painful spoiler. “
  5. What does magic have to do with code? What is

    this talk about? “
  6. This talk is about a lot of things.

  7. • v But mostly, it’s about how non-technical experience is

    relevant to your technical job.
  8. • v That can take a lot of forms (just

    like a Patronus!)
  9. Let us step out into the night and pursue that

    flighty temptress, adventure. “
  10. ✢ CHAPTER 1 ✢ HISTORY OF MAGIC

  11. Who is Hermione Granger?

  12. Hermione Jean Granger is a talented witch who’s had several

    prominent positions with the Ministry of Magic. She lives in London with her family.
  13. 1991-1999 Attended Hogwarts Aced O.W.L.s & N.E.W.T.s Defeated Voldemort

  14. Internship at Maleficus Revelio 2000-2001

  15. 2002-2005 Image source

  16. 2006-present Image source

  17. Wizard Information System* Like Jira, GitHub, and StackOverflow all had

    a baby, but for wizards. *not for Muggle eyes
  18. ✢ CHAPTER 2 ✢ THE RESTRICTED SECTION

  19. None
  20. “Five more points from Gryffindor for being an insufferable know-it-all.”

  21. Friends help you battle mountain (and other) trolls.

  22. None
  23. Dumbledore’s Army is just a really cool sprint. Image Source

  24. The journey to retrieve the Sorcerer’s Stone is just really

    cool pair programming.
  25. ✢ CHAPTER 3 ✢ POLYJUICE POTION

  26. None
  27. class PolyjuicePotion(models.Model): ... def clean(self): # Require human hair if

    self.hair.type != ‘human’: raise ValidationError(_(‘Hair must be human.’))
  28. # tests for Firebolt def check_throwing_rider_jinx(self, broom): try: ride(broom) except

    ThrowingJinxError: print “This broom is jinxed!”
  29. def sectumsempra(victim): # No one knows what this does, but

    it’s cool cause we never make mistakes so we’re just going to leave this in here. This concludes our documentation on this issue. ...
  30. ✢ CHAPTER 4 ✢ THE UNUSABLE VOW

  31. The Setup Wizard

  32. Users should get to correct mistakes. They shouldn’t get sent

    to Knockturn Alley when they do something wrong.
  33. Image source

  34. None
  35. ✢ CHAPTER 5 ✢ MUTARI INCANATEM (CHANGING SPELLS)

  36. None
  37. Image source

  38. Gamp’s Law of Elemental Documentation

  39. The Setup Wizard

  40. ✢ CHAPTER 6 ✢ SEEN AND UNFORESEEN

  41. Image Source

  42. I can’t stand another year like that one. That Time-Turner,

    it was driving me mad. I’ve handed it in. Without Muggle Studies and Divination, I’ll be able to have a normal schedule. “
  43. None
  44. The Setup Wizard

  45. ✢ EPILOGUE ✢ I OPEN AT THE CLOSE

  46. The Setup Wizard “Well, actually…”

  47. Resources Harry Potter book series Harry Potter Wikia Pottermore The

    Setup Wizard Thanks Adrienne Lowe, Anna Ossowski, Jerry Chen, Kenneth Love, Marc Tamlyn, DjangoCon Europe Financial Aid