InfoQ Homepage Software Craftsmanship Content on InfoQ
-
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.
-
Compile-time Verification, It's Not Just for Type Safety Any More
Greg Young talks about .NET’s Contracts library, showing how to use it, what it is good for, and how it improves code quality.