5 ways MongoDB makes you a better (and cooler) technologist

In my last post I wrote about how I fell in love with MongoDB and I told you how it strongly influenced my work for my master thesis.
Now I would like to reflect on how using MongoDB made me a better technologist (I realized just now that in italian there is no word that translates "technologist", perhaps it's time to find it!).

1) It changes the way you see the world.
I work as data analyst for an italian company. I access data through a big relational datawarehouse, that means that everyday I have to perform huge and complex SQL queries on several tables for accessing the informations about a single customer. Sometimes I stop and stare at the results of some queries, counting how many empty fields are there and how sparse these tables are. In these moments I can't help thinking about MongoDB. I love relational databases  (even if my database professor still haunts me in my nightmares)  but still.. my work would be so much easier and faster if we could store all the data about a customer in one document, not to mention the amount of space that could be saved without saving tons of empty values! This thoughts would have never come to my mind if I hadn't tried data analysis with non-relational database, but now that I did it is really hard to go back so that anytime I face a new data-related problem I now ask whether it is easier to solve it going No-SQL.


2) ..and when you change the way you see the world you change the world you see!
Ok, this are not exactly my words. Actually they come from Satya Nadella, CEO of Microsoft. I think he is one of the most inspiring people alive and I really love this quote. The point is: I saw how things would be better using a No-SQL solution, now I want to make it happen. I know it doesn't depend all on me and that I'm just a drop in the ocean.. but hey, without me the ocean would have a drop less! (No, neither these are my words, I challenge you to guess who said them).

3) It makes you cooler (or at least a cooler data scientist!).
Let's have a "Sliding doors" moment: what would have happened if I had never met MongoDB? I could stand to do a boring project for my big data class but... what about my master thesis? I would choose a different technology for my data layer, but with no experience with any of them perhaps I would have picked the wrong one, or even worse I could have abandoned the idea of integrating non-relational data at all. So my amazing and innovative thesis in this parallel universe would have been something like: "how to integrate data: the old-fashioned way". This is not cool at all. I don't even think they would allow me to graduate with a thesis like that. MongoDB allowed me instead to make my innovative research and to face problems that were never faced before, writing a thesis that was one of the first works about ontology-based data access with non-relational sources.

4) It makes your work easier (if your work is doing data stuff)
I wrote a Python script for storing tweets (either in streaming or search results) on MongoDB in about half an hour. Now everytime I need to perform some Twitter analysis I just have to launch my script, grab the data I need and then perform some queries using MongoDB's aggregation framework. That's it. In less than five minutes I can tell you the top ten locations in which people tweeted about One Directions in the last 24 hours. Real-time analysis is easier than ever, as companies like the italian Datalytics (that uses MongoDB) are showing. 

5) It let you express your creativity (and it also let other people understand it!)
When I write queries (but it happens also when I code) I follow a stream of consciousness that would make James Joyce proud of me, so that I usually spend more time explaining others what a query does than actually writing the query itself. This usually happens with SQL, where I use mostly the basic operators. Can you imagine what could I do with all the MongoDB aggregation operators? Well, despite the number of operators I find MongoDB's query language far more "readable" (and "writable") than SQL, so that even the most complex queries can be easily understood even from those who are not so familiar with the language. Not to mention the operators themselves that allow you to perform any kind of operation you can picture.
 

So actually I can really say that using MongoDB really influenced me as "person who does cool stuff with technologies" (sorry, I'm still not used to the word "technologist").

As always if you have any question or if you want to share how you say the word "technologist" in your mother-tongue just let me know in the comments!

  

Commenti