InfoQ Homepage Design Content on InfoQ
-
Twitter Shifting More Code to JVM, Citing Performance and Encapsulation As Primary Drivers
While it almost certainly remains the largest Ruby on Rails based site in the world, Twitter has gradually been moving more and more of its stack to the JVM. Last year the company announced that its back-end message queue had been re-written in Scala, and more recently it moved the search stack to Java, making Twitter search around three times faster.
-
Dependency Injection with Mark Seemann
Mark Seemann, author of Dependency Injection in .NET, talks to us about the differences between DI and Service Locators and the importance of having a Composite Root. He also touches on how these all relate back to the SOLID principals of object oriented design.
-
Agile Architecture Interactions
James Madison shows how architects can bring agile and architecture practices together to pragmatically balance business and architectural priorities while delivering both with agility.
-
Patterns-Based Engineering: Successfully Delivering Solutions via Patterns
InfoQ spoke with Lee and Celso about the Patterns-Based Engineering: Successfully Delivering Solutions via Patterns book, discussing patterns for working with patterns, MDD and the promise of reuse. The book focuses on how to improve efforts in identifying, producing, managing and consuming patterns – leading to better software delivered more quickly with fewer resources.
-
Interview and Book Excerpt: Dan Haywood's Domain-Driven Design Using Naked Objects
Domain-Driven Design Using Naked Objects book, by author Dan Haywood, covers the Domain-Driven Design topic using the open-source Java framework Naked Objects framework (which is now part of the Apache Isis incubator project). InfoQ spoke with Dan about the book, Naked Objects framework and its recent submission to be an Apache project.
-
Large-Scale Agile Design & Architecture: Ways of Working
During my 2011 QCon London keynote on "Scaling Lean & Agile: Large, Multisite or Offshore Delivery", I mentioned — as an aside — that, "Architecture is a bad metaphor. We don't construct our software like a building, we grow it like a garden." This prompted many a tweet, and some people were interested in clarification or elaboration.
-
The Top Five Challenges of Building Software Platforms in the Agile World
When scaling Agile to the enterprise new concerns arise that require revisiting the values and practices of Agile software development. One such concern relates to a common strategy to achieve reuse at the enterprise level - building software platforms. This article lists the top five challenges that an Agile organization should expect to face when deciding to adopt a software platform strategy.
-
Book on Leveraging Domain-Specific Languages by Martin Fowler with Rebecca Parsons
In their new book Martin Fowler and Rebecca J. Parsons address the topic of Domain-Specific Languages. “Domain-Specific Languages” does not only address the concepts behind DSLs, but also tries to explain the subject in a pragmatic manner using examples in Java, C# and other languages.The book contains different patterns that reveal best practices in designing DSLs.
-
Hades - JPA Repositories Done Right
Almost every application has to access data to do its work. In a domain driven design approach one defines repositories for the entities that make up the domain. Java developers often use JPA to implement these repositories. Hades is an open source library that's built on top of JPA and Spring to significantly improve the implementation of data access layers by reducing the effort required.
-
JetBrains Developer Tools
JetBrains is one of the few companies that thrives selling developer tools. In this interview you get some insight in their strategies, current and new products and future plans.
-
Technical Debt a Perspective for Managers
Developers often talk about Technical Debt saying its slowing your projects down. What are they really saying? What measures can you take to reduce it before it cripples your projects?
-
Ars Magna: the revolution is overdue
This essay is an intentionally provocative and controversial call for a real revolution in how we conceive of and practice software development. The intent is to stimulate discussion.