Sunday, November 13, 2016

Architecture is defined by the recommended practice as the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.
[ANSI/IEEE Std 1471-2000, Recommended Practice for Architectural Description of Software-Intensive Systems]

Sunday, November 6, 2016

"All the choices and challenges facing the modern software architect are staggeringly intertwined. Each of them both constrains the others and affects multiple key outcomes. Minor decisions often have huge implica- tions. As in the physical world, this is the difference between engineering and architecting." IEEE Software,2016 nov.

Philippe Kruchten put it, “The life of a software architect is a long and rapid succession of suboptimal design decisions taken partly in the dark.” IEEE

Friday, October 14, 2016

"A state of software is a coordinate in the state space that contains exactly one value for every internal data structure." - James A. Whittaker
“Every now and again you just have to stop and invest in your  career, and I encourage you to do that now. Stop what you're  doing, and invest in PowerShell and you'll be rewarded for having  done so.” Jeffrey Snove

Sunday, September 25, 2016

“Information is data endowed with relevance and purpose. Converting data into information thus requires knowledge. And knowledge, by definition, is specialized. In fact, truly knowledgeable people tend toward  overspecialization, whatever their field, precisely because there is always so much more to know.”
— Peter Drucker, “The Coming of the New Organization,” Harvard Business Review, January–February 1998

Monday, September 5, 2016

“Would you tell me please, which way I ought to go from here?” asked Alice.
“That depends a good deal on where you want to get to,” said the Cat.
“I don’t much care where,” said Alice.
“Then, it doesn’t matter which way you go,” said the Cat.
Alice’s Adventures in Wonderland
Lewis Lewis Carroll

Tuesday, August 30, 2016

"Testing is a philosophy. You can test the design. You can test the requirements. And you can even design modules to test the modules you are creating." - 
Randy May

Tuesday, August 23, 2016

"An  extremely  strange,  but  common,  feature  of  many  software  projects  is  that  for long  periods  of  time  during  the  development  process  the  application  is  not  in  a working  state.  In  fact,  most  software  developed  by  large  teams  spends  a  significant proportion  of  its  development  time  in  an  unusable  state.  The  reason  for  this  is easy  to  understand:  Nobody  is  interested  in  trying  to  run  the  whole  application until  it  is  finished." Ref.pend.

Monday, August 15, 2016

Self-organization proceeds from the premise that effective organization is evolved, not designed. It aims to create an environment in which successful divisions of labor and routines not only emerge but also self-adjust in response to environmental changes. This happens because management sets up an environment and encourages rapid evolution toward higher fitness, not because management has mastered the art of planning and monitoring workflows.—
Philip Anderson, The Biology of Business© Copyright Mountain Goat Software

Sunday, August 14, 2016

Knuth’s dictum, optimizations should be deferred to the point when it is clear that they are required, deferred until the last responsible moment, and targeted based on runtime application profiling so as to attack bottlenecks in descending order of importance.

Saturday, August 13, 2016

Donald Knuth’s famous dictum:

We should forget about small efficiencies, say, about 97% of the time: Premature
optimization is the root of all evil. Yet we should not pass up our opportunities in
that critical 3%. A good programmer will not be lulled into complacency by such
reasoning, he will be wise to look carefully at the critical code; but only after that
code has been identified.