Oleg Zabluda's blog
Friday, November 02, 2012
 
I started my professional software engineering attitude as an abstractionist.
I started my professional software engineering attitude as an abstractionist. Abstractions and Interfaces (aka API) is everything, implementation is nothing. Stay abstract, my friend. I was very proud that my massive IQ (for a programmer) allowed me to come up with excellent Abstractions/Interfaces/APIs, which is simply looking for maximum commonality, which is simply a form of pattern recognition. That's for the first 10 years.

Over the last ~10 years, more and more often I found myself following end-to-end principle, i.e. when middle layers were just passing things along, as dumbly as possible, but no dumber. I was never quite sure, though, if I was super-genius or super-lazy. Only time could tell how things play out.

Recently, I see more and more people making argument for, by name. We'll see.

Note that in networking (i.e. distributed systems = possibility of partial failures), the arguments played themselves out almost before my time, so I knew the answer. Here we are talking about monolithic systems (i.e. no possibility of partial failures).

http://en.wikipedia.org/wiki/End-to-end_principle
http://esr.ibiblio.org/?p=4664
http://en.wikipedia.org/wiki/Exokernel
http://en.wikipedia.org/wiki/Abstract_art
http://en.wikipedia.org/wiki/Abstract_art

Labels:


| |

Home

Powered by Blogger