MongoDB for the non-technologist – It is not just what we make, it is what we make possible !


I borrowed the title from an inspiring Intel slogan from 2008. http://www.intel.com/content/www/us/en/history/history-2008-annual-report.html

How exactly does someone choose one database over another?

That of course depends on who the “someone” is – the answer differs whether you are a developer, and ops person, an architect, an executive or an end user. If you are a developer , an ops person , a consultant or another kind of IT expert, and you are reading this – you probably already know why you chose MongoDB over other databases. Your next step is probably to convince someone else on “why MongoDB “ . And typically that person does not come with deep technical background like you do.

A good part of my job is to explain to our partners and customers what is new and different with MongoDB – in non technical terms . And having done that a few times now – I thought maybe it is worth typing it into a blog post and get some feedback from my readers . So here is my attempt – I am happy to explain more, answer your questions and accept and fix any flaws in my current thinking .

I think one of the best ways to explain a database to a non technical user is to explain what kind of apps can be powered by it, how it will help the business and their day to day life.
It is not just what we make – its what we make possible with MongoDB that drives the massive adoption (Did you know that there are about ten thousand downloads of MongoDB every day now?)

So, what are the three biggest challenges that an IT organization faces today ?

1. Keeping pace with the business that seemingly changes its requirements every day.

It is not as if IT wants to say NO to every request that comes its way – it is frustrating to explain to a business user that “ can you add just this one field to capture this attribute?” is not like adding a column to an excel spreadsheet and altering a formula or two. Coming to think of it – I know many analysts at my past clients who will not alter their complex spreadsheets for fear that something will get messed up. Yet the same folks hate it when their IT colleagues say NO to their change requests. You have to change the data model, update information, change code in multiple places and there is a high risk of something else going wrong while you were adding “just one field to the screen”. So IT pushes back and introduces increasingly complex governance procedures , which further frustrates the business users. Some version of this story plays out every day in companies all over the world. There are tables that hold billions of lines – like sales orders, financial document line items etc where “just one field” to be changed takes months to fully implement.

RDBMS has many benefits – but to make use of it, you need to agree upfront to a given schema and then try everything possible to not change it after you start coding and loading data. I once worked in a project where an extra column in a table that is in production needed the approval of the CIO of that $40 Billion annual revenue company. With its dynamic schema (thanks to JSON) – MongoDB is a lot more flexible . You can tweak your schema as you learn more about data. This is not to say that there needs to be no schema design at all. It just means that you have a lot more ability to respond to changing requirements as projects progress. Bottom line – You don’t need to say NO as many times to business anymore.

2. Ability to start small and expand when needed

There are very few companies today that have an IT budget that is growing every year . Capital intensive projects go through increasing levels of budget scrutiny – and for good reasons . One of the reasons for this is the “scale up” requirements of many databases. Scale out is typically cheaper than scale up – it takes less money to daisy chain several small servers than buy one big server. But if the database does not scale out well – your hands are forced into buying a big server upfront and not optimally using it for significant periods in time. MongoDB takes this problem away – you can start small and expand footprint over time. I should add here that before you scale massively – some significant thought needs to be put into deciding the best sharding key .

The same holds true for skills. Developer productivity is an important core aspect to MongoDB design. There is practically a driver for every possible development language out there – java, javascript etc. This means you can get started on MongoDB with your existing skills and very little training. In my own case, it took me less than 30 minutes to download MongoDB (http://www.mongodb.org/downloads and http://docs.mongodb.org/ecosystem/drivers/ ) and write a hello world . There is a vibrant community of developers who help each other on the technology – and there is world class online education (and traditional class room training too in case someone prefers that).

3. The need to standardize on limited number of technologies

IT landscapes are heterogeneous in nature. While that is hard to change – most companies prefer to standardize on as few technologies as possible. This is especially true for the lowest levels of the stack like Hardware, OS and database .

Once the decision to treat a database as standard is made – the team gets used to thinking “why not the standard?” when new applications need to be built. There will always be some applications (say 20% of the total apps) that are clear candidates for RDBMS – like the complex ERP like transactions. There will be another similar set of apps (say another 20%) that are obviously great use cases for MongoDB. That leaves about 60% of apps that could go either way. Typically the “why not the standard we chose” thinking will impact this important decision that has really big long term impact.

Standardization on as few platforms as possible is definitely a good thing to do – as long as the project team knows what were the use cases that were used to determine the standard platform when the decision was originally made. Many of those decisions would have been made in the past where the requirements facing an organization today couldn’t have been possibly considered ( say like handling sensor data or needing projects to deliver into production every week or every month instead of once a year).

Database is one of those layers where there was hardly any revolutionary changes done for decades. So these platform choices didn’t have to revisited by few generations of project teams. But that is not the case today. With MongoDB, Hadoop and similar technologies – there are modern ways of satisfying the data requirements better, faster and cheaper.
MongoDB is a general purpose database – a technology that can solve a variety of use cases. Check out a small sample of these use cases here http://www.mongodb.org/about/production-deployments/ .

Platform standardization decisions are not only about technology differentiators alone. An equally important part is the ease of doing business with the platform vendor. At MongoDB – we want to be the easiest vendor for our customers and partners to do business with. We believe in complete transparency – like putting our subscription pricing and discounting information on public domain. https://www.mongodb.com/products/subscriptions/pricing . I wonder how many traditional database vendors can do business with this level of transparency .

So , that is what we make possible at MongoDB – we want to make working with the technology and working with us as a business partner as successful , frictionless and transparent as possible . Everything else is secondary !

A half dozen suggestions to SAP


Vishal has left SAP – and despite the abrupt nature of his exit , he has given the company a lot to work on . In a few weeks from now, Bill will be sole CEO and he gets a great set of leaders in the board and in the top ranks of the company . I think this is a perfect moment for the company to disrupt itself and gain some significant momentum .

In no particular order , here are my suggestions .

1. Split the company into two – apps and platforms – and assign them to two divisional heads with P&L responsibility

If SAP is to become a great platform company (it’s already a great apps company) – it needs specific focus . Platform is a nebulous term – but for true greatness, SAP needs to play in more layers of the IT stack . Similarly – apps that were created decades ago need to evolve without being constrained by pace of platform evolution . For the “cloud company powered by Hana” to be a reality – both apps and platform business need cloud as a vital component .

2. Go make some bold acquisitions

Look at BI and middleware from SAP for example . They have large install bases – but they are a bit tired . Surely some of the innovation can be done organically – like how Lumira started . But SAP doesn’t have time to just build all the way . They need to make bold acquisitions quickly on both platform and apps side .

3. Sunset products with limited upside

SAP has built and bought a lot of stuff over the years . There are many products (not naming them because people who run them are friends that I don’t want to offend ) that have low adoption or no clear forward path . Those products need to be sunset (or migrated to something new ) and investment redirected to new areas. And this will help field sales and customers quite a bit too in eliminating confusion .

4. Double down on business suite and BI integration

It’s really SAP’s sweet spot . Yet – there is very little actual integration between Business suite and BI platform . CRM has some embedded BI as I remember , but the whole “insight to action” thing never totally materialized . I hope that Leukert and Reh can fix this with the right partnership between the apps team and BI team . This game is SAP’s to lose .

5. Renew the focus of product management

SAP has always had great engineering abilities . Product management needs attention in my opinion – and probably could use some external hiring to compliment the in-house talent . I would also go one step more and say that PM should be closer to the Customer organization than to engineering . All innovation is customer driven – if PM gets more customer exposure , it can only accelerate innovation .

6. On platform side, become more channel and open source friendly

As much as SAP has great technology at its disposal , reality is that there is hardly a customer that can survive with as SAP technology alone . So it is a must that SAP actively increases the openness of its platform and connect to other technologies . I am not naive to think that Hana itself will now be open sourced – but it is worth considering for medium to long term .

Similarly – SAP could make more use of channel partners . With Rodolpho being put in charge – I have a good feeling that channel will get to be an important part of SAP business . There are plenty of products in SAP portfolio that could be sold through channel alone I would think

Vishal Sikka leaving SAP – My initial thoughts


20140504-150133.jpg

I had heard this news over the back channel yesterday . Having known Vishal for a few years , and having worked for him for a bit – It was a surprise, but not exactly a shock . This photo above was a picture I took the last meeting I had with Vishal and Hasso before I left SAP .

As a friend, I think this is a good thing for him to do. It was a big job with a lot of stress . He could use a breather before his next adventure . For a man of his caliber , there is no dearth of opportunity in this world .

For SAP, there is both a real issue and a perception issue to overcome . Bernd Leukert is a known and respected entity in SAP leadership – and I think will do as good a job as any one else to keep the ship steady . What Hana needs is a set of apps – and Bernd’s pedigree is all on apps side . He has Bjoern Goerke and other leaders to take care of technology. I am a tad surprised Bjoern didn’t get into Managing Board – but I am sure it’s just a matter of time . So I think SAP board did the right thing in picking Bernd to be Vishal’s successor . I do expect to see some “thought leadership” cues from Bernd (and probably Bjoern too) at Sapphirenow Orlando on how he sees SAP evolve .

It’s not enough to build apps – it needs to fit into the “we are a profitable cloud company” message, which probably needs a renewed focus on mobile business too .

Rob Enslin goes to executive board with Bernd – and I think that was a no brainer too . Rob is as good as the best sales leaders anywhere in enterprise software today. When Bill becomes sole CEO in few weeks , I expect Rob to be a solid general for him . Congrats to Bernd and Rob – very well deserved . I just wish SAP managed to keep Sanjay Poonen too . But Steve Lucas is still there – so there is no real shortage of top talent .

And I think this reshuffle helps Bill McDermott get a great start on his tenure as sole CEO with almost a completely new board to assist him. With Hasso and Jim in supervisory board, he should have plenty of support to chart a great course for SAP. Wish you the best, Bill !

What about Hana , Vishal’s little girl ? As much as Vishal was the face of Hana – there are plenty of people who are experts on Hana in SAP at all levels . The real question is whether SAP continues to keep a technology focus on Hana , or let apps take front seat again and Hana just powering everything in background . Success of a platform is based on apps built on it – so I am hoping SAP strikes a good balance on apps VS technology when it comes to hana . SAP is not breaking down Hana numbers for its quarterly reporting anymore – so I am guessing such an equilibrium will happen soon .

I hope SAP keeps the Hana startup program alive and well – and in addition focuses on building a deeper relationship with other type of partners (HW, SI, SW, Cloud). Ecosystem is SAP’s biggest advantage – and it is important that the company takes the partners in confidence as they transition product and engineering leadership .

I do feel bad for my many friends in SAP who work in P&I – it’s always painful to go through a leadership transition and it’s after effects . I can only hope that you emerge stronger on the other side . I can’t even begin to imagine what I would have had to go through emotionally if I hadn’t left SAP .

I can only speculate what Vishal is going to do next . With his eye for spotting technology trends and passion to see world change for the better – my best bet is that he will become a VC or an Angel investor . But then he could surprise me by choosing to be an entrepreneur again , or join a big company (unlikely but not discounting it ). But whatever option he chooses – I just want to wish him the very best and hope he takes some significant time off to recharge . Good luck V !