Mythbusting Remote Procedure Calls
Distributed systems are hard. Many have attempted to circumvent this fact via a variety of approaches, typically by ignoring difficult problems involving latency, partitioning, concurrency, and system evolution.
Software Architecture Videos and Tutorials
Distributed systems are hard. Many have attempted to circumvent this fact via a variety of approaches, typically by ignoring difficult problems involving latency, partitioning, concurrency, and system evolution.
The family of HTML5 technologies has pushed the pendulum away from rich client technologies and toward ever-more-capable Web clients running on today’s browsers. In particular, WebSocket brings new opportunities for efficient peer-to-peer communication, providing the basis for a new generation of interactive and “live” Web applications.
Optimizations are one thing, but making a serious data collection program run 114,000 times faster is another thing entirely. Learn how it has been done.
Object-orientation is today’s dominant pervasive design style. Yet, there seems to be a sea change toward the functional paradigm. Fully functional languages like Clojure are getting notice. Hybrid languages like Scala and F# are gaining mindshare, and even old standbys like C# are adopting more and more functional features.
There are many technologies available for implementing applications of different types, and many successful applications have been built with them. There are fewer technologies for integrating applications into larger systems, and the results of applying those technologies have been much less satisfactory. Linked data is a combination of simple technologies …
Statoil has recently done a large and complex software architecture remake of a business critical application. The overall plan was to go from a situation with a codebase that was really hard, time consuming and riskful to make even small changes to and transform that into a situation with a …