InfoQ Homepage Software Craftsmanship Content on InfoQ
-
Why Building the Right Thing Means Building the Thing Right
Liz Keogh takes a look at why experimentation underpins everything done in technology, and why it is necessary to be able to move and change the right thing.
-
Agile Projects to Agile Organizations: The Journey
Margaret Morgan discusses adopting an Agile mindset which is not only about IT delivery but also to maximize productivity, quality and responsiveness to changing markets and priorities.
-
Crushed by Technical Debt?
Scott W. Ambler explores disciplined agile strategies to avoid and remove existing technical debt, how to fund the removal of technical debt, and related industry data.
-
Five Elements of Superior Developer Portals
Hadi Michael explores the elements commonly found on developer portals, and identifies those that consistently contribute to superior developer experiences.
-
Kill the Mutants - A Better Way to Test Your Tests
Roy van Rijn explains what mutation testing is and how it works, comparing several Java frameworks (PIT, Jester, Jumble) that enable automatic mutation testing in a continuous build.
-
Introduction to Java Profiling
Jerry Yoakum discusses how code profiling tools and techniques can be used to evaluate code for constructions and errors that are likely to cause problems, highlight places in need of refactoring.
-
Making the Case for Review
Austin Bingham answers questions on reviews: how long should they be, what should be reviewed, how do reviews account for an increase in quality and ROI?
-
Learn from the Mistakes of Others
Alison Lloyd examines some less-than-stellar occurrences in non-software fields, drawing out some ideas that she hopes will make software development a little less painful.
-
Microservices: Software that Fits in Your Head
Dan North describes a model for thinking about the age of code and argues for replaceability as a first class concern, ending up with something that looks a lot like microservices.
-
Beautiful Structure
Chris Chedgey explores how “locality of relationship” affects coupling, cohesion, and the width of interfaces, showing structural patterns that increase or decrease complexity.
-
Becoming a Better Programmer
Pete Goodliffe keynotes on what it takes to become a better programmer, discussing tools for reviewing the personal skillset and techniques to help one “become a better programmer”.
-
Opportunities to Improve System Reliability and Resilience
Donald Belcham explains how to improve a system’s reliability by using appropriate code patterns.