InfoQ Homepage Quality Content on InfoQ
-
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.
-
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.
-
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.
-
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.
-
Where Did My Architecture Go?
Eoin Woods advices on writing code that preserves the initial architectural design using conventions, dependency analysis, module systems, augmenting the code & checking rules, and language extensions
-
Making Apps That Don’t Suck
Mike Lee considers that a software engineer makes great applications not because he follows good rules but because he has a better way of looking at the world and he learns from experience.
-
Five Static Code Audits Every Developer Should Know and Use
Mike Rozlog discusses the need for software audits, proposing five code reviews that every developer should use: Numerical Literal, String Literal, god Method, Shotgun Surgery and Duplicate Code.
-
The Case for Evolvable Software
Stephanie Forrest believes in the possibility to create evolvable software through automated bug repair, optimizing or improving code and creating new combinations of existing functionality.
-
Slimmed Down Software - A Lean, Groovy Approach
Hamlet D'Arcy explains the Lean principles - Eliminate Waste, Build Quality In, Create Knowledge, Defer Commitment, Deliver Fast, Respect People, Optimize the Whole – in the context of using Groovy.
-
Raising the Bar: Super Optimizing Your Agile Implementation Using Kanban and Lean
Jesper Boeg and Guilherme Silveira discuss if Lean&Kanban is better than traditional Agile, how they could go together, and determining if Lean&Kanban is appropriate for immature teams.
-
Living and Working with Aging Software
Ralph Johnson discusses principles, practices and tools relating to software development starting from already existing code which needs refactoring, maintenance, and sometimes architectural change.