Category Archives: Performance

When Software becomes Bloatware

I recently took part in a BusinessObjects BI 4.0 implementation. The first thing you need to do after the server is up and running is to install the client facing tools. With on-premise, non web based (note – part of SBOP is web-based) technologies this means you need to go through the painful process of doing initial installs and patching. It took a solid 4 days just get one PC up to the latest patch spec. YES. 4. FRICKING. DAYS. To be fair, if you utilize some of the web-based features, it’s just a simple JRE install and you’re up and running. But that’s just for one piece of the whole solution set. So obviously my first reaction to this series of events is “Holy Bloatware Batman”!

So how does software become bloatware?

This happens all of the time in Enterprise technology and is no way limited to SAP products. How often do you hear “God Windows is so clunky” or “This thing keeps crashing”? Companies tend to buy on features that can help them do their business more effectively or more productively. Yet, you won’t ever hear an Enterprise CIO say “Well it doesn’t do XYZ but it is the fastest on the market so we’ll definitely use it”. And why not? Because the performance of the application is often overlooked as a major feature of the software. Read Jeff Atwood’s blog article about “Performance is a Feature” if you want to know more of what I’m talking about. I believe this overall concept is some form of Absence Blindess in that we don’t see performance as a feature of a solution unless it is of course missing to begin with.

What I find more interesting than anything is that most people tend to get more mentally frustrated when features are missing than when core features not performing well. A good example of this is Pixelmator versus Photoshop. Photoshop is super clunky. It takes a good minute or so to load up on my Mac. Pixelmator is very lightweight and generally takes 50% less time to load on my computer. I also rarely wait for the functionalities of the program to load. However I miss Photoshop’s Layer Style functionality. So much so that I tend to be willing to just switch over to Photoshop because of that one feature. Otherwise I sincerely hate waiting for Photoshop to load.

Letting your customers outgrow you

The guys over at 37 Signals, owners of the popular Basecamp project management tool, have a good preventative stance on this: Growing In vs Growing Out. They say:

We’d rather our customers grow out of our products eventually than never be able to grow into them in the first place.

Why is this important? Because they are actively promoting their software to preventing it to become bloatware. They realize that if they had more features it will eventually turn there customers away. One way other companies have circumvented this is to build add-ons or apps that are very modular. Meaning the user can add and remove as they go. This is important because the company can focus on the core technology while letting the user chose functionality over performance.

So to the Enterprise technology companies out there I must say to please re-consider your bloatware and stop the feature creep. Why? Because as soon as your products become clunky, you begin to represent what most visionary entrepreneurs see as a “market waiting to be disrupted”. Don’t believe me? Just ask Microsoft about Google apps and SAP about Workday. It may not happen tomorrow but it will happen eventually. My generation lives in a Google world, get used to it.

How to follow all things SAP HANA related (and more)

Recently I’ve heard from many people that they’re switching to Twitter for their source of news. Why? Because it does all the work for them. Many of the tweets that I follow normally supply a link to a blog or article worth reading. The only downside is the information overload and the excessive amount of “noise” that you need to get through to find the relevant information. Often, Google news (and web) search doesn’t cut it either. So, how do we effectively get through this noise? Here is where a service called Topsy comes in. It is a social search search engine and I think it helps a ton for finding relevant SAP news. For example:

Find news and information on HANA:
http://topsy.com/s?q=SAP+HANA

Find news and information on SAP BWA:
http://topsy.com/s?q=SAP+BWA

And my favorite, all news and information on SAP BWA, HANA, and In-Memory technology.
http://topsy.com/s?q=SAP+HANA+OR+SAP+BWA+OR+SAP+In-Memory

No more need to constantly check your twitter updates, or your RSS, or your feed burner. Just search here. I’m trying to think of ways how I can use the API to provide an even more meaningful way to bring these topics to the people who care. I think there should be a one-stop shop for finding all news regarding in memory computing from SAP. More on that to come…

HANA Architecture – Key Take-Aways

I just listened to Marc Bernard’s Webinar about the first looks at the architecture around SAP’s HANA. This is the first document I’ve seen that really makes sense out of HANA from a technical perspective. I’ve also worked with Marc in my time at SAP and really enjoy his ability to clearly present technical information to all sorts of audiences. You can check out the PDF and full recorded version of the webinar at the following: http://bit.ly/dU2bQY

I thought it would be worthy to address some of the key technical take aways from the Webinar:

  1. There are two data stores in the In-Memory Computing Engine (IMCE) – row-based and column-based
  2. Both data stores will be stored in memory (column-based will be very similar to existing BWA technology)
  3. The way data is modeled in HANA is via the “Information Modeler”. It is only used for the column based data store
  4. The Information Modeler is built on the Eclipse IDE. I’m going to assume it’s built using Eclipse EMF.
  5. It supports SQL (JDBC/ODBC), MDX (ODBO), and BICS (SQL DBC)
  6. Data comes in either via BO Data Services or Sybase Replicator

Some thoughts:

From a technical perspective I really like where the technology is going. The Information Modeler is much more intuitive than any BW interface (i.e. Data Warehousing Workbench) I’ve ever seen. The support for different front-ends opens up the possibility to use virtually anything, and more importantly build your own “Apps”. My one concern is around MDX and multi-dimensional OLAP. MDX is very sluggish and BICS was chosen to replace it in BusinessObjects Enterprise 4.0. I’ve been through the pain of seeing how MDX works when BusinessObjects was first implemented on top of SAP BW. The performance is a huge concern. I’d be very interested to see how BICS is implemented in HANA. I wonder if it creates the same type of Star Transformations that exist in the current BW system. Ya know, those basically unreadable SQL Explain statements?

Note – IMCE is now “SAP In-Memory Database” – See Vitaliy’s post

EDIT: I wrote “row-based” for the data-store. Oops! Thanks @joerglatza for seeing the mistype!

Why Wait?

I have to give it to SAP, they’ve done a wonderful job marketing their In-Memory computing platform. Unfortunately I’m constantly wondering what the value behind marketing a brand new revolutionary product to it’s ecosystem is. If you can understand what Real-Real Time Computing (or as the SAP techies call it, In-Memory Computing) you can see truly how disruptive it is to the current SAP ecosystem. Especially to the SAP Business Intelligence sector. The way they are proposing the technology (at least how it is being marketed) is that will replace all current BI technology offers.

I’m fairly skeptical at the very loose timelines they have presented to the market. The common question from everyone has been “When do we get it?”. I’d be much more satisfied with an answer of “We don’t know, let us test it first”. So, here are my predictions:

  1. First 15 companies to actually adopt and prove the benefits of HANA “1.0″ – December 2011 (that’s approximately 17 months after its announcement from Sapphire)
  2. General Availability of HANA “1.0″ – August 2012
  3. First 500 companies to adopt and utilize HANA (1.0 and 1.5) on a daily operational basis – December 2013
  4. HANA becomes “mature” – 2016
  5. HANA technology starts to replace ERP transaction functions – 2018

To be fair, humans are naturally terrible at planning. I’m sure anyone in technology can understand that.

Watch the two videos below to get a better understanding of the marketing around HANA. The first is what was presented at Sapphire 2010 (May)

and the second just recently came out in late 2010 (December).