InfoQ Homepage Articles
-
Reactive Cloud Actors: An Evolvable Web of Events
Reactive Cloud Actors are an utilization of Carl Hewitt's Actor model which can be used to leverage the power of modern distributed systems. This article demonstrates an implementation of Reactive Cloud Actors, considering a complex business scenario that is delivered in an elegant and thoughtful solution.
-
Q&A on the Book: The Agile Culture - Leading through Trust and Ownership
Developing an agile culture is something that enterprises often do when they adopt agile. Such a culture change involves changing the way that managers lead people to help them to become self-organized. The book "The Agile Culture" describes how you can develop a culture of energy and innovation, and provides tools to build trust, take ownership and deal with walls and resistance in organizations.
-
Towards Agile CMMI Level 3: Requirement Development and Verification
This article shows how to do requirement development in agile environments, covering concepts and offering examples of how an agile team could run a CMMI for Development SCAMPI to become appraised at a targeted level 3 for the areas of requirements development and verification.
-
Agile Research
The article applies the Agile Principles to the field of qualitative academic research, with the emphasis on conducting the investigation using the Grounded Theory Methodology. An “Agile Research” approach identifies the “customers” of the research, delivers publication draft at the end of short iterations, and carries out the research in sprints that focus on defined research activities.
-
Russ Miles on Antifragility and Microservices
Currently, Antifragility and Microservices are trending topics and this might be a hint that there are new architectural paradigms or design patterns on their way for building application systems.. We're discussing these new concepts with Russ Miles to find out what they are good for and how to apply them in an architect's or developer's daily business - for existing applications and those to come
-
How Functional is Java 8?
It's been said that Java 8 is bringing Functional Programming to Java. In this article Ben Evans discusses what it means to be functional. By looking at the evolution of Java - particularly its type system, we can see how the new features of Java 8, especially lambda expressions, change the landscape, and provide some key benefits of the functional programming style.
-
Database Continuous Delivery
The database creates a real challenge for automation, hence participation in continuous processes. Scripting database objects change-scripts into traditional version or using 'compare & sync' tools is either an inefficient or risky thing to automate, as the two concepts are unaware of the other. A better solution needs to be implemented in the shape of Continuous Delivery and DevOps for database.
-
Distributed Agile: 8 ways to get more from your distributed teams
Keith Richards looks at how to succeed with agile in a distributed context. He investigates what needs to happen and why it is important to understand and address the ‘big ticket’ items. His findings are sometimes surprising and he also asserts that to some extent nearly all work is ‘distributed’ in some form, therefore we can all benefit from these findings.
-
Improving Your Asynchronous Code Using Tasks, Async and Await
Dave Marini delves into the history of asynchronous programming on the .NET platform, tracing through the early days of the Asynchronous Programming Model to today’s async/await patterns.
-
Type Annotations in Java 8: Tools and Opportunities
With Java 8, annotations can be written not only on declarations, but on any use of a type such as types in declarations, generics, and casts. This article introduces the new type annotation syntax and practical tools to boost productivity and build higher-quality software.
-
*-Driven* do not change anything
Michał Bartyzel challenges the need to master a *Driven* approach to be Software Professional. These might be: DDD, TDD, BDD, MDD or other frameworks. He maintains that they may be responsible for cognitive biases rather than playing a supporting role for broader and deeper skills.
-
The Elusive Dependency
Architecture models how the system and its elements hang together. Yet the true complexity of architectural dependencies can be highly elusive. We share architectural information when we build integrated systems creating complex and hard to find dependencies. This article introduces a simple modelling approach to analyse of architectural dependencies within complex technology environments.