Archive for the 'Service Oriented Architecture' Category

Software as a Service

February 9, 2007

I had some time today to catch up on my “links for you” (links your friends post to their account they believe you would be interested in) at del.icio.us. and I cam across a link to an article a friend of mine had sent to me a week or two ago on the RSS reader. The article entitled: Death of the RSS Reader / Software as services was written in December 2005 (Yes) by Phil Waineright who rights an “Applications on demand” blog for ZDNet (I added his blog to my list because he is dead on here). While I am not sure that he has captured the full value of “Software as services” (which I believe goes way beyond RSS) I think that he has a point.

Software as a service (SaaS)
The idea of software as a service has been around for quite some time. SaaS is well documented on the web and has its own place even at Wikipedia: SaaS. I was involved in a few startups that were early adopters of the idea except we called ourselves Application Service Providers or ASP’s. Back in the day we built applications and “rented” the use of those applications out to companies in return for a monthly fee (the holy of all holies – recurring revenue). These applications were maintained by us. We handled the server and network architecture (we obviously outsourced this), we updated the software and managed the data. The client simply opened a Web browser and worked with their data.

There is however, a big difference in SaaS to the business (b2b) and SaaS to the consumer (b2c). A while back the industry thought that the b2b software industry was going to explode. Services between companies have certainly moved to the web and that continues to increase, but not nearly as much as the b2c side.

Today you can see software as a service almost everywhere. Google and Yahoo compete for the consumer’s attention all of the time with their applications which help you do everything from manage links and video to email and favorite TV shows. There are also many other smaller applications (who are continually swallowed up by larger organizations) that offer niche market applications like Flickr and Dandelife to name a couple.

I think a notable Software as a Service in the consumer space is PeaPod. While you may not think about it as a traditional SaaS, for the consumer it is most definitely a contender. What better services then the ability to virtually attend a supermarket, order some goods and have those goods delivered to your home. On that same level, you could include Netflix, Blockbuster and the like in their as well.

While the RSS Reader online can certainly be considered a service, I am not sure that he has done justice to the explosion in SaaS on the consumer side.

I want it all back!

January 19, 2007

Yeah that’s right, you heard me I want every interaction with every website that I have ever done back. It’s mine isn’t it. Even with an article that you right for an online (or not online) publication, you have the right to own a copy of it.

Here is my thought, I have a blog, I have some images that I post on Flickr, I have some links that I keep on del.icio.us, I have some entries that I keep in my Google Calendar or Google Documents and let’s say I have some interests I keep and comment on at one of my new favorite sites Wis.dm.

Now I really want to get involved with a new site Dandelife but I am just getting sick of all the URL’s all of the passwords all of the different UI and bits of information that I have out there. All of the sites that I interact with are all a part of me (jeez I did not even mention YouTube). They make up the collection of information out there that is me and what I am interested in and what I know and who I interact with. I want it all back. Yeah that’s right, it’s mine and I want it back.

So I know that the ebb and flow of the Internet follows many patterns that have been on going in technology in general. Terminal Computers – VT 100 (Centralized) then Personal Computers (Distributed) then Thin Clients like Flash, Flex and even Ajax applications (Centralized) …

The number of “social networking” sites out there is so staggering and the landscape is so saturated it is hard for good ideas to get any real traction. There are more applications out there then there is attention time available. Participation applications are popping up all over the place and it becomes more difficult each day to spend quality time interacting with your peers on particular subjects.

Solution – lets shift the paradigm here. Let’s get this whole home computer piece working in the reverse direction. Let me keep all of my data on my machine in my on way. My videos, my posts, my pictures, my responses etc… After all they are mine. Then let me choose to share this information with other sites. Like this:

I go to my mikull.com and find a post or a discussion thread of interest that I want to participate in, I add my comments or my thoughts and instead of the information being stored on his blog on his computer the information is on my computer in my house. The applications would talk to each other and essentially what I would be giving mikull.com is the ability to subscribe to my thought. Essentially, an RSS feed of my thought with a uniqueID (URL) would be given to the post or discussion thread for it to display. In the process, some sort of service level agreement would be made between the two trusted systems which would give me rights to my thought with mikull.com having rights to display the thought as they see fit (essentially a copy of the thought). This way I would keep a record of all of my interactions with the web sites out there (maybe my home computer would enter into an agreement with mikull.com so that I could have a copy of the post for reference).

I like this idea, a lot, who is with me?

Apex (Salesforce API 2.0) is announced

October 10, 2006

Details for the much anticipated Salesforce API 2.0 have been released and I will have to say that my first impression is that there is a whole lot of marketing going into this. As an example they have registered a new 1-800 number (didn’t all 1800 numbers become extinct at one point) – 1-800-NO-SOFTWARE.

The number gives away the whole idea behind Apex (afore mentioned API upgrade). General idea is that a subscription to Salesforce allows all out of the box capabilities (Account, Contact, Lead’s etc. management) of the standard CMS, with an extremely flexible architecture which allows unique custom application development. The tag line is “Develop. On Demand.” I have some mixed opinions about this but before I weigh in let me talk a bit about some of the features it does have:

Java based development interface
Essentially, what they have done is taken the application tier and opened it up to interact with Server Side applications that you build. If you are familiar with the current Java API, they look very similar. The difference being that you can:

1.) Bind business logic coding to almost any user interaction – buttons, views, forms, reports etc…
2.) Build triggers to update data to enhance the Business Process Flow (something that was very lacking before this).
3.) Expose interaction as Web services
4.) Completely write compile and execute code in a “test” environment without the cost of hardware/software licenses (this is the marketing side)

Some of the extension coding that you can do (outside of the previous SOQL language and Salesforce Object instantiation) now is incredible, especially for this individuals that use or have built custom objects. For instance now you can:

Create a custom object and allow content that is updated in that custom object directly modify content located in standard Salesforce Object. In our case, we have built a custom Statement of Work object that we bound to the Projects custom object. When a Statement of Work is created it would be nice to update the Project’s Statement of Work delivery date. Or, if you have a Time Entry objects against a Statement of Work object, each Time Entry can update the Estimated Statement of Work and Project Tasks Custom Object.

All tasks that you would do in normal application development.

Questions currently unanswered
What about security? Since users will essentially be loading scripts to a server that is technically available to everyone, how do we prevent people from uploading miscellaneous scripts to extract data from other accounts?

What about the interface? It would seem likely that this would fit nicely into the Eclipse platform. A plugin that allows a developer to enter their SForce username and password and develop “locally” with no startup hardware/software costs.

What about .NET developers? Not that I care too much, but the syntax for this API is based on the constructs of Java which means users that have currently built applications that integrate with Salesforce and are written in .NET will be missing out (unless they want to learn another language).

What about access for Professional level accounts? Currently the extensible API calls for Salesforce are only available for Enterprise customers. Salesforce would have a larger audience if they opened this API up to Professional Level subscribers.

In retrospect?
Is this really that new of an idea? What if you compare this to say ColdFusion (or the like). ColdFusion applications can be pre-compiled server side objects that interact with data. What about the Building Blocks API in Blackboard where you have a core set of data objects, interface objects and global methods for data manipulation. Is Salesforce building something revolutionary, or are they putting a lot of marketing behind a few ideas that have been around before but that nobody has positioned correctly for proper public acceptance?

powered by performancing firefox

AppExchange 2.0 – the Oracle killer?

September 22, 2006

“We will destroy Oracle and SAP because they won’t be able to respond to the innovation we are about to unleash”.
Marc Benioff (CEO-Founder SalesForce.com)

Why is a software company that has only been around since the turn of the century able to make statements like this? Maybe because Marc Benioff is a big mouth and a hell of marketer or maybe because he is correct? Why would AppExchange ever have an opportunity to take Oracle out of the picture?

Innovation is finally leading the way
Back when the Internet boom first occured it was fueled by ideas. Innovation was a leading factor in the success of some of the early Internet companies. Yahoo!, Amazon.com, Dell and many others all had innovative ideas. New ways of doing the same thing. Yahoo! produced easy to use tools and search engine that made finding information easy. Amazon.com made purchasing books easier then ever and Dell revolutionized the way we purchased computers. These companies were all successful (and continue to be successful) because they were innovative.

Somewhere along the way a “shakedown” occurred and all of the companies that were truly not innovative crumbled. Granted some companies crumbled for other reasons but most simply because they did not innovate. Look at some of the popular technologies making waves in the world today during this new technology boom: Google, MySpace, YouTube, Flickr, Zillow.com, SalesForce. Why are they successful? Well it’s simple, they are innovative. Google … do I really need to discuss any of these? They are all flipping the online software world upside down with their innovative features.

With all of this complexity wee need simple tools
In all of the companies I mentioned making waves in the world today, they all have one thing in common (save Zillow.com which can be a bit busy) – they all do what they do and do it well. Is there really any simpler search engine then Google? For those users out there who no nothing about HTML is there any easier way to publish your thoughts and connect with your friends then MySpace? And YouTube – c’mon – dosen’t get any easier.

The Interent is expanding and not only in the amount of computers and sites available but also the number of people who are using it. As the number of users grow so does the diversity of that user. In it’s infancy the web was used primarily by those individuals that have grown up on computers. The classification of “Intuitive Interfaces” had to change.

In the words of Marc Benioff:

“The future of technology is all lower cost and easier usage,”

AppExchange 2.0?
In light of all the changes that have occurred in the recent past as it pertains to on-line software what makes Marc so certain that his innovation will change the world of on-line information storage? Right now we can only wait but in a few weeks we will know what Marc and company are thinking

At the heart of ADN at Dreamforce is technology — the features, tools, and APIs that will inspire developers looking for new ways to innovate. At ADN, salesforce.com will preview the biggest update ever to the AppExchange Web services API, one of the industry’s most popular Web services.

Combining concepts from service-oriented architecture (SOA) and Web 2.0 patterns, this new API will open the door to applications that can combine on-demand with traditional software, and Internet services with each other. In addition, a new set of tools for building directly on top of the AppExchange platform will make it possible to create sophisticated, enterprise-class solutions — capable of meeting the most challenging business requirements — on demand, and without software.

From the “DreamForce 06” web site.

I only wish that I could be there for the announcement.

Correct me if I am wrong but … Google is hot!

April 27, 2006

Is Google merely doing everything that we are thinking about doing or are they truly leading us down the next phase of the Internet. It would be safe to say that Microsoft lead the way. They did things that other people truly never dreamed about doing. First the OS, then the Software now the Internet. Oops…. wait, Microsoft does not lead us in the Internet anymore. But who does??? Is it truly Google or is it someone else? Netscape, AOL and Yahoo certainly lead for a long time. In order to lead you need followers. You need copy cats. Does Google have any real copycats and does it go beyond their "simple UI" (check out the recent changes at the Duke Blue Devils web site – yeah I said Duke)?

When it comes to things that are new you would have to say that Google is having its way. But of the things that they have touched, what is truly groundbreaking. Certainly the Google Appliance, certainly the Advertising scheme, and most certainly their ability to stand up to the Justice Department (yeah I am tossed on that decision but at least they are groundbreaking). Yeah Google Video is hot and I guess they did create Maps 2.0. By the way has anyone seen the new Yahoo maps? Very good implementation (if you have not tried it yet http://maps.yahoo.com/beta/index.php). Well then they are groundbreaking I guess.

What I believe is remarkable about their success is that they have done a lot of this on a mostly open architecture. What I mean is that they are gaining all of this momentum without selling much of anything. What they are proving, I believe, is that there is truly a place in this world for the Service Oriented Architecture. Duh! Anyone can see that, I know. But think about it, the architecture has been around for a while and many (successful) software companies utilize the architecture on a daily basis. Heck we are even building it into our next release. But if you sit and think about it they are creating a huge demonstration of what life will be with this architecture available to developers all over the globe.

So, back to the debate, are they leading the way? Were the first or just the biggest. Read around a bit (even through links on this site) and you will see what is going on. It is all over the place.

Quite frankly, I could care less who created it, marketed it, stuffed it in our bellies … it tastes good!