Monday, February 13, 2012

Biweekly roundup: distributed systems

Fowler's first law of distributed objects:
Don't distributed your objects.
Indeed after six months submerged into academical distributed projects, I can too say that designing interfaces for local objects and for remote one is a different task: there is no trasparency. For more, google A note on distributed computing.

Here are my original articles published in the last two weeks on DZone.
Practical PHP Refactoring: Replace Inheritance with Delegation explains how to refactor towards composition, since inheritance is highly overused in PHP and many modern languages.
My use case for checked exceptions sees Java checked exceptions as a way to enforce contracts that involve distributed computation.
Practical PHP Refactoring: Replace Delegation with Inheritance is the previous refactoring when applied in the opposite direction.
An Introduction to the R Language is a tutorial for starting to use R, a platform for statistical computing similar to Matlab and Octave.
Practical PHP Refactoring: Tease Apart Inheritance is about separating code into multiple hierarchies to avoid a single, large and incomprehensible one.
What WSGI is: a Python standard for web applications and frameworks to conform to.
Practical PHP Refactoring: Convert Procedural Design to Objects is a large scale refactoring involving, as a first step, moving away from the record/procedure pattern,
The Decorator pattern, or its cousin, in JavaScript is my take on implementing a Decorator with prototype chaining; in JavaScript we can even add methods with this technique, which wouldn't be feasible with the classic pattern.

2 comments:

  1. it's amazing how dry and academic'y stuff that u write. I bet you probably never worked on real-life projects.

    ReplyDelete