Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
TDD For Your Soul: Virtue Through Software Development by Abraham Sangh Web development pushes us to our limits, not only of cognition, but, perhaps surprisingly, of character. Using the cardinal virtues as a framework, we can see that developers need courage to learn, temperance to prioritize goals, a sense of justice by which to discern obligations, and wisdom to choose our path. By being honest about where we lack virtue, and implementing steps to develop character, we can perform test-driven development on ourselves. This process can help us grow not only as developers, but as human beings. Help us caption & translate this video! http://amara.org/v/IMmw/
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
In the talk titled **"TDD For Your Soul: Virtue Through Software Development"** presented by Abraham Sangh at MountainWest RubyConf 2016, the speaker explores the intersection of software development and personal character development through the concept of Test-Driven Development (TDD). The primary theme revolves around the idea that developers can cultivate personal virtues alongside technical skills by applying TDD principles to their character. **Key points discussed include:** - **Definition of TDD:** TDD is summarized in three steps: Red (writing a failing test), Green (writing code to pass the test), and Refactor (improving the code without changing its behavior). - **Character Development Framework:** Sangh connects TDD to personal growth, labeling it as **"TDD for your soul"**, suggesting that just as developers iteratively improve their code, they can also improve themselves. - **Cardinal Virtues:** The four cardinal virtues are outlined—self-control, courage, justice, and wisdom—each discussed in context with coding and personal development. - **Self-Control:** Emphasizing the importance of regulating impulses and desires, the speaker shares how self-control is crucial in coding practices, illustrated with the Law of Demeter. - **Courage:** Courage is defined as the ability to face fears, particularly in the face of failure or challenges in learning to code. Sharing examples from pair programming reinforces its importance. - **Justice:** Sangh defines justice in software development as recognizing and fulfilling obligations to others, creating code that is maintainable and fair. - **Wisdom:** Wisdom involves making informed choices and learning from experiences, with advice from notable figures like Confucius highlighting various pathways to understanding wisdom. - **Practical Application:** Sangh encourages reflecting on personal virtues and setting concrete goals ("failing specs") to improve character, showcasing a method of integrating virtue development with daily routines. - **Overcoming Resistance:** The talk addresses common feelings of shame and inadequacy that hinder personal growth, using anecdotes and cultural references to encourage embracing vulnerability and learning from failures. - **Call to Action:** The speaker concludes by urging the audience to pursue self-improvement through the lens of TDD, thereby aspiring to be better developers and individuals, and fostering a community of support around these ideals. Overall, Santagh’s illustrative and actionable approach provides a philosophical yet practical guide for software developers seeking to enhance both their technical and personal virtues through intentional self-reflection and development.
Suggest modifications
Cancel