InfoQ Homepage Software Craftsmanship Content on InfoQ
-
Sufficient Design: Quality In Sync With Business Context
Joshua Kerievsky invites developers to start thinking as entrepreneurs, writing code that is “good enough” for the purpose it is supposed to serve rather than write elaborate code that is beautiful.
-
Software Naturalism - Embracing the Real Behind the Ideal
Michael Feathers analyzes real code bases concluding that code is not nearly as beautiful as designers aspire to, discussing the everyday decisions that alter the code bit by bit.
-
Innovation at Scale Using Lean Thinking
Jez Humble discusses innovating using a Lean startup approach and overcoming innovation barriers in enterprises along with engineering practices useful for rapid delivery of quality software.
-
Beauty Is in the Eye of the Beholder
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
-
How to Stop Writing Next Year's Unsustainable Piece of Code
Guilherme Silveira mentions some of the turning points in project development that may affect the quality of the code offering advice on avoiding writing crappy code.
-
Devops Fools, Tools and other Smart Things
Patrick Debois discusses the role of tools in creating a new devops culture that needs to be build inside organizations around the idea of craftsmanship.
-
Better is Better
Steve Freeman talks about environments he worked in, learning that being in a really effective environment changes what you can do, opening new possibilities, and it is a qualitative experience.
-
The Beginner’s Mind
Patrick Kua talks on the need to preserve an open mind and learning attitude while being on the craftsmanship journey from beginner to expert.
-
Stop the Software Architecture Erosion
Bernhard Merkle advices on preventing architectural degradation of a project by using tools for constant monitoring of the code, exemplifying with an analysis of Ant, Findbugs and Eclipse.
-
Infinitely Extensible
Alex Papadimoulis discusses avoiding over-engineering a program, presenting extensibility types used, extensibility design patterns, when to use them, and what happens when they are incorrectly used.
-
Craft and Software Engineering
Glenn Vanderburg believes that software engineering and craftsmanship are not mutually exclusive, and there is synergy between them, explaining how to combine them in the software development process.
-
Team Leadership in the Age of Agile
Roy Osherove discusses three maturity stages of a team and adjusting leadership accordingly, along with techniques meant to bring craftsmanship and maturity in a software development team.