Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
“The first draft of anything is **.” - Ernest Hemingway Ernest Hemingway didn't write first drafts of sparse, clear prose. He wrote terrible first drafts and then rewrote them, over and over, until the design of the prose was right. For Hemingway, and every good writer, Writing is Rewriting. As programmers our first drafts are terrible as well. Perhaps we clean up that first draft with some stylistic tweaks that make it look nicer but that don't affect the underlying design. But how often do we really dig in to that first draft and tear it apart, redesigning it until it is sparse and clear? Not often enough. And that's to our detriment. For good developers, Design is Refactoring. That sounds easy, but all too frequently refactoring doesn't lead to appreciable changes in the code's design. How do you use refactoring to improve code design? And how do you identify when you're just changing the surface style of your code? What's the difference between coding style and design, anyway? I'll answer all of these questions, hopefully, and show you how to take your code from a first draft to a clear, sparse design. Help us caption & translate this video! http://amara.org/v/HLzY/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The video titled 'Even Hemingway Wasn't Hemingway' presented by Ian Whitney at the Rocky Mountain Ruby 2015 conference discusses the parallels between the creative processes of writing and programming, emphasizing the importance of rewriting and refactoring for both disciplines. Whitney draws a connection between the iterative writing processes of authors, such as Ernest Hemingway, and the coding practices of developers. Key points covered in the talk include: - **The Writing Process**: Writers often produce multiple drafts, editing their work to achieve clarity and conciseness. Hemingway, known for his powerful prose, accepted that his first drafts were often poor and required extensive rewriting. - **Coding as a Form of Writing**: Whitney argues that coding should also be viewed as storytelling. The process of coding, like writing, involves crafting a narrative that may need multiple iterations to clear and refine. - **Refactoring vs. Rewriting**: In programming, the act of rewriting is commonly referred to as refactoring. While some refactoring leads to stylistic improvements, Whitney emphasizes that true refactoring should improve the underlying design and functionality of the code. - **Feedback Loops in Development**: Programmers should view code as perpetually in draft form, allowing for ongoing revisions based on user feedback and project requirements. This iterative approach mirrors the evolutionary process writers undergo in developing their stories. - **Practical Tips**: Whitney outlines specific types of refactoring and their purposes, making an important distinction between simple aesthetic changes and fundamental redesigns of code. He encourages programmers to adopt a mindset that values the narrative their code creates, much like how authors value the story their words convey. The talk concludes with the reminder that both writing and coding require patience and a willingness to review and improve draft versions until a polished final product emerges. In both fields, the key is ongoing learning through practice and revision, reinforcing that even great authors have faced challenges in their early drafts.
Suggest modifications
Cancel