Marco's Blog

All content personal opinions or work.
en eo

The 10 Most Common Mistakes by Tech Job Interviewees (and How to Work Around Them)

2010-10-13 15 min read Architecture marco
The job market is very tight and even if you are the smartest guy around, with tons of experience, and no salary requirements to speak of, you might find it a tad difficult to find a new position. That’s particularly true for those that are just starting out, or who have been out of the game for a while. Unless someone is actively pushing your name somewhere, you’ll see it’s harder and harder to get that job landed. Continue reading

Femininity - the Missing Half of Science and Technology?

2010-10-05 8 min read Architecture marco
I am a man, in the most stereotypical way imaginable. I suffer from all the symptoms of the condition – the hair slowly starting to grow where it shouldn’t, the quick temper ready to flare up for virtually no reason, but most of all for the way I think. You could possibly try to call me sexist because of saying this, but there seem to be marked differences in the way the male and the female brains work. Continue reading

The Role and Importance of Quality Assurance (QA)

2010-07-03 8 min read Architecture marco
There is a moment where the young and enthusiastic learn that seat-off-the-pants is quick but eventually leads to catastrophe. You can tell at which stage engineers are by asking them what they think of QA: if they think it’s an occupation for the lesser divinities of programming, they aren’t there yet; if they have enough experience, they will think of QA engineers as demi-gods whose verdict makes and breaks months of coding. Continue reading

Security Matters

2010-06-02 14 min read Architecture marco
When I was little, I recall watching this popular science program in which Peter Ustinov popularized the theory of relativity. There was a rocket, a man on the rocket, a launch of the man and the rocket, and a transmission from the really fast man on the really fast rocket. The man on the really fast rocket saw earthlings slow down. Conversely, the earthlings saw the man talk really fast. Makes sense? Continue reading

Web 3.0

2010-05-26 6 min read Architecture marco
People have been thinking about the next generation of Web ever since Web 2.0 landed and got its incarnation in Friendster, MySpace, Facebook, and Twitter. No conclusive Web 3.0 road map has ever convinced me, though, so I started thinking about my own one. I started looking at what made Web 1.0 and then Web 2.0 and decided that the trend could be extrapolated from there. The approach, I thought, should be Hegelian: every manifestation of the Web should solve a problem, create a new problem, and find its own solution in the next one. Continue reading

Open Source and Interfaces

2010-04-27 5 min read Architecture marco
One of the things that complicates the development of software in the open source world is the enormous variety of different interfaces you have to deal with. This is eminently an architectural problem: interfaces need to be defined ahead of coding, and if you just start developing your own project, you have no need for uniformity across projects. Initially, of course, there is no standard and hence no interface. Later, separate projects come up and they make a point of having different interfaces to better spread and create incompatible ecosystems. Continue reading


2010-04-12 11 min read Architecture marco
There is this whole motion afloat, trying to declare SQL bankrupt and do without. Instead of SQL, one hears, there are going to be much better databases in the future. Dozens of projects are floating around, each with a different notion of what “better storage” mean, all aiming at being better data stores for the Internet. Now, it is clear that SQL databases have their supreme annoyances, and the need for reform is clear. Continue reading

MVC I: Hierarchical Views

2010-04-12 3 min read Architecture marco
I thought I’d start this architecture blog with a post on one of the things that, traditionally, have given me the most heartburn: the implementation of view in MVC architectures. As a refresher, MVC is by now the standard architecture for most applications, web or not. It stands for Model, View, Controller. Model is the abstract representation of the data you are handling (for instance, invoices). The view is the particular representation of the data (for instance, the invoice edit screen). Continue reading

printf(“Hello, World!”);

2010-04-10 1 min read Architecture marco
I’ve been working on the architecture of Internet systems since 1994. It’s been a wonderful time, one that has seen software architects move collectively from obscure geekdom to running the development departments of the biggest Internet juggernauts. The best of times and the worst of times, frequently very close to each other, sometimes even coinciding. I find that the world of software needs a lot of architectural attention. You won’t agree with all my ideas of how things should work, but I guess you’ll always have an opinion about them. Continue reading