The Wayback Machine - https://web.archive.org/all/20101108032330/http://smart421.wordpress.com/

SmartMoIconNovember is upon us and myself and some fellow Smarties have elected to join the ranks of real men and grow a ‘tache over the next month in aid of the Prostate Cancer Charity. It might be a little tricky to explain why I look like a poor imitation of a Mexican bandit to customers when I meet them over the next month, but it’s a cause that is close to home for some of us so it’s worth the embarrassment. Of course, that’s easy to say on day #2…ask me again in a couple of weeks…

Please donate to the “Tache421″ team by clicking here.

ovumA couple of days ago I was one of the presenters at an Ovum/Butler strategy briefing at the Ambassadors Hotel in London. Smart421 were sponsoring the event and I wanted to share something real relating to cloud computing – and not just give a thinly-veiled sales pitch (not really my style – and also I’ve sat through enough of those from vendors/SIs to last me a lifetime) or explain what IaaS/PaaS/SaaS are to an audience for the millionth time.

So, after some steering from the Ovum analyst who was performing the introduction to the subject, Laurent Lachal, I settled upon the subject of what organisations need to do and consider today in their Enterprise Architecture teams in order to gear up and exploit the opportunities provided by cloud computing. It’s always better to have a map before you set off on a journey, and so I explained how we would use the Open Group’s TOGAF architecture development method (ADM) to help us navigate and address all the impacts of cloud computing in an organisation. Anyway, the presentation all went well with just the right amount of pre-match nerves to get me excited before I went on – and some good audience questions. Although my colleagues tell me that apparently I have a couple of bad habits when presenting that I need to work on :) . Drop us a line if you would like a copy of the presentation.

The main observations that I wanted to share in this blog post were relating to the nature of the audience, as they provided an interesting insight into the cloud computing market itself. As this audience had been generated from a list Ovum subscribers mainly, they were quite a different mix to other cloud events I’ve been to or presented at:

  • Awareness – The level of knowledge of the subject was relatively low. You might say “that’s why they’ve come to a cloud briefing session you dummy” and that would be fair, but I am contrasting this to the knowledge levels I’ve seen at other, perhaps more techy events. My conclusion – it is very easy to get misled about how well understood the subject is by the market when you work in a “consulting bubble”. There is still a significant amount of “educating the market” to be done.
  • Strategy – When the audience were asked “who has a cloud strategy/adoption plan in place today?” that the answer was – virtually nobody out of 50+ delegates. One hand went up.
  • Execution – What was clear to me from the various vendors/presenters was that no one has really done this yet. Whilst I know that there are lots of case studies that can be trotted out etc, the reality on the ground is that outside of the true early adopters, it just has not gone “mass market” yet. SaaS adoption is the exception to this rule as this is more of an evolution of the previous ASP model, but PaaS and IaaS really have tiny market take up at present in the larger enterprises. My view is that SMEs are generally adopting quicker than larger enterprises.
  • Risk – The audience did not feel particularly risk-averse. Again, I guess they had “self-selected” to attend, but I didn’t get any of that “corporate fear” paralysis sensation about data security etc that I’ve witnessed in some enterprises. So I felt like these guys were really going to make something happen over the next year or so, which I felt was particularly encouraging for both the industry and the UK economy.

One closing comment I would make about the event is that there were some points made during the day that I knew were just plain wrong, some of which fell into the FUD category. I managed to keep my mouth shut. Amazing as it may seem, I am also wrong on occasions, so I’m not having a pop here specifically – it’s just that even in the vendor/SI space we’re all still getting to grips with a disruptive technology and there is a lot of hyperbole and urban myths to be thrashed out and dispelled yet.

This years Autumn JAX conference was actually two conferences in one. The OSGi DevCon shared two days with the main JAX event. Conference delegates were then free to attend sessions from either conference. This meant that developers with little experience of OSGI really benefited from gaining insight across sessions. This years event was very well attended, the huge conference room in the London Novotel was packed, with people standing. The sessions were only 50 mins each which meant they were kept concise and to the point, so no chance of getting bored. The smaller rooms were intimate and made asking questions much less intimidating. You could feel the enthusiasm of everyone during the breaks, people were chatting and networking rather than hiding away behind their laptops. Lets not forget the lunches, the food was excellent, a great choice of dishes to cater for all tastes.

The first session I attended was Ted Newards keynote speech entitled ‘Rethinking Enterprise’. Last year Ted spoke about developers needing to find their unique selling point in world of cheap developers. His speech this year started off along the same lines. He asked the question that all developers would like answered… “What do I do to ensure I don’t get replaced by a cheaper developer?” What does this have to do with rethinking the enterprise, I wondered?

We are all programmed to jump to the most obvious solution to a problem. When at school we learn a single subject then get tested on that subject. We learn another subject then get tested on that subject. Even if the questions in our test are different to what we are used to it is a good bet that they are related to the subject we have just learnt about. As adults we attend training courses. After attending a course we return to work with our newly gained knowledge and our boss assigns us a new project. We automatically assume that the new technology we have just learnt about is going to be what we should use to implement this new project. Why else would we have been sent on the course? The same goes for enterprise applications. When someone asks us to design or implement an enterprise application we automatically think J2E and more often than not EJB . Admittedly this is a highly simplified and contrived example, but there is no doubt that we have pre-programmed solutions to problems that we are asked to solve. We may think that we are choosing the ‘Best practice’ solution, however ‘Best practice’ suggests that we have finished and there is no room for improvement. Ted challenged us to rethink this and not settle on the first solution that comes to mind. We should really look for ‘Good practice’ as this allows us room for improvement. This kind of thinking allows us to design solutions that others may not think of and therefore give us that advantage and unique selling point that we need. Don’t just settle on the obvious solution, explore the less obvious and you never know what you may find.

Another interesting and more technical session was on the subject of RESTful services. This session was run by Neil Ford from Thoughtworks. SOAP based web services have been around for a while now and are widely used. This session started off with a brief introduction to REST and its benefits over SOAP style web services. SOAP based web services are often orchestrated using a heavyweight BPEL engine. This often couples together the application providing the SOAP service and the BPEL engine. The BPEL engine must maintain the state of the process, the applications involved in the process may also maintain knowledge of the process state. This is where HATEOAS provides a mechanism to manage the state in the applications that are involved in the process. At its most basic level a REST service request is simply an HTTP request using one of the four HTTP verbs, GET, POST, DELETE, and PUT. These requests are always resource based, so you GET an order, or DELETE an order etc. The parameter string of the request URL contains all the relevant input data. REST and HATEOAS provides the ability for the application providing the service to return the set of potential next links, ie state transitions. The state transitions of the process are stored in the links rather than a heavyweight BPEL engine. A simple example of this idea that we have all seen is a search engine result page. You submit a query to a search engine and are then presented with an HTML page of results. If this were a BPEL process the BPEL engine would know which page of the results you are viewing. If you click ‘next page’ the BPEL engine would know what page is coming next and return that for display. With HATEOAS the links on the page contain the actual next page number in the URL. So if we are viewing page 2 the next page link would request page 3 and the previous page link would request page 1. There is no need for the search engine to know what page you are viewing. The state of your search process is implied by the possible transitions stored in the links, therefore encouraging a stateless approach. HATEOAS may well be the future of SOA that provides an alternative to the usual SOAP based web services.

The final area that I’m going to write about was a session entitled “Software Quality – you know it when you see it” by Erik Dörnenburg. We all want to write quality software, but how do you spot quality software? We often have to work code that was written by someone else, or code that has been around for years evolving as requirements change. If we are working on a new project or legacy code we need to quickly determine problem areas and issues that exist. We need a view of the application. Our introduction to the applications will probably be a diagram consisting of some boxes with lines joining them together, the 30,000 feet view. If we are lucky a detailed design document may tell us what the application should look like, but these are often out of date and lacking in real detail so little use when looking at code quality. Lastly we have the code itself, the 0 feet view. Far too much detail when it comes to understanding an application. What we need is the 1,000 feet view that is generated from the code itself. Erik took us through several visualisation techniques that provided a very fast way of understanding an application. The “Code City ” was probably the most interesting visualisation.

This is essentially a 3D map of the application that allowed us to quickly understand the structure of application. In the above example classes are represented as buildings, while packages are represented as districts. Problem areas are easily spotted. For example a huge building may highlight a huge hard to maintain class. Dependencies between packages could be drawn onto the city allowing us to spot problem areas very quickly. These kinds visualisation give us that 1,000 feet view where we can see potential issues very quickly. As with all these new techniques it is the initial setting up the visualisation that is the time consuming part, but as tools mature this could be the future of metrics and tools such as Checkstyle.

Smart421 normally attend the Websphere User Group, however this is a very specialised event that may not interest many Java developers. I would certainly recommend the JAX conference to any Java developer no matter what level of experience you have. In our day jobs we often concentrate on a just few technologies for several months while working on a project. We don’t get the time to explore technologies, frameworks etc that give us the inspiration to ‘Rethink the Enterprise’ or just give us a head start on our next project This kind of conference is a good way to find out about cutting edge Java technology at a useful level of detail.

BoxingGlovesI’ve just had time to properly take in Philip Allega’s excellent post about the crazy soap opera that is the falling out of John Zachman and Stan Locke. It’s got it all – strong characters, a potential inheritance, bad feeling and even a court case. Most worrying for many people must be that they may no longer be Zachman Certified(TM). It certainly doesn’t help the credibility of the Enterprise Architecture discipline in the short term, but maybe in the longer term some good will come from it if it helps us get away from the IP issues/restrictions surrounding the Zachman framework.

Maybe there’s even a film in it. I’m just glad that we chose to go for TOGAF certification…

I took a break from the wet weather in South England, in order to enjoy the wet weather in Edinburgh, and attend the WebSphere user group. For one thing; our Alan Philpott was also going up there to hold a presentation on applying best practice in terms of SDLC to Datapower devices. Also Bharat Bhushan would be presenting on trouble-shooting and performance tuning of the devices. I have the latter’s slides for any of our DP rangers who want a walk-though. I will post a pdf of them up on sharepoint.

The WUG had a bit of a wobble last year, when some of the committee (who do their work for ‘free’) found that they no longer had the spare capacity to put in. The committee are still looking for volunteers. Some people questioned whether the WUG would continue to be viable. From the attendance levels of this recent meeting, the degree of organisation, and the quality of the  presentations, you would not notice any issues.

There was an interesting set of presentations (full details here), but the stuff that caught my eye was the OSGi stream. The OSGi framework (the dynamic framework system for java) has been around for a few years, not least as the underpinning technology behind Eclipse, since version 3. There is a good definition of it on wikipedia. I have seen it before in a container used to host the enterprise service mix ESB (a.k.a. FUSE 4). Adrian Treneman gives a good run-through here.

What has been interesting has been seeing this technology hitting the mainstream (IBM), and being taken seriously there. I attended two presentations, one of which covered the tooling support in Rational Application Developer (RAD) 8, and another covering the support for OSGi in WAS 8. It was previously available as a feature pack for WAS 7.0. The interesting part here was to see that the technology was being incorporated for simple pragmatic reasons (ability to load different versions of libraries into the same JVM – to be used by different applications, lowering memory footprint by sharing libraries amongst several applications) – rather than as some new-age magic.

I have grossly over-simplified in the above, but it may be a prompter for anyone who is interested to follow it up.

The other major new thing for me was WebSphere eXtreme Scale (WXS). On first seeing the title of the presentation, I thought that it would be a re-branding of either WAS ND or WAS XD. Wrong! “It’s just a cache”, as Jonathan Marshall announced at the beginning of his presentation – hugely underselling the use of caching technologies, and the product itself – before going on to show those benefits in his talk. Having recently been involved in two use-cases for caching technologies (dynamic content management) and web-session management in hugely scaling environments: both situations where databases struggle, and application server session-sharing mechanisms struggle (the old n^2 communication overhead, as the number of app. servers increases)… I could appreciate the problems that WXS product is trying to solve.

WXS is not the only player in this space. As well as other commercial offerings (which I had previously heard issues about) there are several open source alternatives (e.g. memcached), but since the general area is very new… not all of the products implement all of the features (e.g. active standby). Indeed there is probably not a common consensus of what all the features are. I will distribute slides on the internal sharepoint site. They should become available on the WUG site in due course. The take-away news for me is that IBM have a seemingly very capable product in this area, now, which merits investigation in some of my existing scenarios, and also new scenarios such as using the cache as a system of record.

So even after a few years of going along to the WUG, it still has the ability to make me sit up and take notice! Long live the…

Smart421 are one of the sponsors for an O2 charity golf event today on the new course at Burhill. Here’s my four at the tastefully decorated Smart421 9th hole – Adam Murphy from Global Knowledge, Derek McManus from O2, and David Signorelli from Sentaca.

The motley crew...

An update – During the day we collectively raised over £22,000 for O2′s Think Big charity. It was great to be part of an event that took us out of our day jobs for for the benefit of others. Shame about my golf though…although I can say that I didn’t come last. Not quite…

logo awsJeff Barr has posted some info here on the AWS blog which provides links to other AWS pages describing how some core Oracle Applications products are now certified and supported on Amazon EC2, including eBusiness Suite, PeopleSoft, Siebel and Fusion Middleware. It feels like Oracle have joined the party at last, and not before time. The key barriers to sticking Oracle Applications on AWS before were that:

  • You had to create/customise/maintain your own AMIs (a hassle but doable)
  • More importantly, when you ring Oracle with a support issue, they might not play ball

The removal of the second barrier is the key thing. Some barriers still exist – customers still have to be happy with the data security aspects of public IaaS hosting, so that’s still a barrier, maybe mainly an emotional rather than real one. Also, Oracle Real Application Clusters (RAC) deployments are not currently supported – so that’ll put most enterprises off for now I’d have thought though.

It’s been almost exactly a year since Larry Ellison’s infamous rant against cloud computing. And clearly a year is a long time in the world of cloud computing…

DataPowerStackedIf you are interested in finding out about best practices and what is involved in managing an IBM WebSphere DataPower deployment, day in, day out, then my colleague Alan Philpott will be presenting on this subject at the WebSphere User Group meeting in Edinburgh on Tuesday 28th September. For details of the venue etc, see here.

Alan has spent the last 18 months industrialising a huge business-critical DataPower estate, and will be using Subversion etc to walk through some examples & lessons learned, what kind if support processes you need in place etc.

The head of our WebSphere practice, David Taylor, will also be in attendance – manning the stand. Quiz him about his experiences using Amazon Web Services (AWS) – he’ll love it.

Continuing on from my previous post….the second session I attended at Cloudforce 2010 covered Force.com. Being familiar with the PaaS offering already, I was more interested in drilling into some of the uses to which it was being put, pros/cons etc.

The sweet spot for Force.com was described as relational data “heavy”, process centric applications. This includes the classic Lotus Notes app replacement problem that many organisations suffer from, and also replacement for (typically business-built) Excel and Access applications. Afterwards I had a chat with one of the presenters and asked the obvious counter question – for what would it not be a good fit? The sour spot (!?) for Force.com would be an application that has very few users, performs heavy computational processing and manipulates large unstructured data (PDFs, images etc). For these latter requirements you are better going down the AWS EC2/S3-style IaaS route, although potentially Force.com could still be used for any relational data management aspects and combined with AWS services (for example). I find the idea of this ‘architectural mashup’ (my words, not theirs) quite appealing – it feels like the next logical evolutionary step after “integration at the glass”, but at the same time it also feels like the increase in moving parts and dependencies in your architecture is heading in the wrong direction, i.e. more complex.

From a competitive positioning point of view, what was interesting was that Salesforce.com focused their arguments on tackling Java and .NET development, rather than discussing how they were or were not better than other PaaS providers – so to a large extent they feel they are still in the “educating the market” phase and of course as market leaders I guess they don’t feel they need to defend their offering against more direct competitors. Quite a bit of time was spent discussing industry analysis reports comparing development speed and cost between Force.com and Java/.NET – which really reminded me of the same debates between Java and .NET in years gone by. The claim made was that in general Force.com is 5x faster, and half the cost. The flip side of that argument was not really discussed, i.e. as Force.com abstracts you away more from the underlying code (80% of the work is supposed to be “point and click”) then there must be some inherent restrictions that you could avoid in Java/.NET – it’s the classic 3GL vs 4GL debate all over again but with a cloud deployment model thrown in. My conclusion is use the right tool for the right job, it’s not either/or, and Salesforce.com’s answer would be to mix and match.

Finally, I discussed lock-in and governance concerns with the presenter afterwards. Salesforce.com are evolving and enhancing their product offerings at an amazing rate and clearly expanding out to target more and more of the enterprise IT footprint. As the post-Internet world continues to centre around fewer and fewer mega-brands, there has to be a concern with committing more and more of your IT estate to any one vendor. In addition, I have real concerns about the governance of internal Force.co implementations. Whilst there is no reason that good development lifecycle processes cannot be applied to a Force.co development, the whole point is that more of the “point and click” can be performed by users closer to the business etc, and so organisations will need to be very vigilant to prevent utter change management chaos occurring, e.g. changes to apps on the fly, redundant/duplicate data being created and never tidied up etc. Are we at the new dawn of a fresh wave of data quality and integration nightmares? I regularly see how difficult our customer’s find it to control change in “classic” software developments on mainframes etc, with the stronger more vocal change agents causing the introduction of architecturally suspect changes due to insufficient or ineffective governance controls. The lowered barriers to entry from a PaaS offering such as Force.co is like pouring petrol on this fire I suspect. We’ll see if I’m right…although I accept that predicting train wrecks in the software development world is not exactly a genius insight!

Mark Benioff?Yesterday I attended Cloudforce 2010: London – which had been moved from Tuesday to Wednesday to avoid the tube strike. This meant I could only make it for two of the afternoon sessions due to a prior customer engagement, and I must admit when I got there about 2pm I was a little bit grumpy about it all. I’d missed the Mark Benioff keynote earlier in the day, but all was not lost as I caught up with him later on as he walked around the exhibition – see the photo attached. At least I think it was him…

I’ve been a lazy blogger recently due to some client pressures, so I just wanted to capture some of the key interesting points from the two sessions I attended about Chatter and Force.com – not so much about the technologies themselves but more about what they mean for the industry.

Having heard about Chatter at a previous industry cloud event when it was in beta, I must admit to seeing it as a bit of “fluff” at the time – as it was positioned as “Facebook for the enterprise”. Having now had some demos, a few things struck me. First of all, this is really an attempt by Salesforce.com to break out of existing limited user communities in a single customer. If an organisation with 10,000 employees only has 1,000 Salesforce.com seats (e.g. access is given to Sales, Marketing and Customer Services only), then Chatter is the thin end of the wedge to grow the number of licensed seats – because if the power is that everyone can collaborate, then only having 10% of your organisation able to contribute doesn’t make much sense. They do offer a Chatter-only license model also to allow greater organisational coverage, and it’ll be interesting to see what the take-up of this model is.

Secondly, for existing Salesforce.com seats, there is no additional license cost, which is a bit of genius to support my first point. In fact, it is heading towards being just part of the base functionality of the platform and enabled by default in the future it seems, so in some ways if it had been part of the platform all along there would have been less fanfare about it.

Also, it struck me that Chatter is a potential SharePoint competitor (and similar products). I felt there was a significant overlap in their functional footprints – with either approach you can log personal info/activity and also track changes on objects – be they people, documents, discussion groups etc – and receive email alerts or see a summary on a web page. But with SharePoint this requires some effort to configure – putting an alerts summary widget on your home page for example. With Salesforce.com this is all “out of the box” which may be great or annoying depending on your point of view. But as Chatter is tightly integrated with the business process that the user is following, e.g. working on a sales opportunity, it is natural to want to track its progress – whereas in SharePoint this is all possible but again would require some configuration effort, e.g. to build a custom sales workflow process. It is a bit of an unfair comparison in some ways as they are different products, but it made we wonder how Chatter was viewed in Redmond.

And finally, whilst both the customer’s who spoke on stage said that this was not a problem for their deployments, I can see that in some organisations the “noise” generated by Chatter would be really annoying and distracting. I do not agree with the presenter’s view that the “chattiest” person is therefore the most productive and should be recognised as such in an organisation. We live in an increasingly interrupt-driven world and it is very easy to suffer from productivity sinks and this can be another one. I guess it is just a tool and like all tools, they need to be used appropriately.

Next Page »