Human-oriented software design is error-oriented

Alternate title: Cognitive dissonance in software design. How to know if a design process is help or hindrance for good decision making? As the design activity consists of a myriad of decisions, all the way from idea to released bits and back, the whole quality of the outcome is the sum quality of those individual…


My Technical Readiness

The category of this post is Personal and is all about Technical Readiness, my own one. Analysis, synthesis (design), communication, specification, abstraction, logic, assumptions, generalization/specialization, objects, properties, behaviors, classification, and more…are all required skills for good software design. Studying philosophy is a good way to get deeper on those very skills. Guess what? I am…


Product owner

Writing software for my own—or my kids—use and delight is almost always a fun and successful endeavor, if expectations are not well managed, I throw it away, no problem. Likewise, when programmers write software for their own use, there are more chances the software can be steered gracefully to a useful end. It is quite…



The act of writing demands some skills from the writer, skills of the intellectual kind. Of course, the demand varies accordingly to the type of writing among many other factors. Writing texts for humans, from blog posts to literature, is challenging if the purpose is to convey a message in a clear and concise way,…


SQA — Are you–really–making sure that quality is present?

What is the idea behind SQA? If SQA stands for “Software Quality Assurance”, then I hardly find a project team member not under that cap —in a team with agile principles, values and practices, that is. If SQA stands for “testing” (validation and verification testing, for functional/integration/acceptance testing purposes) then I think the old practice…



Bertrand Russell 1/3 Bertrand Russell 2/3 Bertrand Russell 3/3 Ludwig Wittgenstein Contra Socrates


Where are we -as industry- about delivering business value to customers?

For a hint, see the The Standish Group CHAOS Report summary: CHAOS Report Summary 2009 “These numbers represent a downtick in the success rates from the previous study, as well as a significant increase in the number of failures”, says Jim Crear, Standish Group CIO, “They are low point in the last five study periods….


Is there such a thing like a method of design?

I have observed, time after time, an author or renowned professional share or publish her opinion about something, said, in time T1. Many people listen to that opinion —with accuracy or with misinterpretation— and then take that view for granted. Moreover, many, many people start behaving like propagandists of such reinterpreted or particular view; they…


Central piece of code as a cornerstone for a tool

Sometimes, the idea of a tool could gravitate around a very simple piece of code, an enabling mechanism that gives life to a much larger functionality. That is the case of a simple tool I am writing for my own use. It is an application, based on Windows Presentation Foundation, which help me to upload…


The importance of doubt in software design

The acts of exploring and discovering which start from simple doubts —kind of ‘I am not entirely sure about…’ thoughts— is what makes software design and computer programming so exhilarating for me. Doubts from the efficiency or balance of a given design decision to the net and long-term benefits of traditional beliefs about the software…