sexta-feira, 3 de agosto de 2012

Event Sourcing the Census

[image from here]

On the past weeks I've been working o a NGO like project to gather specific social data. Much like an official government Census, but using social networks and of course less official. But one aspect of the hole thing kept me aware of the time dependency of the data.

An idea that seamed to me largely related to the problem was the solution proposed by Event Sourcing in software engineering, which I've discovered through a Greg Young lecture (topic also explained in a Martin Fowler post). But very briefly it states, don't record state, record events. Why? well, mostly because events keep much more information, which are destroyed when collapsed to the entity current state.

With this in mind, and mixing both ideas, an official census is always an state polling right? In a given period of time (normally years), census representatives poll citizens about their current status (living conditions, job, kids,...). But this is not an optimal solution in terms of the data, which is the role purpose of making a census, to gather data!

Wouldn't it be better to know when changes in the state happened? for example, instead of asking people every 5 years if their children already finished high school, it would be much better to know when the children graduated.

With this simple change we have a broader view in our hands, we can know, for instance, how many graduated at the expected age? or is there an year that the high school graduation is larger than expected? does it relate to some other events? Is there a pattern in the events measured?

My little project targets a very specific and small question, but to me is being an opportunity to validate the event aspect of citizens public data. I hope it works and possibly expand the idea to other important fields.

Nenhum comentário:

Postar um comentário