Talks

Summarized using AI

What if Shakespeare Wrote Ruby?

Adam Cuppy • June 16, 2017 • Earth

The video "What if Shakespeare Wrote Ruby?" features Adam Cuppy at RubyNation 2017, where he explores the connections between Shakespeare's artistic style and modern software documentation practices. Cuppy highlights Shakespeare's unique ability to craft intricate works without formal documentation, paralleling it with the challenges developers face in documenting code effectively.

Key Points Discussed:

- Introduction to Adam Cuppy: He runs a consultancy called Coding Zeal, specializing in web and mobile applications, and expresses the importance of effective communication and documentation in software development.

- The Challenge of Documentation: Cuppy engages the audience in a discussion about their experiences with documentation, revealing a common frustration among developers regarding its complexity and time consumption.

- Shakespeare's Writing: Cuppy presents William Shakespeare as a case study, highlighting that he wrote over 800,000 words for the stage with minimal documentation. His works include a mix of comedies, tragedies, and historical plays, often addressing the political climate of his time.

- Performing Shakespeare: Cuppy invites the audience to engage with a performance of a scene from "Romeo and Juliet," emphasizing the expressive nature of performance in contrast to the lack of documented direction.

- Connecting Shakespeare to Programming: He draws parallels between Shakespeare's creativity and modern programming, showing how both require an understanding of patterns and clarity. He suggests that documenting code reflects the artistry found in Shakespeare’s works.

Conclusion: Cuppy wraps up by suggesting that Shakespeare’s legacy can inspire modern software practices. By establishing and creatively disrupting patterns, developers can achieve elegance reminiscent of Shakespeare's storytelling. He encourages engagement and feedback, inviting questions about the connections made throughout his talk.

What if Shakespeare Wrote Ruby?
Adam Cuppy • June 16, 2017 • Earth

What if Shakespeare Wrote Ruby?

Did you know that Shakespeare wrote almost no direction into his plays? No fight direction. No staging. No notes to the songs. Of the 1700 words he created, there was no official dictionary. That’s right the author of some of the greatest literary works in history, which were filled with situational complexity, fight sequences and music, include NO documentation! How did he do it?

In this talk, we’re going “thee and thou.” I’m going to give you a crash course in how: Shakespeare writes software.

Adam Cuppy is: Master of Smile Generation. Ambassador of Company Culture. Tech Entreprenur. Speaker/Educator. One-time Professional Actor @osfashland. Husband. Chief Zealous Officer @CodingZeal.

RubyNation 2017

00:00:26.140 Thank you! I am very excited to be here.
00:00:30.470 Mostly because I was hoping to finally win that ridiculous game.
00:00:38.290 Thank you, Sam. But next time, I really, you know, two weeks or three weeks, they'll do it again.
00:00:43.309 And I’m definitely going to cheat. I don’t know how I’ll do that, but that’s my current plan at least.
00:00:51.710 Before we get too far, let me address this big question that I know is pressing on your minds: Who is this guy?
00:01:00.890 So, my name is Adam Cuppy, and I run a consultancy called Coding Zeal.
00:01:08.240 This fancy logo that sits upon my chest indicates that we are application specialists.
00:01:14.180 What we do is web and mobile applications, specifically working with other engineering teams to help them better process and deliver features they can’t get to.
00:01:22.040 We’re kind of like backlog vacuums, taking care of the stuff that's always high on the list but just doesn't seem to get done.
00:01:25.190 So, if any of your companies fit that mold, you're trying to hire fast enough, or you have too much to do, please give me a call at the end of this.
00:01:30.580 I'd love to talk with you. As a very latency-oriented person, you can definitely tweet at me.
00:01:36.860 I'm on Twitter; my handle is down here at the bottom. You can find me there if there's anything you find fascinating.
00:01:42.890 I would definitely want to hear about it. Similarly, if there are things that you’re questioning or things that didn't make sense, please let me know.
00:01:49.340 Hit me up on Twitter; I would love to get feedback as much as possible.
00:01:51.650 Alright, now before we get too far, I want to talk about a topic called documentation. Just as a show of hands, how many of you love writing documentation?
00:02:02.330 Look around the room; these are the liars! Just kidding! No, really, raise your hand if you love writing documentation.
00:02:17.420 At times, I do too. But let's be honest, how many of you enjoy doing documentation? Okay, so most of you seem unsure whether you love it or hate it.
00:02:34.310 How many of you don’t do it at all? Like it’s just not a part of your world; you just never have to write it?
00:02:39.800 How many of you have to write it for every single thing that you do? Raise your hand if you know what documentation is.
00:02:50.569 Excellent! So, here's the bottom line for me: I am incredibly grateful and thankful for those who put the effort and time into it.
00:03:03.590 One of the many things I absolutely love is the sheer amount of documentation that exists in really well vetted libraries. For example, Rails. I genuinely appreciate their documentation.
00:03:20.780 I will literally go to the Rails documentation just to read through it as a form of subconscious appreciation. Because I realize that, without it, it would have been very hard to navigate the complexities of the Ruby ecosystem.
00:03:34.340 Yet, at the same time, even being someone who appreciates it, I often find myself having a love-hate relationship with documentation. There are times where my love for documentation is directly correlated with my frustration levels.
00:04:09.870 If I were to rate my feelings about documentation on a spectrum, I find that the more time I spend writing it, the more likely I am to feel frustrated.
00:04:14.170 When documentation is really nice, it makes me feel less likely to express frustration, but as things start to progress and the documentation becomes less clear, I might want to shout out.
00:04:37.430 By the end of it, if I get deep into a documentation process that isn't well thought out, I may feel like I'm about to burn the whole code base down.
00:05:00.930 Documentation is indeed a love-hate relationship. I found an article on Hacker News which discusses how writing documentation is really hard, and most people don’t find it fun to write.
00:05:38.500 However, I found it fascinating that there exists a kind of dichotomy regarding how we value documentation on a daily basis versus the time and effort that's actually put into creating it.
00:05:49.300 This is generally how I feel about writing documentation. I constantly strive to do it well, aiming to provide the perfect explanation.
00:06:06.860 Yet, sometimes, I encounter libraries that make the documentation too complicated, making me wonder why it can't be simpler.
00:06:36.650 Coincidentally, the next talk is about system tests. If you have ever had to integrate system tests into a Rails app, you probably know how frustrating it can be.
00:07:05.280 I want to give a massive thanks to Aileen for continuing that conversation about integrating system tests since it can be quite difficult.
00:07:37.440 Now, let's digress a bit and talk about someone named William Shakespeare, who lived approximately 400 years ago.
00:07:54.879 Over the course of about 30 to 40 years, he wrote a whole series of works, many of which you can't see clearly today on screen.
00:08:08.010 Back in Shakespeare's time, most of the plays were performed for the Queen, and among the plays he wrote, there were comedies, tragedies, and history plays.
00:08:34.479 Many of his works reflect the political climate of the time and were often subject to scrutiny regarding their favorability toward the crown.
00:08:54.540 What’s intriguing is the fact that Shakespeare often walked a fine line in expressing his views in a way that wouldn’t be considered heretical or treasonous.
00:09:21.020 He was known for crafting these intricate poetic pieces, and I’m sure you’ve all heard of him before. His work has been translated into hundreds of languages."
00:09:43.890 In running some analyses on his work, I found that in all of his pieces, Shakespeare wrote over 800,000 words.
00:10:03.400 Of those, approximately 1,700 words were used for the first time in his works, redefining language as we know it. These words have remained in use by many generations.
00:10:34.920 Here’s what’s fascinating to me: out of over 800,000 words written 400 years ago, there was basically no documentation.
00:10:58.350 That’s right. Shakespeare crafted intricate fight sequences, poetry, and elaborate performances without any formal documentation.
00:11:20.540 How did that work? It’s a big question that kept floating around in my head.
00:11:42.370 Before diving deeper, I want to ask you to close your computers and shuffle forward. Find a seat nearer to the front.
00:12:03.790 You are my Groundlings today, and I would like to introduce you to the Ruby Nation players performing a scene from The Tragedy of Romeo and Juliet, which was amazingly written 400 years ago.
00:12:32.370 During Shakespeare's time, it was illegal for women to be on stage, so all roles were performed by men. This meant that if a female character had to be depicted, such as Lady Capulet, it would be played by a man.
00:12:57.670 Today, just as actors in Shakespeare's time had to project their voices to reach the audience, our Ruby Nation players will do the same.
00:13:26.720 They'll need to make large, grand gestures to convey their emotions clearly—something that we’ll be ensuring with today's performance.
00:13:44.830 So without further ado, let me introduce you to these incredible players. Please give it up for the Ruby Nation players!
00:14:00.000 As we dive into the scene, there may be humor, and while not everything will be historically accurate, the essence of Shakespeare will shine through.
00:14:45.510 Let us experience this moment in Verona, bringing Shakespeare's legacy back to life, and remember—this was 400 years ago.
00:15:04.339 This type of performance is a call back to an era where comprehension and documentation were represented fully in the performance itself.
00:15:22.430 And here on stage, these players will exemplify that tradition and artistry.
00:15:35.400 Ultimately, I hope to illustrate how Shakespeare’s style could correlate to contemporary programming languages, particularly Ruby.
00:15:59.840 As we explore various aspects of documentation in code itself, it draws parallels with his artistry.
00:16:05.250 In a way, Shakespeare not only paved the way for English literature but also provided a framework for creativity that resonates today.
00:16:13.920 So to tie it all back together, through establishing patterns, disrupting those patterns, and ensuring clarity in our code, we can achieve results reminiscent of Shakespeare's work.
00:16:32.290 Thank you for joining this exploration of Shakespeare's style and how it can inspire our modern programming practices. If you have any questions, please let me know!
Explore all talks recorded at RubyNation 2017
+3