Portal:Essays about The Virtuous Perl Programmer
About the Virtuous Programmer Initiative
The Virtuous Programmer Initiative is broader than any one technology or programming language, although its present work is rooted particularly in Perl and the Perl community.
Its purpose is to explore what makes a good programmer not merely technically capable, but prudent in judgment, spirited in the pursuit of worthy work, orderly in craftsmanship and stewardship, diligent in execution, patient with people and difficult problems, and humble before truth and the contributions of others.
The Initiative includes philosophical essays, technical case studies, professional-development material, and practical applications of programmer virtue to such subjects as open source, maintenance, artificial intelligence, apprenticeship, commerce, and software craftsmanship.
Essays about The Virtuous Perl Programmer
The Virtuous Perl Programmer series considers programming as a human craft ordered toward truth, useful service, justice, stewardship, and human flourishing.
The essays begin from the three virtues proposed in The Real 3 Virtues of Perl:
- Practical Wisdom or Prudence, not Laziness
- Spiritedness, not Impatience
- Good Order, not Hubris
They also consider Larry Wall's complementary open-source virtues of Diligence, Patience, and Humility, and apply these virtues to programming, maintenance, open-source communities, commerce, artificial intelligence, craftsmanship, and the formation of future programmers.
Some essays are primarily philosophical or moral. Others follow practical technical journeys in which the virtues are applied to real software development.
Foundational Essays on Programmer Virtue
These essays consider programmer virtue directly, apart from any particular toolkit or development environment.
- The Real 3 Virtues of Perl
- Open Sourcing the Virtues of a Perl Programmer
- Forthcoming essays may include:
- Prudence and Technical Judgment
- Spiritedness Without Impatience
- Good Order Without Bureaucracy
- Diligence, Patience, and Humility in Open Source
- When Programmer Virtues Go Mad
- The Virtuous Programmer and Artificial Intelligence
- The Dignity of the Programmer and the Dignity of Work
- The Master and the Apprentice
- Virtue, Maintenance, and the Work Nobody Sees
- The Programmer, the Customer, and Just Exchange
The Perl Lazarus Technical Journey
This sequence applies the virtues of the Perl programmer to a concrete technical goal: building complete, distributable Windows applications with Perl.
- The Perl Craftsman Returns to the Windows Desktop
- Why the journeyman, master, and aspiring Perl programmer should learn to build complete Windows applications.
- The Perl Lazarus Workshop
- Why Strawberry Perl, wxWidgets, wxPerl, wxGlade, MSYS2, PAR, and Inno Setup belong in one practical workshop.
- Raising a Working wxPerl Shop on Windows
- Installing the toolchain and establishing an efficient edit–emit–wire–run workflow.
- Forthcoming: From wxGlade Layout to Working Perl Application
- Moving from generated layout code to a maintainable application with clear event handling and separation of concerns.
Living technical reference: Developing and Distributing wxPerl Applications on Windows
Related project: Perl Lazarus Project
Other Technical Applications of Programmer Virtue
Future essays may apply the same framework to:
- open-source maintenance;
- code review;
- testing;
- APIs and backward compatibility;
- artificial intelligence;
- software licensing;
- documentation;
- release engineering;
- security;
- system administration;
- scientific programming;
- consulting and professional practice;
- and the formation of new programmers.