BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Architecture Content on InfoQ

  • AtomServer – The Power of Publishing for Data Distribution

    In this article, Bryon Jacob and Chris Berry introduce AtomServer, their implementation of a full-fledged Atom Store based on Apache Abdera. The authors spent the last year implementing an Atom Store for Homeaway, their employer, and are mnow making the Atom Store framework available as open source.

  • An Introduction to Virtualization

    It is easy to think that virtualization applies only to servers. In reality the recent resurgence of the concept is being applied at a variety of levels including networking, storage, and application infrastructure. In this introduction to the topic InfoQ dives into each area describing its uses as well as benefits and disadvantages.

  • REST Anti-Patterns

    In this article, Stefan Tilkov explains some of the most common anti-patterns found in applications that claim to follow a "RESTful" design and suggests ways to avoid them: tunneling everything through GET or POST, ignoring caching, response codes, misusing cookies, forgetting hypermedia and MIME types, and breaking self-descriptiveness.

  • Choosing between Routing and Orchestration in an ESB

    In this article, Adrien Louis and Marc Dutoo discuss the differences and relative merits of using orchestration vs. routing in a typical ESB setup. They discuss various approaches to connecting services, from low level ones like customized routing, to high-level ones using business oriented approaches like workflow and orchestration, and conclude that there is no one-size-fits-all solution.

  • Best Practices for Model-Driven Software Development

    Model-driven software development no longer belongs to the fringes of the industry but is being applied in more and more software projects with great success. In this article we would like to pass on, based on the experiences we have gathered in the past few years, our contribution to its best practices.

  • Domain Specific Languages in Erlang

    Erlang is well known for it's concurrency model and fairly well known for robustness. But what about other aspects? In this article, Dennis Byrne shows how to use Erlang for creating internal DSLs.

  • Nate Kohari on Releasing Ninject 1.0

    Ninject is touted as a lightning-fast, ultra-lightweight dependency injector for .NET applications. Helping developers split applications into a collection of loosely-coupled, highly-cohesive pieces, and then glue them back together in a flexible manner. Using Ninject to support your software's architecture, your code will become easier to write, reuse, test, and modify.

  • Using Numbers to Communicate - in the Spirit of Agile

    It's an old story. Techies cave in to the business guys because they don't know how to push back. The problem? Developers use numbers primarily for computation, but the business uses numbers to make decisions. In this story the "Spirit of Agile" encourages a developer to turn non-computational problems and issues into number language.

  • Domain Driven Design and Development In Practice

    In this article, Srini Penchikala discusses Domain Driven Design and Development from a practical stand-point. The article looks at architectural and design guidelines and best practices that can be used in a DDD project. It also talks about the impact of various design concerns like Persistence, Caching, Transaction Management, Security, Code Generation etc in domain model implementation effort.

  • David Nuescheler on JCR and REST

    In this interview, Day CTO and JCR Spec Lead David Nuescheler discusses the benefits of JCR, the Java Content Repository standard, the difference between an API such as Atom/Atom Publishing protocol and JCR, JCR's connection to REST, and Apache Sling, a new kind of Web framework.

  • InfoQ Case Study: NASDAQ Market Replay

    In this case study InfoQ reviews the usage of Adobe AIR and Amazon Simple Storage Service (S3) in the NASDAQ Market Replay application. NASDAQ Market Replay provides a NASDAQ-validated replay and analysis of the activity in the stock market. The combination of S3 and AIR offers a powerful deployment model with little internal infrastructure required.

  • Scalability Best Practices: Lessons from eBay

    eBay Distinguished Architect at eBay Randy Shoup explains eBay key scalability practices of partitioning, horizontal scale, avoiding XA, asynchronicity, and virtualization. eBay has hundreds of millions of users, over a billion page views a day, and petabytes of data in their systems.

BT