Wednesday, October 3, 2012

Hybrid Mobile Platform from Oracle? Worth a look...


This week at Oracle Openworld 2012 there has been a significant amount of focus given to enabling mobile platform for our enterprise apps. Oracle has made some interesting moves in this area with both the preview release of Oracle ADF Mobile, as well as the latest updates to the Oracle Developer Cloud Service. There are some very nice features available from both ADF and ODCS that I recommend folks have a good look at.
With mobile growth rate explosion showing no signs of slowing, companies like OracleAdobe and Appcelerator are making investments to facilitate the path for enterprises to address the demand for mobile access to enterprise data and apps. Whether it is through updating enterprise app interfaces to support tablets and phones, providing hybrid app platforms, or exposing back-end enterprise data via APIs and connectors. If you are tasked with building a mobile app in the enterprise today, you'll find a lot more help than existed just 6-12 months ago.
The latest hybrid app platform from Oracle embeds PhoneGap as part of their solution, but also enhances what is generally possible with PhoneGap by providing common UI elements and business logic widgets out-of-the-box. The choice of a hybrid app platform over a native app, or mobile web-based approach (i.e. via Safari, Android browser or mobile Chrome) is increasingly looking like the logical choice if what you need is to get an enterprise app deployed into an App Store quickly for BYOD consumption.
Here at CA, we are seeing more of our customers take advantage of Service Virtualization (SV) to accelerate their mobile app development. By leveraging the capabilities in SV, mobile app teams doing development, testing and performance tuning can de-couple their apps from the backend services that are either providing business logic or serving as data-sources. This allows much faster iterations during app development which has been key to getting apps deployed quickly.
By having an entire infrastructure essentially in a box using SV, mobile app developers can verify business workflows directly from their mobile devices without requiring enterprise infrastructure access. Primary use-cases as well as edge-cases for their apps can be independently validated without affecting production systems or requiring test or dummy data to be placed into corporate databases.
This is a big win for most teams, especially when it comes to testing and performance tuning. We'll be talking a lot more about mobile in the upcoming months, especially as it relates to SV. In the meantime, check out the latest offerings in the space and let me know which platform you decide to go with for your app, and why.

Thursday, March 22, 2012

Tesla, We're Pulling For You.

Recently, a good friend sent me a note expressing his skepticism about our stalwart pioneers at Tesla Motors. It went something like this:
...but even after ten years they are in the development stage? Why go to three models? Oh yeah, right… To get more people interested and put down the money…


I hope the best for the boys at Tesla, I’d be interested in buying one… but I wouldn’t be putting down cash like this.
My response: Ye of little faith, my friend!

The pent up anticipation about this car is overwhelming here in California, and the price point I believe puts the Model S at the top of its class in terms of performance, practicality and style. The danger is that the Model S ends up with some early reviews like Fisker, which had a Karma arrive DOA when Consumer Reports was reviewing it. Ouch.

The Model X is a fantastic prototype, super exciting and more than a concept from what I've seen. It's purely designed to generate investor interest in the stock, as well as advance orders. There's no good business reason that I can see to tip their hand so far in advance of production if their cash position wasn't the principal driver. Although it has been very successful at generating great buzz for the Model S.

I think consumers feel better about a car company that has more than one model, even if not yet in production. It creates a sense of security, a larger image of a brand. Losing the ability to produce the Tesla Roadster was unfortunate for them, IMHO. Continued production of the Roadster would have really helped bridge the Model S production gap.

It's difficult to find any reviews on the Roadster that are not glowing and exceedingly positive. Sure, there's the novelty and 'shiny new toy' factor that gets everyone putting on rose-coloured glasses, but the reality is the thing goes like stink and hasn't stranded anyone out on the highway just yet to the best of my knowledge.

I'm a big fan of what Tesla is working to achieve. Let's put aside the environmental benefits, and the positive impact a reduction in imported oil dependency can have on our foreign policy for the moment. This is about innovation, entrepreneurship, and an amazingly cool set of cars that are fun to drive and nice to look at.

Where's the debate here exactly? Americans need to get behind this company.


Wednesday, October 5, 2011

Pontifications on Agile ALM, Continuous Integration and Software Quality...

I recently was invited to participate in Speaker Series program hosted by Morgan Stanley on the topic of Software Quality. It was a fun talk to put together and I was honored to have the chance to present to the global IT and Quality organization at Morgan Stanley.

The invite originated from an article I wrote on Automated Testing that was published by StickyMinds, a great resource for software best-practices.

Here's the presentation... look out for 'The Donald' easter egg in the slide deck!



If you have any questions or would like to discuss please get in touch with me!


Tuesday, January 26, 2010

Even Intel struggles with this stuff…

For the past few years Intel has been steadily working on bringing an exceptional step forward in processing capability to market. They internally called it Larrabee and it is a chip that is widely rumored to have as many as 32 or more cores on the chip. This would bring multi-core parallel computing to the consumer market in an unprecedented way.

Recently, however, news came out that at least the first iteration of this chip was being officially canned. Although it’s not unheard of for a big company like Intel to sack a project, in this case the number of man years, resources and buzz built up around Larrabee represented a substantial investment on Intel’s part.

This news for me really drove home the challenges that the computing and software industry is facing as we continue to attempt to scale out as opposed to up. To build more processors on a chip instead of faster ones. To fundamentally change the way we design and implement hardware and the applications that run on them.

This stuff is hard! Really hard, in fact. And although the concept of putting a bunch of processors together on a chip is simple, actually harnessing that power to do real work is anything but. There are many reasons for this, but one is that writing multi-threaded software that actually can tap into this power is exceptionally more challenging that just waiting for Intel or AMD to produce another CPU that is 50% faster than the last.

It’s hard to conject exactly what stopped Larrabee in its tracks as it was seemingly so close to launch. What we do know is there was a tremendous amount of horsepower built into the chip, but tapping that potential apparently proved elusive. A public demonstration of Larrabee at a recent trade event was met with a relative ‘Hmmm…where’s the beef’ kind of reaction from the press and analysts.

As the hardware scales out with multi-core and the applications get more complex, the tools and infrastructure needed to support them, including debugging tools and defect resolution solutions, need to grow and evolve as well.

I will be anxious to see what AMD and NVIDIA are working on in their respective labs as each race against each other and Intel to keep up with Mr. Moore. It’s an exciting time as the industry looks for innovation from our hardware and software vendors to keep up the pace of advancement that we’ve grown to expect…

Onward and outward!

Friday, September 11, 2009

Thanks Apple!

On a previous blog posting about TiVo Everywhere I was wondering why the market had yet to produce a good TiVo-like device for radio. Well, finally Apple stepped up and did so. The new Nano packs in quite an impressive bunch of features, including a radio with pause and replay features.

Probably the most impressive is the packing of a 640x480 pixel, 30 frame-per-second video camera into that tiny case giving up to 16+ hours of video on your nano. I would be nervous if I had recently invested in these guys.

The incredible advancement of these recording devices has truly started the democratization of information around the world. Recent events in Iran, Israel and Palestine have been a great examples of that. Every individual now has the ability to transmit exactly what is happening in their world almost instantly. It's impossible to hide, and there are no more information barriers.

So far, this has had a relatively positive impact on the world, in my view. It seems the most powerful change agent is the free flow of information and devices like these are providing the tools.

Technology is great, ain't it?

Thursday, January 8, 2009

Ramblings on Starting a Company and Getting Funded...

I recently gave a short interview with TalkTech where I was asked about my thoughts on getting a start-up off the ground, and the attitude needed to persevere through the challenges of growing a business. I make no claims to be an authority on the subject, and if you choose to listen to anything I have to say you do so at your own risk, but here are a few things I will recommend you do before trying anything crazy like starting a company:

  1. Make sure your wife/husband/partner is incredibly supportive and ready for the fun that lies ahead...
  2. Choose your business partner(s) carefully, you'll need them to be on your side 100% of the time.
  3. Choose your employees extremely carefully, and your investors even more so.
  4. Fix your mistakes as fast as you can and move on... including your hiring mistakes!
  5. And probably most importantly: Don't ever accept that something can't be done just because noone else has figured it out yet.
Oh, and don't get too attached to sleep, you may not see much of it for a while.

In any case, if you're interested in a few minutes of my rambling, here's the interview.



Thursday, October 16, 2008

Ebay Does It, Why Can't We?

It occurs to me that as web applications have taken over the world over the past decade, what’s become clear is that we have a heck of a lot to learn about managing them.

Complexity in the software industry has sky-rocketed, and applications that once were versioned and released every six months are now being upgraded with new production code every couple of weeks. EBay is a prime example of this model. It is widely known that EBay has become so adept and addressing issues and deploying changes to their servers, that every two weeks a whole new version of Ebay is up and running in their multitude of data centers around the world.

Now, Ebay is not a simple application, and downtime at Ebay can cost millions of dollars, not to mention generate an angry mob of users who are not only desperately trying to buy the latest iPhone 3G, but some of whom are also trying to make their living. This is serious stuff. Downtime at Ebay is front page news.

It’s redundant to point out dangers of our new Software-as-a-Service software paradigm. However, the one-to-many relationship between application server and end-users does present a great deal of pitfalls that did not exist in Bill Gates’ world. When Microsoft Outlook crashes, you may be upset, say something not very nice, then restart it. When your application servers crash, money starts flowing straight out the back door as your customers all collectively say something not very nice about you.

So why aren’t more companies able to follow the Ebay model? What does Ebay know that they don’t?

The answer may lie not just in how they deploy new changes, but how they handle and resolve issues quickly when they do occur. Is this truly one the great remaining challenges in the realm of software? Some would say so, and they have good reasons to back them up.

Multi-tier applications represent some of the greatest levels of complexity ever seen in the software industry. With pieces of your application running on many heterogeneous, physically dispersed servers and environments, understanding what went wrong in these environments can be next to impossible. When issues occur, most often the only hope a team has is to attempt to reproduce the same conditions that caused the error, and hope it happens again. This means that to understand the root-cause of issues, recreating the environment, re-populating the database, and generating the required load on the servers is the only solution. Frequently, the pain of going through this effort is too great, and the issues lie dormant… until the next time something bad happens!

What the software industry is screaming out for is the ability to quickly capture, reproduce, and isolate issues as they occur. What we need is something like ‘TiVo™ for Software’.

One solution that has finally emerged from the chaos introduces the concept of recording and replaying software execution. This technology revolves around the core ability to not only record an application’s execution, but just as importantly, the complex environment in which the application ran.

With this new ability, teams can dispense with massive amounts of inefficient workflows that have traditionally been manual, iterative and error prone.

Imagine this common scenario: Your newly out-sourced team in India is handling QA for your complex, multi-tier application. They’re doing a great job and have found over 100 issues with your application. You’ve got your problem reports, log files, and the very large database datasets that your application was using when the bad things happened.

Next comes the fun part.

Now it’s your turn to bring up the same environment that your Indian team was running. I hope you’re using virtual servers! Finally, let’s take a shot at generating the same load on our application that existed when the problem occurred. Hopefully, the moons have aligned, and your fingers are crossed…

Now let’s fast-forward to 2008. Your Indian team is using your recording system. You arrive in the morning, logon to your defect tracking system, load the recording of an issue they found, and press ‘play’.

This time, every event that affected your application in that complex environment, including output from your authentication, LDAP, caching and e-commerce servers, has all been recorded and stored. Even the database and its dataset are no longer required. Most importantly, the end-user traffic that ultimately triggered the problem to occur has been recorded as well. All of these elements are perfectly reproduced allowing you to focus on the most important thing: What went wrong.

Anyone who has been involved in software development can relate to the age-old conundrum of trying to reproduce an issue that simply doesn’t appear to exist. At least not on your machine. Too many sleepless nights have been wasted chasing down phantom bugs. It’s time for the madness to stop.

The problems we’re facing are only getting more and more complex as new technologies are brought to market. This new software paradigm is here to stay. Luckily, I believe new technologies such as record and replay will help control the chaos.