BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Design Content on InfoQ

  • Josh Clark About the Future of (not only) Mobile Interfaces

    With the rise of touch enabled smart-phones and tablets, a new category of user interfaces was introduced. And there are new technologies just around the corner: The 'Internet of Things' is becoming reality with lots of new device types that need to be considered when formatting output and natural user interfaces like speech and gesture provide challenges when interpreting input.

  • Design Patterns for JavaScript Applications

    Writing increasingly larger and more complex JavaScript applications we tend to overlook the core principles involved, Carl Danley, a senior web engineer, motivates a series of blog posts about JavaScript design patterns. Patterns provide a clear approach to writing structured and maintainable code, concepts which are important when developing large JavaScript applications.

  • Implementing Hexagonal Architecture using Life Preserver and Spring Framework

    Russ Miles recently shared some thoughts and ideas about the needs for adaptability in a system and how his implementation of the Hexagonal Architecture can help in achieving this. He used a Java and Spring based application to exemplify how such a system can be implemented.

  • REST and the Travelling Salesman Design

    Recently Steve Jones from CapGemini commented on some text in a Nokia API project on github which indicated that designing and documenting APIs for REST based services was no longer required and that HATEOAS was sufficient. Given Steve's previous comments on IT valuing technology over thought, this was something he needed to call out as bad practice.

  • SOLID Design Principles and Other Patterns Revisited For .NET

    Andras Nemes, a web developer on the .NET platform, is doing a series of blog posts on the SOLID design principles and other design patterns he has found interesting in object-oriented programming and design, currently on D in SOLID, the Dependency Inversion Principle. Earlier he has among other patterns covered Command, Builder, Visitor, Bridge and Observer.

  • Dependency Principles for SOA

    Earlier this year Ganesh Prasad discussed the concept of thinking of SOA as "Dependency-Oriented Thinking". Based upon further interactions and involvement with real-world use cases, Ganesh has come up with a dozen principles which he believes can help successful SOA.

  • Get Started With Behaviour-Driven Development Focusing on the Domain Instead of on the Database

    Start using Behaviour-Driven Development (BDD) when designing an application and focus on the domain instead of the database, Julie Lerman, a Microsoft MVP since 2003, suggests. BDD lets developers focus on user stories and behaviour in the business domain when building up logic and tests. New to BDD, Julie has implemented a working example using Visual Studio, C# and SpecFlow.

  • Uncle Bob: Architecture is About Intent, not Frameworks

    Architecture is about intent, we have made it about frameworks and details, Robert C. Martin, “Uncle Bob”, stated earlier at this year’s DDD Exchange Day in London. Robert refers to a book by Ivar Jacobson from 1992 and brings the original thoughts about use cases into architecture models, e.g. Hexagonal architecture and Clean architecture to improve these models.

  • Vaughn Vernon on the Actor Model and Domain-Driven Design

    To take advantage of the great concurrency opportunities the new multi-core machines gives us we should use a programming model that helps us achieve this, and the Actor model gives us a number of tools for doing that, Vaughn Vernon stated at this year’s DDD Exchange Day in London.

  • Build Simplicity into a System with Simple Event-Driven Components

    Use events for interactions between small business components to bring simplicity to a system’s architecture, Russ Miles suggests in a recent presentation about simple event-driven components, as a follow-up on his talk a month earlier where he laid the architectural ground for his ideas about simplicity.

  • Documentation Guide for Teams Doing Domain-Driven Design

    The first thing a team should do on a new software project is drawing a context map to help them understand the context, the core domain and what other contexts they may need to interact with to get a shared understanding of the domain between everyone involved, Paul Rayner explains when sharing his experiences what kind of documentation teams doing Domain-Driven Design, DDD, should produce.

  • Spring adds HATEOAS Support to REST Based Web Services

    The Spring Framework is currently in progress of adding HATEOAS, Hypermedia As The Engine Of Application State, support to REST web services. Primary focus for the library is to provide an API for simplifying the creation of hypermedia links and assembling of REST resource representations.

  • Open-Closed Principle in SOLID Object Orientation Rules Challenged

    The Open-Closed Principle, OCP, part of the object-orientation SOLID principles, was recently criticised by Jon Skeet and Robert Ashton who both believes the principle is doing more harm than good. Robert C. Martin, who identified the principles in the early 2000s, however, defends the principle, arguing that you have to look at the full description, not just the short definition.

  • Events bring Simplicity to a System's Architecture

    Using events for interactions between small business components can bring simplicity to a system’s architecture, Russ Miles explained in a presentation last week talking about Architectural Simplicity through Events.

  • InfoQ's New Redesign: Video Tour and Feedback

    Announcing the first major redesign of InfoQ since its inception. The intention of this redesign is to make it easier for users to find content they want, to simplify most pages to emphasize content instead of sidebars and metadata, and to make the site easier to read and more tablet/mobile friendly.

BT