Skip to content

{ Category Archives } mashups

Outsourcing the intranet

I’ve told a lot of people about Avenue A|Razorfish and their use of MediaWiki as their intranet platform (discussed here and here), and there’s a lot of people who are downright uncomfortable with the idea of any sort of non-standard intranet platform, such as allowing anyone in the company to edit any page on the intranet, or contribute content to the home page via tagging and feeds.

Imagine, then, how freaked out those people would be to have Facebook as their intranet.

Andrew McAfee discusses a prototype of a Facebook application that he’s seen that provides a secure enterprise overlay for Facebook, allowing for easy but secure social networking within the organization. According to WorkLight, the creators of the application:

WorkBook combines all the capabilities of Facebook with all the controls of a corporate environment, including integration with existing enterprise security services and information sources. With WorkBook, employees can find and stay in touch with corporate colleagues, publish company-related news, create bookmarks to enterprise application data and securely share the bookmarks with authorized colleagues, update on status change and get general company news.

This sort of interaction is critical for any organization, and once you get past a certain size or start to spread geographically, you can’t do it with a bulletin board and a water cooler any more; however, many companies either build their own (usually badly) or use some of the emerging Enterprise 2.0 software to do something inside their firewall. As Facebook becomes more widely used for business purposes, however, why not leverage a platform that pretty much everyone under the age of 40 is already using (and a few of us over that age)? One company, Serena Software, is already doing this, although they appear to be using the naked Facebook platform, so likely aren’t putting any sensitive information on there, even in invitation-only groups.

Personally, I quite like the idea, although I’m a bit of an anarchist when it comes to corporate organizations.

There’s a lot that would have to happen for Facebook to become a company’s intranet (or even a part of it): primarily sorting out issues of data ownership and export. There’s lots of people putting confidential data into Salesforce.com and other SaaS platforms that I think we can get past the philosophical question of whether or not to store corporate data outside the firewall; it just needs to be proven to be private, secure and exportable.

I also found an interesting post, coincidentally by an analyst at Serena, discussing how business mashups should be human process centric, which was in response to Keith Harrison-Broninski’s post on mashups and process. Although Facebook isn’t a mashup platform in any real sense, one thing that should be considered in using Facebook as a company’s intranet is how much process can — or should — be built into that. You really can’t do a full intranet without some sort of processes, and although WorkBook is targeted only at the social networking part of the intranet, it could easily become the preferred intranet user interface if it were adopted for that purpose.

Update: Facebook launched Friends Lists today, that is, the ability to group your contacts into different lists that can then be used for messaging and invitations. Although it doesn’t (yet) include the ability to assign different privacy settings for each group, it’s a big step on the way to more of a business platform. LinkedIn, you better get that IPO done soon…

BPM Think Tank Day 3: Enterprise 2.0/BPM Mashups Roundtable

I facilitated one of the last roundtables of on the conference, about Enterprise 2.0 and BPM mashups.

Mashups (considered a part of Enterprise 2.0) are lightweight integration of web-based services and data, often in ways that the service providers never intended them to be used; personally, I think that as mashup techniques get easier, mashups will become the technology of choice for what’s referred to as “end-user computing”, that is, all the stuff that is created within business units (typically now using Excel or Access) because it’s either too small for IT to take on as a project or they can’t turn it around in a timely manner. I see software-as-a-service BPM and other services as having an impact on the ability to do mashups, since these platforms are often designed with a bit more openness in mind.

I’ve looked a lot in the past at Enterprise 2.0 and BPM, and the features that are (or should be) creeping into BPM under the influence of Enterprise 2.0: RSS, tagging, SaaS, mashups, collaboration, and all sorts of user-created content in general. There’s a lot of challenges around this, many of the cultural, since Enterprise 2.0 decentralizes control of IT assets and requires a certain level of user participation.

We spent most of the session talking about BPM mashups, not Enterprise 2.0 in general. At one level, a BPMS can be considered to be a mashup platform, given the right business services available for assembly.

BPM mashups can take several forms:

  • Lightweight assemblies of subprocesses and services
  • User-facing information at a step in the process, e.g., Google maps mashed up with BPM data and presented to a user in a form in order to complete a task
  • BPM as a component within a portal, possibly assembled by a user

Issues around mashup adoption include IT not trusting something that is user-created, and business analysts not understanding the concept of mashups as well as not yet having easy enough tools to do mashups. There are also issues around discoverability of services (as I discussed the previous week in a Mashup Camp session) and the use of internal versus external services, where both types require some sort of SLA to be included in any sort of production mashup.

By lowering the barrier to entry, mashups can play an important role as application prototypes, or emergent applications that IT wouldn’t have thought to build for the business; IT can learn from what the business creates for itself in order to create more structured applications and processes.This is similar to the concept of how a folksonomy is used to gradually become a taxonomy: allow the users to do it themselves, then observe and detect the patterns. My favourite phrase that someone used at this point was to “intelligently stumble upon the future” and the whole idea of unintended consequences of mashups, although there was some discussion as to whether is was closer to serendipity or Frankenstein. Along this line, we talked about how to keep bad things from happening in mashups, and agreed that the services and data to be mashed up had to be controlled in some way (by IT) so that, for example, someone couldn’t do an unindexed full text search on a multi-million record database.

Without a doubt, mashups enable agility in application development, and BPM stands to benefit from enabling all types of BPM mashups.

There was some discussion around whether business users/analysts were asking for this, and whether they really wanted a full mashup capability, or just some parameterized configuration. I think that they don’t even know what’s possible through mashups, and if they did, they’d want it.

Take the Ajax challenge

I had a chance to talk to Kevin Hakman of TIBCO late last week about their Ajax Challenge (Kevin co-founded General Interface, which was acquired by TIBCO a couple of years back), the goal of which is to build the world’s largest mashup. You have to use General Interface to build it, but more interestingly, you have to use PageBus, a JavaScript client-side message bus that TIBCO just contributed to the OpenAjax Alliance as open source to become part of the OpenAjax Hub 1.0 installation.

The contest is splashy (win an oversized TV! win a video iPod!) but PageBus is the real news here: it provides a message bus for mashups in an attempt to eliminate the spaghetti mess of point-to-point integrations that we’re already starting to see emerge. In the enterprise world, this is why ESBs have become an essential part of any sizable application integration effort: without a message bus, you’re creating a unique integration between each pair of applications. Okay when you have two applications, but not when you have 10. [To be fair, usually you don't have every application interact with every other application in a complex integration: each one may only interact with a couple of others, but that just shifts the pain point, it doesn't eliminate it.]

Getting back to mashups and the OpenAjax Hub, the PageBus exposes the basic functions of messaging – publish, subscribe, unsubscribe — all in less than 5k of JavaScript, so that multiple Ajax components on an HTML page can share data using these standard methods. This allows the development of a mashup to be more easily split up between multiple developers since each can focus on their specific component and not on the interface between components; it will also allow for easier “no programing required” assembly of components within a PageBus-enabled mashup framework.

This is a pretty important step in mashup-land: I’m starting to see a lot of things referred to as mashups that are actually portals, where the components don’t intercommunicate, but the fundamental benefit of mashups is that they *are* an integration, not just components that happen to coexist on the same page.

TIBCO is apparently already using this in their BPM product for things such as task list publication, which means (I think) that you could create a mashup between your iProcess task list and some other component or data source — a real BPM mashup. Although many vendors are starting to provide RSS feeds of task lists/inboxes (I hope that my past year of nagging about this has had some contribution to those efforts), this is the first truly mashup-enabled BPM environment of which I’m aware.

The full OpenAjax Hub specification is about 4-6 weeks away from release, but the project is already on SourceForge. TIBCO will continue to develop the source and contribute to the open source efforts in the future; their press release about PageBus is here.

Enterprise 2.0: BEA

After watching Ajay Gandhi in the panel just before lunch, I meet up with him for an update on what’s been happening with their Enterprise 2.0 products since BEA Participate last month. It looks like they’ll move out of beta to general release some time in July, and they’re starting to line up customers for the GA products from around the world, and across telecom, public sector and a variety of other vertical industries.

We talked about what beta customers are doing with Pages, their mashup platform, and there’s a number of things that I didn’t expect. First of all, customers are using it as a wiki platform for team collaboration: although not as wiki-functional as a true wiki platform, it can easily integrate in other content and data sources, which a wiki platform typically can’t do. Other customers are using it as a lightweight portal builder (in my opinion, it looks like it could replace WebLogic Portal for some simpler applications, although that’s not BEA’s positioning), and also using it as a tool to create portlets that can be consumed by the WebLogic Portal environment. Since Pages allows you to create a portlet directly from sources as diverse as REST or an RSS feed, that adds a lot of value.

We also discussed a bit of the roadmap for future versions, the most exciting of which (for me) is the integration with AquaLogic BPM to both invoke and monitor processes. They’re also going to strengthen their blog and wiki capabilities, and improve the tooling, and he mentioned that they’re considering a hosted version as well.

More and more, I’m seeing mashups — especially via enterprise-focussed platforms like Pages — to be the future of what is now called end-user computing: the small but necessary applications that are built by semi-technical people that exist within business units, created in the absence of a sufficiently agile IT development group. I’ll definitely be looking more at this theme in the coming months, especially at Mashup Camp next month.

Enterprise 2.0: Enterprise 2.0 Mashups

David Coleman of Collaborative Strategies ran a panel on Enterprise Mashups that included Ajay Gandhi of BEA, Rod Smith of IBM, Eric Hoffert of ShareMethods (who I had a great chat with yesterday at a break) and Lee Buck of Near-Time.

Coleman defines a mashup as something that can be working in less than a day, and declared that anything that takes longer than that is an integration project. I’m not sure I agree with that strict time definition, but it’s definitely in ballpark. He started out with some interesting slides defining mashups, since it’s likely that many in the audience aren’t familiar with mashups. His talk would have been a bit more impactful if he had taken the Bluetooth headset out of his ear, however…

Gandhi was up next to cover BEA’s mashup environment (he used the term “adhocracies” to describe some of the types of collaboration that are going on, which I love), and discussed how enterprise mashups are different than consumer internet mashups since they have to plug in to corporate data and provide some degree of security and control. He primarily covered AquaLogic Pages, which I saw at the recent BEA user conference. The nice thing about this panel is that each participant is expected to not just present, but demo, so he moved over to a Pages demo, although he didn’t do a live inclusion of my blog during the demo as we had from the stage at BEA Participate. He showed how to create a new data space, or page, which includes feeds from other sources, interactively-entered text, and other content; each page automatically has its own RSS feed. He then created a simple web application in Pages by combining a data object containing names and addresses of potential sales prospects with a map widget, where the map and data widgets interact with the map detecting any address information in the data and plotting the prospects on the map.

Hoffert gave a quick presentation on mashups as a model for building and selling applications, where revenue can be shared across the mashup participants, and the need for better standards to allow mashup components to interact. They’re involved in Open Simple Ajax Mashup (OpenSAM), which is intended to more easily allow for multi-component, multi-vendor enterprise mashups — this is another twist on the same issue being addressed by at least one other vendor by considering a sort of mashup ESB. Hoffert then demonstrated ShareOffice, one of their products, which is a mashup built on five different components for creating, editing and sharing documents amongst members of a sales team, and includes SalesForce.com data as well as document authoring and management.

We moved over to Smith, who started with some discussion of why companies do mashups, which is usually about how to reuse assets in ways that they were not intended. The emerging mashup ecosystem has to allow ease of access, have data and components be designed for re-mixability, and be ready in a corporate culture sense for the emergent behaviour and applications that will result. He demonstrated QEDwiki, which I’ve seen at Mashup Camp last year and in a few other presentations since then, although I haven’t tried it out yet. The page creation environment allows you to drag and drop components from a palette to the page, then open up properties for each component in order to create the links between them. The application that he showed, which was built in 17 hours, so fits the “less than one day” criteria if you’re a typical developer, combines two views of data about shipping vessels (a list, then a drill-down on the selected vessel) with a map of the location and relevant weather data. One of their widgets allows you to create a feed from a SQL statement, or from an Excel/CSV file, in order to integrate into their environment; this further supports my thoughts of (RSS) feeds as being the next great thing in what used to be called end-user computing. You can’t use third-party widgets, such as Google gadgets, although Smith sees that having widget interface standards is going to be essential as we move forward: essentially the same message that we heard from Hoffert about OpenSAM. It appears that this will all be part of Info 2.0, which we heard about yesterday in IBM’s Enterprise 2.0-o-rama presentation.

Last up was Buck from Near-Time, which looks at cross-organizational collaboration. He discussed “people mashups”, namely online collaboration outside corporate boundaries, where there is no single authority. They use methods such as an OpenID gateway to an internal LDAP directly as a way to help facilitate that collaboration, and provide tools for secure content sharing. Sorry guy, this is not a mashup in the sense that anyone attending this panel means, although it might be an interesting collaboration environment.

An audience member asked about process mashups rather than data mashups; Smith responded with an example about Tivoli information being available for exposure in a mashup environment, which is not really what I was looking for in response to that question.

Enterprise 2.0: Ambuj Goyal

Ambuj Goyal of IBM gave the next keynote on the changes that they’re seeing in organizations, and how this is informing their Enterprise 2.0 directions. Like any established software vendor would do, he started his history lesson around 12 years ago, where presumably vendors like IBM actually invented Enterprise 2.0 but just didn’t think to call it that. All kidding aside, Lotus Notes was a groundbreaking collaboration tool in its time — long before IBM bought Lotus — and likely helped to drive the demand for the ability to collaborate.

He looks at how changes in technology (lighter weight infrastructure and simpler programming models), economics (new business designs that address the long tail) and community (capturing the wisdom of the masses) combine to form Web 2.0, then dug into IBM’s Web 2.0/Enterprise 2.0 product offerings.

  • WebSphere Portal as a mashup platform, with all it’s AJAX-y goodness.
  • WebSphere Commerce,which is an online shopping platform; after several minutes of trying to get a video showing WebSphere Commerce working — what I feel to be the ultimate cop-out in a presentation — one of Goyal’s colleagues hopped up on stage and narrated the now-silent video.
  • Web Interface for Content Management. It’s been a few years since I sat down in front of IBM’s Content Manager’s web interface, and I really hope that it’s improved since then, or they’re really stretching it to even mention Web 2.0 and the old CM web interface in the same breath. What ECM really needs is user-generated tagging, which I don’t think that they’re doing yet. Of course, there’s still the outstanding issue of what they’re doing with the FileNet ECM, which I heard was going to become the standard content platform offered by IBM, and likely would have a completely difference web interface.
  • Info 2.0, which appears to include feed management, tagging and mashups within enterprise-strength security and scalability behind it. This is an early view of products that are coming out later this year, including QEDWiki for creating mashups, which I saw at Mashup Camp last year; unfortunately, we were subjected to another canned video after several technical glitches, but still no audio so we had another live voice-over for the video. Why not just show us a demo? I assume that it may also include some repackaged version of Dogear, their internal enterprise social booking tool; this has been an obvious application for productization, although my suggestion of this to all my IBM friends seemed to fall on deaf ears in the past year.
  • Lotus Connections — is this a reinvented version of Notes? Goyal refers it to a brand-new product, but I’m not sure why it is trying to leverage the not-very-chi-chi Lotus brand. Apparently, it includes blogging, profiles, bookmarks (maybe this is were Dogear will show up) and ad hoc collaboration.

Unfortunately, IBM seems to be doing its usual trick of having several products that sit over the same space (usually to provide legacy support of existing installations) without a good distinction between them. I’d love to see a roadmap of how all this fits together: which products are intended to provide an upgrade path for legacy products, and which are intended for new installations.

I completely understand that vendors are given space on the speaking platform in exchange for buying big booths at the trade show, but I really rely on the vendors to provide something of value rather than just a cataloguing of their own products. They gain so much more by demonstrating a deep understanding of the concepts and a vision of the future.

BEAParticipate: Mark Carges

Day 1 of the BEA user conference in Atlanta, and we start out with a morning of general sessions hosted by Ira Pollack, SVP Sales at BEA; the remainder of the 2-1/2 day conference is all breakout sessions. There’s wifi around but I seem to be missing the conference code necessary to get logged on, so posts will be delayed throughout the conference as I’ll be gathering them up to publish at times when I can get internet access. There’s also not a power source in sight, which could mean that the last parts of this are really delayed as I transcribe them from paper. :(

BEAParticipate is a new user conference dedicated to portals, BPM and social computing with tracks for business and developer-focussed audiences. My focus has only come on BEA with the acquisition of Fuego a year or so ago, so I’m not sure what they had in terms of user/developer conferences prior to (or in addition to) this, although I talked last night with a web developer who has been a Plumtree customer for years and has transitioned from the Plumtree conference as it was rolled into this conference.

We started out with Mark Carges, EVP of BEA, (who many years ago helped develop the source code for Tuxedo) with a high-level vision of how these technologies can create new types of agile applications, and how BEA is delivering BPM, SOA and enterprise social computing (Enterprise 2.0). He talked about the difference between traditional and situational applications, the top-most point of which is that traditional ones are built for permanance whereas situational ones are built for change: exactly the point that I made last week in my talk at TUCON. He covers other comparative points, such as tightly- versus loosely-coupled, non-collaborative versus collaborative, homogeneous vertical integration in application siles versus heterogeneous horizontal integration, and application-driven versus business process-driven.

He walked us through a few examples of their customers’ portal applications – purely intranet, customer-facing, and public — and one example of BPM in a customer, before moving on to talk about BEA’s strategy and product development, particularly in Enterprise 2.0. He made the point that enterprise applications are having to learn from the consumer-facing Web 2.0 applications by allowing for different types and degrees of user participation. Instead of just listing consumer Web 2.0 applications, however, Carges makes analogies with how the same sort of technology could be used inside an enterprise: Digg-like ranking used for ranking sales tools internally; social bookmarking and implicit connections for internal expert knowledge discovery (much like what IBM is doing with Dogear, which I’m sure that they’ll turn into a commercial product once companies like BEA prove the market for it); mashups for creating a single view of a customer from multiple sources including product, support incidents and account information; and wikis to capture competitive intelligence. This is where their new product suite fits: AquaLogic Pages (to create pages, blogs and wikis), Ensemble (for developers to create mashups) and Pathways (for tagging and bookmarking). All of these mesh with IT governance such as security and versioning, but the content isn’t controlled by IT.

Interesting that the focus of his talk has really been on their new Enterprise 2.0 products rather than portals or BPM; they obviously see this as a strong potential growth area.

BEA Dev2Dev days

BEA is holding a series of half-day developer seminars in a number of cities in Europe and the Americas, focussed on building enterprise mashups with their new/rebranded en.terpri.se platform. I was excited to see that one will be in Toronto, since it seems like vendors always skip my hometown; however, I’m less excited to see that it’s the only one of the seminars to be held at the same time as their own user conference, which means that I have to miss it.

Swedish mashups

No, this isn’t some new dish from the Swedish Chef, it’s a new way to fool around with domain names to get them to actually spell something: en.terpri.se (using a Swedish domain name). Following in the etymological footsteps of del.icio.us, en.terpri.se is a site launched by BEA to showcase their Enterprise 2.0 tools: Pages for web authoring (including wikis and blogs), Ensemble for mashups, and Pathways for information discovery via tags, bookmarks and activity analysis.I haven’t seen a demo yet, but you know I want one.

These all fall under the AquaLogic family, and were previously known as Project Builder, Project Runner and Project Graffiti, respectively; it remains to be seen whether this is something new or just the old stuff with some rounded corners. They’re showing all this off at the O’Reilly Emerging Technology conference this week.

Yahoo! pushes feeds towards mashups with Pipes

I’m just poking around the new Yahoo! Pipes service (think UNIX pipes and “small pieces loosely joined”), which is an interactive feed aggregator and manipulator: a.k.a., a tool for creating data mashups. I first saw it mentioned on Global Nerdy, which links through to a number of other interesting posts about it on other blogs. TechCrunch describes it as a “visual procedural programming language”, and it goes a long way towards providing mashup capabilities to regular everyday users, not just programmers, using RSS feeds as inputs and outputs. I’ve been talking about how the idea of publishing process instance (execution) data via an RSS feed would allow for really each consumption/mashing up of the data to increase process visibility, and this appears to be the type of environment that would allow a semi-technical business user to create their own dashboard of mashed-up data.

Who will mash?

Further to my post about enterprise mashup yesterday, I’ve been thinking about who in the BPM space will jump on the enterprise mashup bandwagon first.

In my Making BPM Mean Business course, I discuss the history of BPM, and I’ve noticed that BPM vendors who started on the workflow side of the house typically expand their capabilities through OEM agreements and partnerships (the “United Nations” approach), whereas those who started on the EAI side typically expand by building functionality in-house or buying a small company outright and submerging it into their product (the “world domination” approach). That could be because the pretty UI stuff that is usually developed for the human-facing workflow functionality is perceived as the “personality” of the BPM product, and everyone needs to author their own personality, or at least be perceived as being its author. (Okay, for a comment about technology, that’s pretty philosophical.) There’s lots of exceptions to this, but I find that’s true in many cases.

Does that mean that the BPM vendors with a workflow heritage are more likely to embrace the mashup concepts than their descended-from-EAI competitors? While the old guard thinks it over, the “nouveau BPM” vendors (who are built on web services from the ground up) are probably already demoing the integration of Yahoo Maps with back-office transaction processing, and rewriting their marketing materials to include the word “mashup”.

By the way, I signed up for MashupCamp, so if you’re headed there in February, look me up.

Mashing up the enterprise

I’ve spent the past few days mulling over the differences between mashups and the more traditional integration that’s done with enterprise applications. My initial reaction? There’s a lot more similarities than differences: in both cases, a third party uses published application interfaces to create functionality that integrates the capabilities of two or more applications/services. I know, that’s a bit of a simplification, but how soon will it be before overly complex (and expensive) enterprise integrations start taking advantage of the lessons to be learned from the mashups of web services?

Obviously, I’m not the only one thinking about this: the ZDNet SaaS blog just posted about enterprise mashups, and what’s needed to make them a reality.

Makes me want to go to MashupCamp.