On occasion of the second edition of her book “Practical Object-Oriented Design in Ruby: An Agile Primer”, InfoQ talked with Sandi about how her book was received, learning from open source code, making sensible use of code analysis tools and other topics.
Implementing Domain Driven Design, has brought clarity to an important but little understood area of software design. As a measure of Software Design literature, Vaughn's work is educational and fun. With real world code samples and sage advice, IDDD guides the reader through the sometimes murky waters of DDD and helps them gain the insight required to start a DDD journey of their own.
Technical Debt is widely regarded as a bad thing that should be paid back as soon as possible, however it can be a strategy that helps balance short-term wins and long-term productivity. The article describes different ways that a project could pay back Technical Debt and what factors must be considered when deciding if you should repay, convert debt or just pay the interest.
Paul Dix leads a practical exploration into Big Data in this video training series. The training focuses on the high level architecture while teaching practical usage skills and Ruby algorithms.
Unfortunately a couple of issues with domain modelling have caused it to fall out of favour over the past few year. The authors present an approach that addresses the issues. 1
Understanding the software architecture of what you're building can prevent chaos and encourage collective code ownership. But how do you do this without resorting to big design up front and UML? 9
Kai Wähner explains the differences between an integration framework, an ESB and a suite, following with advice for selecting the right one from existing commercial and open source solutions. 18
Aliaksei Papou explores how components and design patterns such as the observer and State Machine make it possible to design an application such that it can grow and change according to your needs. 5
Capers Jones compares the effectiveness of Agile and Scrum with a sample of contemporary software development methods using several standard metrics. 19
This article (the second in a four-part series) focuses on the design of a hypermedia server based on the API designed for the class scheduling problem domain outlined in part one of the series. 1
This article (the first in a four-part series) focuses on the design of a hypermedia type, by mapping a particular problem domain to hypermedia messages, as a basis for the API. 1
A problem with WCF development is the proxy generator, which gives you nothing but simple DTOs. This article shows how to bypass the proxy generator so that your client and server can share code. 1