InfoQ Homepage Architecture & Design Content on InfoQ
-
Do's and Don'ts on Android
Lars Hesel Christensen shares lessons learned from implementing a mobile banking application for Android, presenting the architecture, the technology&tools used, what works and what should be avoided.
-
Putting the "re" into Architecture
Kevlin Henney promotes live architecture through refactoring, recovery, re-envisioning, retrospection, re-engineering, repair, rewriting, reduction, reuse, reaction, re-evaluation and remembering.
-
Functional Programming: A Pragmatic Introduction
Jim Duey explains functional programming through Java code samples, emphasizing the need for a mindset change in approaching coding and why the functional paradigm is useful.
-
More Best Practices for Large-Scale Websites: Lessons from eBay
Randy Shoup: Partition Everything, Asynchrony Everywhere, Automate, Everything Fails, Embrace Inconsistency, Expect (R)evolution, Dependencies Matter, Respect Authority, Data, Custom Infrastructure.
-
Why Don’t We Learn!?
Russ Miles discusses how to nurture the skill of learning by understanding it, valuing it and enhancing it in order to achieve an agile transformation within the organization.
-
Software Evolution in Agile Development: A Case Study
Nanjangud C Narendra presents a case study of an enterprise Agile project in the light of Lehman’s laws of software evolution, along with observations on Agile practices used and their outcome.
-
Evolution of Code Design at Facebook
Nick Schrock presents how Facebook’s code evolved over time, explaining some new constructs – fbobjects, Preparables, Ents - introduced to address the complexities of a large social graph.
-
Agile Operations – Optimizing the Business One Shell Script at a Time
Dan North and Chris Read discuss techniques for implementing Agile Operations, a combination of Lean thinking and Agile development meant to optimize the business processes in order to reduce waste.
-
Introducing the Ceylon Project
Gavin King introduces Ceylon, a prototype language for the Java Virtual Machine which attempts to combine the strengths of Java with the power of higher order functions and declarative programming.
-
Large Scale Integration in Financial Services
John Davies addresses some of the difficulties dealing with FIX, FpML, SWIFT and integration in financial services software industry, challenging some of the canonical models existing today.
-
The Code is the Design
Mark Haskamp supports the idea that source code is the design blueprint and the entire documentation of a software product.
-
1000 Year-old Design Patterns
Ulf Wiger advocates for a programming model change based on the actor model which more accurately reflects old human concurrency patterns that we have used in our daily lives for thousands of years.