Marco Dorantes' WebLog
"Computer science is no more about computers than astronomy is about telescopes" -Edsger W. Dijkstra
What type of person should design software?
An intent to specify and control the behavior of digital computers. That could be an answer to the...
Author: Marco Dorantes Date: 02/17/2007
Analog Computers. Could I sometime put my hands on one of those?
As far as I can remember there are analog, digital, and hybrid computers and I have been involved...
Author: Marco Dorantes Date: 02/17/2007
Enabling better levels of multi-paradigm design adoption
There are a number of powerful design concepts and constructs available in programming languages...
Author: Marco Dorantes Date: 02/05/2007
Designing distributed server-side Windows applications that scale very well
In my view of object-oriented design, what makes it different from other software design schools of...
Author: Marco Dorantes Date: 01/28/2007
Software design epistemology and The Three Pigs
There is a notion that philosophy starts in the vast ocean of abstractness, unconcerned about the...
Author: Marco Dorantes Date: 01/28/2007
Do you amass nasty feelings about your designs?
I remember the time when structured programming lessons first came into my attention. Control flow...
Author: Marco Dorantes Date: 01/13/2007
Essence of process improvement: closed-loop feedback
A good development process includes the way to re-define itself based-on self-critique and...
Author: Marco Dorantes Date: 12/23/2006
You can have joy even if you do not have fun
Kent Beck’s words on a recent talk resonate very well with me; I am thankful having a joyful...
Author: Marco Dorantes Date: 12/23/2006
“Why do I have to turn off parts of myself to work here?”
I just heard this question from a programmer, as Kent Beck told in a recent talk (Ease at work)Wow!...
Author: Marco Dorantes Date: 12/17/2006
People, people…all the important things are about people, of course
There are admirable pieces of work in writing, this time I want to bring to your attention one that...
Author: Marco Dorantes Date: 12/17/2006
CMMI and Agile are just not comparable
There are oranges, there are apples. What —on the face of the Earth— are you trying to do when...
Author: Marco Dorantes Date: 12/17/2006
Philosophies of computer programming are closer than they appear
What we are inside —not our organs of course but deepest inside— is given by our personal philosophy...
Author: Marco Dorantes Date: 12/16/2006
What are programs?
Curiously enough, the books and references about software development and software engineering I...
Author: Marco Dorantes Date: 12/16/2006
Essence of good design: underlying abstractions
There are a bunch of properties that count for good software design. Many pillars of our trade...
Author: Marco Dorantes Date: 12/09/2006
The Problem with Programming – Interview with Bjarne Stroustrup
Here are two parts of an interview with Bjarne Stroustrup, as usual, his perspectives are worth deep...
Author: Marco Dorantes Date: 12/08/2006
Recursive functions
My young nephew came with a question about recursive functions, after a few minutes, he fully...
Author: Marco Dorantes Date: 12/02/2006
Outstanding articles on splendid subject matters
From time to time, I read past issues of outstanding magazines and journals like: Journal of...
Author: Marco Dorantes Date: 11/03/2006
Learning feels good, understanding feels yummy
There is kind of pleasure in knowing things. Recently, I understood more about why is that: it seems...
Author: Marco Dorantes Date: 10/22/2006
Anonymous method trivia
Consider the following C# 2.0 code:using System.Windows.Forms; class form:Form { form() { int...
Author: Marco Dorantes Date: 09/26/2006
A more efficient iterator pattern implementation since C# 1.0
Yes, there is CLR 2.0 now, with C# 2.0 generics and iterators. Yet, the more design tools for your...
Author: Marco Dorantes Date: 09/26/2006
What are pointers?
Today, my young nephew came to me with the question "What is that thing called 'pointers' in the C...
Author: Marco Dorantes Date: 09/16/2006
Science/engineering or art/craft - Does it matter at all?
There is that old debate:Is it a science?Can software design and programming be considered a...
Author: Marco Dorantes Date: 09/12/2006
Designing a software service interaction using WSE 3.0
You know, a software service, a piece of software that can be invoked from just one client to...
Author: Marco Dorantes Date: 09/05/2006
The attention where it belongs (and it is not in the marketing hype)
Reading the following article was refreshing, there are conscious software professionals that this...
Author: Marco Dorantes Date: 09/04/2006
The Underlying Theory of Project Management is Obsolete
I would want to point out some piece of tacit or unspoken truth –many people know it but very few...
Author: Marco Dorantes Date: 09/01/2006
The source of many design and programming problems: unchecked assumptions
In a recent project, we faced a problem with our system. We just found and resolved the problem....
Author: Marco Dorantes Date: 08/30/2006
"Look, this also is very important..."
Among many things to consider for successfully deliver your project, please take into account this:...
Author: Marco Dorantes Date: 07/31/2006
Theory and practice complement each other well
"Those who are enamored of practice without theory are like a pilot who goes into a ship without...
Author: Marco Dorantes Date: 07/17/2006
A test-driven design style for database-based applications with VSTS
If you are designing an application test-drive using Microsoft Visual Studio 2005 Team Edition for...
Author: Marco Dorantes Date: 07/13/2006
Designing scalable systems
This is an important work for the Spanish software development community, the issues involved with...
Author: Marco Dorantes Date: 06/25/2006
Running a software company
An absolutely essential factor in running a software company effectively is the vision from a real,...
Author: Marco Dorantes Date: 06/23/2006
Agile mindset: pigs or chicken
There are ham-and-eggs for breakfast —read: the current development project; there are two positions...
Author: Marco Dorantes Date: 05/15/2006
An embryonic profession: poor and misleading ways of formalisms
Design and programming activity as a profession is better performed with mathematics and applied...
Author: Marco Dorantes Date: 05/14/2006
Reflecting in action: programming other algorithms
As part of the same preparation I really enjoyed to program a classic:Which are the 92 solutions to...
Author: Marco Dorantes Date: 04/24/2006
Reflecting in action: programming simple algorithms
In preparation to write some papers about software design techniques, I am planning to illustrate...
Author: Marco Dorantes Date: 04/19/2006
A basic and focused utility to send SQL statements with ADO.NET
Sometimes, I just need to quickly send SQL queries or commands to a SQL database one by one or in...
Author: Marco Dorantes Date: 03/09/2006
Argument processing and C# 2.0 iterators
Sometime, you want to process this command-line argument: C:>aprogram arg0 arg1 @arg2 arg3 @arg4...
Author: Marco Dorantes Date: 03/04/2006
Dependency management: Coupling and cohesion
Dependency management turns ugly when Assembly A gets a transitive dependency (in red, the slash...
Author: Marco Dorantes Date: 02/06/2006
Dependency management with CLR Assemblies and Types: Relationships
I keep in mind the following concepts when designing with .NET Framework assemblies and types; that...
Author: Marco Dorantes Date: 02/05/2006
Professional testing = Applied epistemology
I am getting some acquaintance with the trade of professional testing; it is just amazing how far...
Author: Marco Dorantes Date: 02/04/2006
How MDA could not be just another CASE fallacy?
If, and only if, MDA proponents articulate a new kind of general-purpose source code at a higher...
Author: Marco Dorantes Date: 02/03/2006
Pillars of our trade
Very good article in IEEE Software January/Februry 2006 magazine:Looking for Powerful Abstractions...
Author: Marco Dorantes Date: 02/02/2006
Concurrency concepts now, more than ever before
Multi-core microprocessors, hyperthreading and other technologies surely on the way to the target...
Author: Marco Dorantes Date: 02/01/2006
You are 100% accountable for your source code
It is just amazing how the mainstream software development industry is behind the times in...
Author: Marco Dorantes Date: 01/28/2006
Taking software engineering seriously
Why this is important? For me, this is important because as a practitioner of the trade I have a...
Author: Marco Dorantes Date: 01/11/2006
John Vlissides
John Vlissides passed away on Thursday, November 24, 2005 https://www.c2.com/cgi/wiki?JohnVlissides...
Author: Marco Dorantes Date: 12/10/2005
Skillful software design and the scientific method
Many professionals have observed the commonality between skillful software design and the...
Author: Marco Dorantes Date: 11/18/2005
Helping others with software design
Prescriptive help has its place in organizations, no doubt. Looking for other words for the...
Author: Marco Dorantes Date: 11/15/2005
Code is model - it depends on the code, of course.
Is this paragraph poetry?That depends on a number of properties in it.If it has the properties from...
Author: Marco Dorantes Date: 11/13/2005