I was pinged lately by someone bemoaning the state of SAP HANA developer tools and I was slightly surprised. I thought that SAP had done a fairly good job of making things available, but then I am a SAP partner, with paid access to downloads, test/demo licenses and support.
[edit 01/27/13]: This page has got a lot of foot traffic so I thought it good to clarify what this comparison is about.
Developers, startups and small companies make a choice of what database platform to use. Students and new talent in the market make the same choice. Sometimes that choice is made because of what people know, what's cool and trending, or what's open-source, what's cheap, or what's "expensive and enterprise class" - Jeff Bezos famously cited this as the reason why he chose Oracle for Amazon.com. There are a bunch of reasons that determine DB platform choice.
However, I believe that a lot of the time, people choose what is easy to access and so it's my belief that if SAP wants to be a DB Platform giant (and they do), they have to lead the way in developer experience. This comparison, and grading, is all about how easy it is to get started and develop your first app. It's about ecosystem latency.
So I chose what I believed to be the 5 (yeah it turned out to be 7 because of scope creep...) major database platform choices, and I scored them based on:
- Ease of finding the developer resource pages via Google
- Ease of getting signed up as a developer
- Ease of getting the the development platform up and running
I gave extra points for organizations that give flexibility and choice, and I dock points for:
- Needing to deal with a sales team to get access
- Needing to wait for approval to get access
- Bad user experience
Now you know how I'm judging them - let's get on with the analysis!
I googled "Microsoft SQL Server developer" to see what was available. Microsoft have had an amazing developer program since the 90s and I remember being a part of it during university. First link on Google is the Microsoft SQL Server Dev Center. Less than 60 seconds later I have a 64-bit version of Microsoft SQL Server Express downloading - without even a click-through license! This happens when you come to install it.
Whilst it's downloading, Microsoft displayed a 5-step getting started process with links to training content, assistance, Twitter and forums. I'm already pretty impressed - Microsoft have made it simple and easy to access their developer platform.
And I look to the right of the page - they also have a link to a 90 day free trial of their Azure SQL Cloud Platform. It's got some limitations - 35Gb of data, for example - but that's pretty cool. I looked into the pricing model and got very confused. Amazon clearly do a much better job than Microsoft at pricing.
If on-premise enterprise databases are your bag, Microsoft do a free 180-day trial of their full-fat Microsoft SQL Server 2012 platform. Also downloading within 60 seconds without a click-through. It's worth noting that you do need a free 180-day trial of the Windows 2012 operating system and a minimum of 4GB RAM. This is made available either as a full download, or a virtual image.
Once downloaded, Microsoft are masters of the developer experience. Installing software and tools is straightforward and the tools are a pleasure to use. There's no question - for on-premise software, Microsoft are the guys to beat.
[edit 01/27/13]: I reviewed Microsoft first, and having slept on this post, I realized that whilst Microsoft do make it easy to get their software, they haven't really innovated on open-ness. There are, however, a good collection of AWS packages for Microsoft Windows/SQL Server. IBM do a much better job of making the information easy to find.
Grade: B-. Microsoft have enabled me, got me up and running with their software quickly and I'm already developing on their platform.
I don't have such high expectations of Oracle: they have always been tougher with intellectual property. Maybe they have improved in recent years - let's find out. First impressions look great, there is a landing page for downloading the Oracle 11g software. You have to craft your Google search carefully, because googling "Oracle trial" lets you know just how litigious the company is!
Once you agree to the license agreement and click on a download, it then forwards you to a login page. A few minutes later and some fiddling around with bad support for the Safari browser, I'm busy downloading Oracle 11g. You can run this on the Microsoft trial version of Windows if you like, or you could run it on some variant of UNIX or Linux. The choice is yours.
The installer for Oracle isn't quite as friendly as Microsoft and the developer tools are not as polished. It's clear to me that becoming an Oracle developer is a more serious undertaking than in Microsoft. But then according to Indeed, Oracle guys are paid on average 10% more than Microsoft guys. Still, there's definitely a bit of a sense that Oracle haven't moved this stuff forward in the way that Microsoft have, especially when it comes to virtual images, and the cloud.
I also hear that Oracle have an in-memory database called TimesTen. It turns out that there is a download page for that too. Since I now have a login, it takes me 20 seconds to get this on its way down. I'm really impressed by the TimesTen hardware requirements: there is a 32-bit download if you need it (limited to a 2GB database, obviously) and on the 64-bit edition, it's just a question of how much RAM you have. Fair enough.
Grade: C. Oracle don't have the impressive platform that Microsoft have, but if you're a serious developer, that might be acceptable.
I bet you didn't expect me to go here. I'm immediately impressed: they have the domain developer.force.com which is a starting point for all development stuff. I see "Free Developer Edition" and click on it hungrily. It's a short web form with a confirmation email, and I'm in, in 60 seconds.
This is where I get the shock of my life: I blink, and 60 seconds later, I have written my first app. I barely even saw myself do it, and it gives me a guided tutorial of what I built. I'm not in the mood to take this too much further but I can see there are means to write code, develop database apps and create reports and dashboards. It's all frighteningly easy. It is no wonder that there are so many Force.com developers.
[edit 01/27/13]: Amigo Chen, see comment below, suggested that I actually review database.com - In fact I did, I just got my terminology wrong. Salesforce.com is the company, force.com is the platform and database.com is the database. That's what we're talking about here.
[edit 01/27/13]: This post got a lot of love from the Salesforce.com community, including Benioff. Let's be clear - SFDC has the best developer experience. Does it have the best app platform? I'm not so sure, and that's not what this article is about.
SAPs site: "Grade: A+. Developing an app with a cloud-based platform within 60 seconds. This is the bar to aspire to."scn.sap.com/community/data…— Marc Benioff (@Benioff) January 27, 2013
Grade: A+. Developing an app with a cloud-based platform within 60 seconds. This is the bar to aspire to.
In for a penny, in for a pound. Workday's Developer Network (WDN, remind you of anything?) is easy to find but I'm as surprised as I was with Force.com. Workday developer access appears only to be available to Partners and Customers and the web pages are confusing and poorly laid out. I give up.
[edit 01/26/13]: Naomi Bloom pointed out that Workday was deliberately not a database platform. I'd assumed that it was, at least to its customers. Their lack of openness gets a thumbs down from me, but it's unfair to grade them.
[edit 01/26/13] This section added with thanks to Vijay Vijaysankar of SAP. Once Blue, always Blue!
My first impression of IBM is they have gone to the effort of creating a brand that is developer-focussed: Developerworks. I went to download the free-of-charge DB2 Express, and this requires the creation of an IBM ID, which took about 60 seconds, plus a confirmation email. One thing I noticed was a Mac OS X Version - the only on-premise solution that has this here, which is pretty cool. From there it's a direct download.
IBM also has cloud provisioning options. Whilst IBM's Smart Cloud requires you to contact an account representative (I can't be bothered), the link to Amazon AWS take you right to an AMI (Amazon Machine Image) where you can directly buy the software. Nice. $111 a month gets you a one-year contract for an 8GB RAM system, or it's $0.32 an hour, and you can get started right away.
I moved onto DB2, which is available on a 90 day trial for on-premise use, plus a cloud option on a variety of different providers - very impressive. To download it I had to provide a phone number. After that I can download any version for a 90 day trial, either as an installer, or as a VMWare image.
With DB2 in the cloud, you have the same list of options and I chose AWS. You can only get DB2 Enterprise if you use IBM's SmartCloud but DB2 Workgroup Edition is available on AWS. This is $1.32 an hour, or you can Bring Your Own License if you have one already.
Grade: B+. IBM clearly outdoes Microsoft because of the variety of options. Whatever option you want, IBM has a solution for you. Awesome.
I found the developer site at developer.google.com pretty easily, but it doesn't work unless you're on Google Chrome (yuck, Internal Server Error). That's ridiculous. I'm then faced with a vast number of options... and totally confused. Google has clearly a huge ecosystem but I have no clue where to start.
Some while later I have muddled my way through the confusing user interface and figure out how to use their App Engine to generate a simple web app. I'm surprised by the complexity compared to Force.com. That said, I know how very powerful apps can be built in this platform and I suspect it's just an up-skilling problem. Google could do much better with the user experience and on-boarding.
Grade: B. Fantastic potential and easy to get started if you know how, but a very unintuitive user interface.
I feel I've done enough research now to do a proper analysis of SAP's developer access so it's time to fire up a fresh browser. It's fair to bear in mind that SAP does have quite a broad portfolio of databases, though that could be considered confusing to developers.
First up, Sybase ASE (Sybase's relational RDBMS). I find the download page easily and I'm off downloading the software fast. There's not Microsoft's sparkle for making it easy to get started and the Sybase database is reminiscent of Oracle (amusing, given that it shares lineage with Microsoft SQL Server). ASE is certified for use in AWS but I can't find pricing or an image.
For Sybase IQ (Sybase's columnar analytics database) it takes me longer to find the download page for a 30-day trial (who does 30-day trials of database software?!) but one of the forums has a direct link to the latest version of the software. There is also an Express Edition available and a Developer Center (no, wait, here's another) but the web pages are fragmented and confusing. I guess the design thinking team were asleep at their desk that day. I can't find any cloud based editions of IQ, nor any virtual images.
Now onto SAP's flagship database, SAP HANA. I google "SAP HANA Download" and start to feel rather nervous:
It appears there is no free download of SAP HANA. You have to sign up to be a partner to be able to download it and pay a substantial yearly fee.
So I've found there is a 30-day trial of SAP HANA in the cloud. It's running an old version of SAP HANA 1.0 SP04 and you have to register for the SAP Community Network to get onto it and then wait 48-hours. If I want to get going with SAP HANA right now, I can pay $2500 a month to Amazon for HANA One, which is 60GB of HANA. Alternatively I can pay uCloud $207 a month for a 16GB instance, which will get me started. But I'm cheap so I'm done.
[edit, 01/28/13] - So there are developer editions of SAP HANA for AWS available here that cost $0.45/hour all-inclusive for a basic 16GB instance. If you buy for a year in advance that's $150 a month, which isn't so bad.
[edit, Greg Chase asked me to review NetWeaver Cloud. It's kinda out-of-scope but does run on SAP HANA]
NW Cloud is SAP's cloud-based app platform. I'm feeling hopeful here as I google "NetWeaver Cloud" and the first page says "Get your free SAP NetWeaver Cloud Developer Edition in 5 minutes". I click, eagerly. You need to register with SCN to get an account, which is fair enough and I then have to go through a set of screens to accept the product, after which I get the message "Access was denied due to export control restrictions."
Grade: D. Software availability is poor and web navigation confusing.
My first conclusion is that the on-premise database vendors (Microsoft, Oracle, IBM, SAP) are all at varied degrees of maturity with their developer experience. In order, it's 1) IBM, 2) Microsoft, 3) Oracle and 4) SAP. IBM in particular has a really good option of AWS cloud instances that make getting running as a developer easy, and on-premise software that's easy to download.
Of the cloud DB vendors (Salesforce.com, Google) - and in fact overall, we have a winner in Salesforce.com. I sat down with SAP co-CEO Jim Snabe last year and told him that he has to think about the developer experience as a process, which starts at a thought and ends at an app - and then obsess about making it easier. This is what Benioff has done with Salesforce. Every piece of unnecessary latency has been taken out of the process.
I'm not convinced that the Database.com platform can compete feature-feature with the SAP HANA and NetWeaver cloud platforms (let alone performance), but for startups and new people deciding what platform to use, that's often not a factor.
The hard truth is that SAP is way behind even Oracle, who allow a free easy download of their in-memory database. And that's without taking into account that what the ecosystem needs is a ton of small developer shops producing amazing apps. Those guys don't have time or patience for the process and cost involved in becoming a SAP HANA developer.
And the fact is this: if SAP wants to be a serious database player, it needs to get access to developers, fast. Here's what's needed:
1) A free download of SAP HANA for Linux and Windows and as a VMWare Image. Yes, I know it needs lots of RAM. RAM is cheap.
2) A for-sale developer appliance (Mac Mini or whatever) with 16GB RAM. Yes, it works, I've tried it.
3) A free developer cloud edition with 16GB RAM. Put a system together that pauses them and saves them to disk when not in use.
4) A revamp of this SCN website. It's buggy, hard to use and the database platform tools are all in different places with different user experience.
So, I'm throwing the gauntlet down. SAP wants to be the #2 database vendor by 2015, and to do this it needs as good a database developer experience as Force.com. Microsoft and Oracle are an interesting comparison, but they're not the bar.