January 15, 2016

The resolution of Politika.


In this post I am going to tell you where I spent way too many nights of my past 4 years, roughly from 2011 to 2014. I have the urge to put all my thoughts in one place, wrap up aìsome conclusions, and possibly learn something out of this experience. For this purpose, I find writing terribly better than the sole act of thinking.

The story

First attempt: It was 2011 :)
It all started around 2011, when a friend of mine, who was up for a local election, used simple math on Excel to forecast the the number votes he was going to get. It was a major improvements compared to the method he was taught to use by his senior in the party. Indeed his forecast was way better than the old method. So we designed a SaaS around this concept, and one candidate for the next Regional Elections even used my software (how fun to unify development and deployment!) . Equipped with some analysis, we thought it was a valuable software: it solved a real need (the need to forecasting the election in order to tune your effort during the campaign) an order of magnitude better than other solutions.

For various reasons, the other members of the group left, but I kept developing the software on my own.
 
None of my ties (as far I as I know) saw the potential of the idea as much as me. In my humble opinion, the value of this initial product was not simply the ability to give some nice forecasting and statistics, but I saw it as an "advanced MVP" to get a distribution channel for shipping further products, a powerful tool to support strategic decisions during electoral campaigns, a great advantage among future competitors (since we would have the data of the people running the elections), and last but not least, a powerful tool to earn more votes. I must admit though, that I have developed this idea during the years.

 

 Erasmus

I took the major decision to refactor my codebase. In this period I started focusing on developing a decent UX, with an adaptive GUI. I learned how to make the application attractive and a little bit addictive. I also studied machine learning, and I started thinking about which algorithms to implement in the data mart, and started thinking deeply about which kind of data I needed to get more useful information for the users.

Post Erasmus

This period ranged from the summer of '14  (and a few months in '15). In those months I understood the importance of a clear strategy, and I started to figure out which could have been the possible playground for the interactions between technology and politics in the next years.

Critica della democrazia digitale (tnx Stanis for the picture)


I have discovered the amazing work of the Civic Informatics Laboratory of Università degli Studi di Milano, where I had the chance to study real-cases where technology has tried to interact with PA and people in charge of local communities, in the specific case of Participatory budgeting. I also had the luck to read  Crtica della democrazia digitale by Fabio Chiusi. This book, so good that I felt both astonished and enlightened, was a crucial milestone in giving me a clearer international context on a more wider theme, and a preventing me from making mistakes already made by others in similar projects.

I became (and shortly after resigned) the Digital Champion of my town.

I started profiling similar companies.

I failed to achieve a "sub-project" that would let me have more data to work on. I had a request from a couple of companies, to develop a specific crawler which I happened to need as well. In that period a friend of mine specifically asked me for work. I managed to give him a (secure) salary, and I promised to him to give him all the technical support he need, but he never started working. I'm not 100% sure it's my fault, but this is other food for thoughts. (Didn't tried to find other developer for the lack of trust in other profiles or in strangers)

I got in touch with a few entrepreneur friends who were willing to fund me with some money in order to finish the software.

 

Last months

Hypotheses: tackle the user base fragmenting by age.
My TODOlist was transforming into a sketchy business model.

In the meanwhile, I selected (through crawling and data analysis of open data) a sample of users: mayors and public offices elected, who were under a certain age.

I pivoted the web MVP into another software: a python crawler for the website of some Italian newspapers. My idea was to log the comments of users and find matches of those user with Twitter and Facebook data in order to collect demographics and do sentiment analysis.

I crawled google so much that I was even able to find some chapter of a still-to-be published book on the relation between elections and big data.

In these months I also started designing some surveys to send to the first user I selected.

 

Why I decided do quit

Quitting a project like this is by no means easy, and I slowly came to this decision. I decided to take the rough with the smooth, and I gave up to the difficulties.
  • I noted, when I started to make networking to seek for possible early-adopters, that I didn't like so much the kind of environment and culture that you can find around politics. It must be said though, that this all by itself wasn't a sufficient condition to quit. The idea of changing country and starting from scratch was soon discarded: the value of my network and the ease I had to reach potential user in Italy, made the choice to move silly.
  • Perhaps given my high expectations, I wasn't able to find fully-fledged partner ( I haven't been looking for one outside my circle, though). Among the few people with the kind of mindset I want none of them is interested in a project like this.
  • Last but definitely not least, and this perhaps is the sufficient condition, I had to take the decision whether to pursue this project or my thesis. I choose, with no regrets, maths.

 Outcomes, takeaways, and lessons learned

  • The RESTful web application I wrote (the actual MVP) got me a 30/30 mark for the lab part of an exams. :) The software was an overkill. Cold comfort, but still better than nothing.
  • A few months ago I received a job offer to develop similar software. I declined the offer for various reasons, including that I was already oriented towards a PhD abroad, and frankly I had enough of this topics.
  • I have a basic knowledge on business, a subject which was very obscure to me before. I feel I can approach this kind of problems from a whole different point of view. As a tech guys, I was too focused on the technical details.  I have studied Business model generation, The lean startup, How to Start a Startup, From zero to one, The McKinsey way, Addiction by design,and HBR on strategy, blogs, and maybe other sources I can not recall now.
  • I discovered many subjects too: from courses on group management to courses of User Experience and User Interface.
  • Focus on the technical part, but do not focus on details. It does not means that you should not have an MVP as soon as possible, it menas that you must have the right MVP that satisfy two necessary conditions: is good enough to test your hypotheses on the market, and is good enough to let you go where you want to go next. It also means that you must be technically excellent, because the MVP is not what should keep you busy at night. There are many, many other problems to think about.
  • I think a tool like Mathematica is really valuable tool to test some hypothesis and forecast outcomes of your choices, and more generally to simulate your business model ( given a good template which might take a few days to have ). Think of it as an improved spreadsheet. Sure thing is I will keep this trick up my sleeve for the next round :)
  • I made some experience in designing a market strategy and designing a MVP, sketch a drafty business model, which is by no means a bad experience to make in your twenties.
  • Technically, I learned to use a web framework and some tool like bootstrap, but most important thing, I have learned how to take critical decisions on the technology to use for a full-stack software, eventually design an architecture that scales, and  think part of the security infrastructure.
  • There's a thin line between commitment and obsession. I am not saying that you shouldn't cross it, but beware when you do it.
  • I learned also something on other people too: I struggled trying to motivate other people to help me with small or big software, even when they asked me to help. As a proverb in my dialect say: "Al è di bant provà a insegnai al mus: si piert timp e si infastidis le bestie", which roughly translates to "it's useless to teach to a donkey, you waste your time and you piss off the animal".

 Conclusion:

  • I have learned to watch this kind of projects under a totally different perspective which take into consideration aspect such as financial, legal, ethic, strategic, and so on.  
  • I hold the conviction that I would have never assimilated the same amount of notions (which I hope one day will be useful) quicker if somebody would have taught me. Although it must be said that 'learning by doing' has the pitfall that you might focus too much on getting the things done instead of learning properly. Talking of learning, one of the most precious lessons I will never forgot, is that I have to take into account the time necessary for learning, weather something practical (a technology) or theoretical (which is more difficult to estimate). 
  • Speaking about time necessary for learning something, it's an harsh trade-off between "time for learn academically" and "time for gettings things working".   (tnx Bardo for this suggestion)
  • As you can imagine, I have been really stressed. Being focused on such ambitious project is something that occupies your mind more than the time that you concretely work on it. It means that part of your thoughts, your worries, and your ideas during the days (and the nights) are going in that specific directions, preventing other thoughts and ideas from happening. I often find myself mumbling on what would I have become now if I did something else. I could have studied Topology, writing exploits :3, learn Haskell, c++, or Number Theory and so on. Or I simply could have indulged my some more things, like staying with friends without that sense of guilt of "I should be doing something else".
  • I was in the wrong place/environment to start something as such.
  • Me (left) and my friend's face listening to some pre-angel pitch's in Milan
  • It is not always a bad idea to leave things undone.












I hold the conviction that the phenomena of using data analysis to win the election will be more widespread in the future: we will experience a huge availability of any kind of data, and the algorithms for machine learning will be more and more studied, implemented, simplified and accessible, letting it become more and more cheaper.  I also think that company in this market, due to their perversity, knowledge and data they have collected, might play an important role in the evolution of a democratic system.

As I noted back in 2014, since the market in Italy is more oriented towards reputation management and reputation cleaning, and it comes to me with no surprise that some companies started going in that direction.


I decided to release some documents on github. The bibliography I used in my drafty business model - ( which is by no means exhaustive and complete ) might be useful. There are also some nice information on the business analysis, which include an extensive list of similar companies. Many part of the document are missing because either too drafty (some were even in Italian) or because are too private. I do not plan to publish other peaces of work because they are either irrelevant, obsolete, too private, or far from being a PoC.


    There are many things I could have been done better in order to increase my chances of success, but this is not the right post to talk about them. I warmly thanks all of the people who supported, listened, taught me any of the things that I had the chance to learn in this journey. My hope is that one day I will read this post again and I will shout out: "Oh my! How much stupid I was!", day which I hope comes as soon as possible. :) This was something fun to play with. 

    I hope the time I put into this project is not wasted. I'm sure will find something to work on in the following years and I will be able to play with many new tools.


    P.S.
    This post had been edited thanks to the suggestions of a few friends, whose MD5 of the name/nick is MD5(name.lower()) are:  78d6810e1299959f3a8db157045aa926, 78d6810e1299959f3a8db157045aa926, 5aeffa4eeb6beb43b24b1e8ea3da3c7a, 0581938f0767a65b373cea80e905c25f, 037c70dbc1c812f6b2091688804d7b17.


    Speaking about tools:

     Totally related music 

    Following the religious style of Wolfstep [1], here is a totally related song:



















    Wear your grudge like a crown of negativity.
    Calculate what we will or will not tolerate.
    Desperate to control all and everything.
    Unable to forgive your scarlet lettermen.

    Clutch it like a cornerstone. Otherwise it all comes down.
    Justify denials and grip it to the lonesome end.
    Clutch it like a cornerstone. Otherwise it all comes down.
    Terrified of being wrong. Ultimatum prison cell.

    Saturn ascends, choose one or ten. Hang on or be humbled again.

    Clutch it like a cornerstone. Otherwise it all comes down.
    Justify denials and grip it to the lonesome end.
    Saturn ascends, comes round again.
    Saturn ascends, the one, the ten. Ignorant to the damage done.

    Wear your grudge like a crown of negativity.
    Calculate what you will or will not tolerate.
    Desperate to control all and everything.
    Unable to forgive your scarlet lettermen.

    Wear the grudge like a crown. Desperate to control.
    Unable to forgive. And we're sinking deeper.

    Defining, confining, sinking deeper. Controlling, defining, and we're sinking deeper.

    Saturn comes back around to show you everything
    Let's you choose what you will not see and then
    Drags you down like a stone or lifts you up again
    Spits you out like a child, light and innocent.

    Saturn comes back around. Lifts you up like a child or
    Drags you down like a stone to
    Consume you till you choose to let this go.
    Choose to let this go.

    Give away the stone. Let the oceans take and transmutate this cold and fated anchor.
    Give away the stone. Let the waters kiss and transmutate these leaden grudges into gold.

    Let go.


    [1] A blog I used to read, which now has been closed.