Saturday, December 31, 2005

SOA and Web Services Soup to Nuts @ SOA WEB SERVICES JOURNAL

The article link above is to an article on SOA Web Services Journal. The article is about visual design and web services. The author is a product manager for Altova . I use Altova XMLSpy a lot for schema checking and validation. The author is suggesting that contract driven design using a visual editor is best. Build the WSDL and schemas first before creating the service. I must confess that most web services I have created have been from existing services or I have created the service from scratch then generated the WSDL. But the idea of creating the contract first makes a lot sense. Using a house analogy, you create a set of blueprints before you start the house.

I have talked with a few folks at other companies that are taking this design approach. Usually they say the WSDL generation tools from services are to limiting in their capability. Anybody out there using Altova to do this? Anybody creating WSDL's from hand?

Thursday, December 29, 2005

Building Reliable Infrastructure

Here are some quick tips I've used in the past when building out infrastructure and applications. Most of these are common sense and are well known. First I'll give you my quote that I also provide the customer when going over availability options. "There are two types of systems, those that have failed, those that are waiting to fail". Simply put, almost all systems no matter how well architected will crash and burn and some point. How fast you recover from that is what high availability(HA) is all about.

The quote is very important when communicating with a customer. It is important to set realistic expectations for systems. Along as humans are writing the code and building the infrastructure, then mistakes will happen. Minimizing and recovering from those mistakes are what make you HA plan. Here are the tips:

-Document, Document, Document. Every aspect of the system needs to be well documented. Concentrate on "what to do if this piece fails scenarios". Make it simple and concise. Make sure everyone has it and it has been exercised. This is the single most important step when building HA systems. The best architected system in the world means nothing if the folks doing the support don't understand it.

-Buy at least the second node. Clustering your hardware even in a passive mode can save you lots of down time. Convince your client its in their best interest. If you can't, make sure there is similar hardware on site available for parts. Trying to acquire parts while your server is down is not very fun.

-If you can, buy Veritas cluster software. It's the best. If you get it, practice, practice, practice. Go over as many what if situations as possible. Do this before the application goes live.

-Make sure you have a good change management process. Changes in the environment are responsible for a lot of application failures. Developers tend to want to throw code over the wall without a lot of testing. They are under a lot of pressure to meet deadlines and will take shortcuts. Make sure they don't if you want your systems to be stable. Always have build and test systems and make sure the code is exercised there before it goes live. Your test systems should be just like production.

-Application Architecture also has to be designed with HA in mind. The construction of your applications should take into account network failures, hardware failures, database failures etc. The way you handle errors with in the application can also affect availability. More on this in another post.

-Network Infrastructure is a key component to most applications. You can have the best architecture in the world but if your network is down then your application is down as far as the clients are concerned. Make sure you work with the network guys to understand the infrastructure and where the failure points are.

These are just a few tips I've learned over the years. Once you have a good handle on your what if scenarios and how you recover from them, then you will be able to give your clients a good idea on availability and potential down time. 5 nines is very difficult to achieve and almost no one does it. Make sure you are honest with the client and set realistic expectations. And remember, just because your application has not failed does not mean it won't. It just means you are lucky. Make sure you plan for when the luck runs out.

Friday, December 23, 2005

» Salesforce.com: Blame the database vendor | Between the Lines | ZDNet.com

The recent outage at Salesforce.com has created a buzz. Being responsible for the webMethods architecture and infrastructure at my company, I know all to well about unplanned outages and the affects on the customer. Blaming the software vendor for your outage? Well it depends. Somewhere around 99.999% of all outages are caused by human error. Either not installing correctly, failing to test the architecture and its cluster capabilities, introducing change into the environment, not following procedures, operating in an un-supported format and the list goes on. I have seen cases where the vendors software was to blame but it is pretty rare.

One important lesson I have learned over the years. Architecture your application and infrastructure with high availability in mind from the start. Most of your clients will not be willing to pay for it and will swear they don't need it. Then the first time it crashes all hell breaks lose. Sometimes you have to think for them. If a business application is worth doing in the first place(somebody is paying for it), chances are people are doing to need it most of the time, which means even small outages will cause you grief.

There are a lot of different ways to accomplish this. Your available budget will help guide you. More on this topic to come.

Wednesday, December 21, 2005

Ajax

I've been playing around with Ajax a bit. The book "Ajax in Action" is very good by the way. A very in depth treatment of the subject. The authors are Dave Crane, Eric Pascarello and Darren James. This a very detailed book. The authors not only go into detail about the technology behind Ajax but give a pretty good treatment on some common design patterns and how Ajax fits.

Here comes the but part. Although the book is very good, I not sure Ajax is quite ready for prime time. There is a lot involved with coding a simple client. A more complex client, which is the promise of Ajax, would be difficult at best. I think it will eventually come along but tooling is going to be needed for widespread adoption. I think that will be coming in 2006 but until then get ready to get in the trenches if you want to do Ajax.

Friday, December 16, 2005

What's on tap for 2006?

2006 is shaping up to be a big year in technology. The Sun announcement ripple effect will start to be felt. I suspect we will get a lot of those types of announcements from other companies. Open source will continue to put pressure on everyone. Ajax buzz is probably going to continue to grow. I would look for efforts to make the process easier via some better tooling in the popular IDEs.

Computing power will continue to go crazy. Sun's 8 core chip that consumes about the same amount of power as a light bulb is just the beginning. All of the chip makers are going that way. More and more horsepower in smaller and smaller places.

What do we need it for? SOA of course. I expect non IT technology vendors to get into the SOA business in 2006. Refrigerators are the next big SOA thing. Just imagine your home with multiple refrigerators. Of course you don't know that they are refrigerators. All you know is you have left over pizza that needs to be kept cool. You just dynamically discover the keep cool service after you eaten all you can eat. It finds the optimal refrigerator based upon your SLA and stores your pizza at is optimal goodness. No stealing that idea, its all mine.

Tuesday, December 13, 2005

elemental links: Open Source Considerations

Another very good article from Brenda Michelson on evaluating open source as a potential fit within your enterprise. There are a lot of good questions to ask when evaluating open source and its potential within the enterprise and Brenda really does a good job of laying them out. I especially like the question she asks "Could you Survive Alone?". I think that should be the very first question you should ask yourself. If you cannot get past that one, then open source is probably not for you unless you are going after a pretty safe product ie Linux or Apache etc.

Greg Wdowiak » Blog Archive » Application Integration and Agility (1): Understanding Agility

I've always thought that a more waterfall oriented approach to software development was in order for integration projects. My logic was real time integrations to tend to be complex, lots of time needs to be spent with abstracting, common data formats, and very strong understanding of up front requirements. Scope change needs to be kept to a minimum because of some of the inherent complexity.

After reading Greg Wdowiak's article, I'm suddenly a lot less sure. What do you think about an Agile methodology for integration solutions? Does it make sense?

Saturday, December 10, 2005

Jacob Hookom: Is Sun as good for open source coders as Apache?

A couple of good explanations of the open source licenses in this article. It got me to thinking about business and their approach to software and specifically support of the software. My question was this: Would it better from an IT and cost perspective to have a few strong tech resources and use open source software or is it better to use well established vendors like Microsoft, Oracle, IBM etc and pay heavy for maintenance and support.

I think the answer is, it probably varies. We tend to pay for the security blanket called support because we think they will bail us out in a bind. But in reality how often does that really happen? If you had the source and the strong tech resources, could you turn around the solution faster and cheaper? My personal experience with tech support from various companies is that all but the simplest problems are beyond their ability to help. And the turn around time is usually slow. I think a lot of times tech support agreements are like insurance. You feel scared enough that you have to have it but when you need it, you find out that it does not really cover what you thought.

I think at the end of the day having a strong core team is better than a large tech support contract whether you use open source software or not. But if you are using open source, then its an absolute requirement. Time will tell if the financial benefits are there as well.

Friday, December 09, 2005

SOA Pipeline | Services-Oriented Architectures

Once again another vendor trying to tell the customer, SOA is really a product and looky here, we have one. Check out the price.

Tuesday, December 06, 2005

elemental links: InfoWorld SOA Exec Forum: Key Takeaways from Enterprise (Real) SOA Practitioners

This a good start on some lessons learned (high level) for SOA adoption and strategy. Two key points I liked: 1) Leverage mediation between your services and 2) No one is dynamically discovering and invoking services at run time. I've always thought the mediation was key to a successful integration architecture. The idea that each application would just talk to each other using standards without some mediation just seems a little far flung in the real world. And boy if you work for an IT shop that is rolling out integration services that are dynamically discovering and invoking each other at run time, wow.

Saturday, December 03, 2005

UPA

Want to impress your co-workers? Toss out the UPA acronym in a conversation. UPA stands for Unique Particle Attribution. No this is not a physics class. Its a rule imposed on XSD validation. Here is a good explanation of UPA. I had no idea what it was. I stumbled on it while doing some interoperability test with webMethods and the new version of Axis2 ver 0.93. The WSDL I was using had not properly defined the namespace so one element could not be resolved correctly. Axis1.3, .Net and webMethods apparently have a looser validation engine than the new Axis2. So if you get a "Content model violates the unique particle attribution rule" error, now you know what the heck it means. Who says XML is complicated?

Jonathan Schwartz's Weblog

Jonathan's entry on Sun's decision to open up its enterprise suite of products is very good. I think the key point he made is this, "Betting against FOSS is like betting against gravity". My take, the train is here and it is moving fast. Like it or not, open-source is changing the software industry at a rapid pace.

Friday, December 02, 2005

Sun makes JES, developer tools free and open source

More on the Sun announcement. I particular thought the comments by Marc Fleury were interesting, especially about SeeBeyond.

Thursday, December 01, 2005

Sun Gives Away Java Enterprise System, Other Software - Yahoo! News

Sun is giving away a whole lot of software. You still have to pay if you want support but... What does this move say about the open-source movement and the pressure it is creating for the major vendors? I think it is a reasonable question to ask your software vendor, how do you plan to react to the open-source movement? If they say huh, then you probably have an issue.

Tuesday, November 29, 2005

» if (Windows Rules) then (Linux fails) | Paul Murphy | ZDNet.com

Another study funded by Microsoft comparing it's ease of use and reliability in the server world to Linux. This entry by Paul Murphy is interesting in the way it breaks down the study.

Tuesday, November 22, 2005

AJAX Again

There are a couple of interesting articles out on AJAX. One from Paul Graham and the other linked in from The Server Side. I must confess most of my experience is tying things together in the integration layer with various technologies. I can't profess to be an expert on web based gui applications. What interest me is the promise of a richer web based experience. Of course another interesting idea put forth for AJAX is the idea of orchestration of multiple web services from within the client app.

Wired News: Outsourcing to the Heartland

Okay I don't have much of an opinion on this other than it features a fellow pirate (East Carolina University). Go Pirates!!!

Monday, November 21, 2005

Open-Source Impact on Software Vendors

More and more big vendors are jumping on the open-source bandwagon. Oracle, IBM, Sun and even Microsoft to some extent are releasing pieces or versions of their product in an open-source style of license. In some cases they are simply allowing use of certain versions or pieces for free while not actually offering up the source code. In either case it seems clear that this is a move designed to counter the affect of the growing open-source movement.

What affect will this have on the smaller vendors who are not embracing(or reacting) to the open-source influence. Its probably to early to tell at this point but I think the head in the sand approach could be unwise for certain vendors. Especially the ones where a growing open-source community exists. What do you think? Is the open-source impact real or is it a fad that will die in time?

Wednesday, November 16, 2005

Google Analytics

Not that I need a whole stats package to track my usage stats on this site, but Google has release a pretty neat package. If you host a website or blog, you should check it out. It gives breakdowns on new vistors versus returning vistors, which pages are being accessed, bounce rates, location of vistors, browser types and capabilities etc.

Saturday, November 12, 2005

Sun Java Studio Tools - FREE Award-winning IDEs

This is a pretty neat deal, free! If you have never used Java Studio Creator you are missing out on a very easy way to create web apps in java. It makes working with web forms and especially web services very easy to do in java. Check it out, it will only cost you time.

Wednesday, November 09, 2005

Gates Memo: We've Got To Get This Services Thing Right - Yahoo! News

If only I had the tapes when Ozzie was bashing Microsoft back in the early 90's while he was at Lotus. My how times change.

Wednesday, November 02, 2005

Part 2 - What is Proprietary?

So does open-source help with this proprietary question? A common misconception is to lump open standards in with open-source software. They are not one in the same. Open standards is just a common way of doing something that is not controlled by one corporation/vendor and not really specific to a platform or a particular technology. The set of standards behind web services is a good example of this. Open-source provides the user with the source code to a particular application or OS along with a license of some description to use it, modify it, and distribute it. There are multiple types of open-source licenses and results do vary.

So does open-source protect a company from vendor lock-in? I would argue that it really does not completely. The ability to modify the source code or take over the source code is a big step for most companies. After all, if that ability was well established in house, the company probably would have written the software themselves in the first place. In reality the company is probably reliant on a particular distribution agent for the software they use, particularly when it comes to support. Let's look at an example.

Suppose I am a large Red Hat enterprise customer(Red Hat has a very good distribution by the way). Let's say that Red Hat decides it is not charging enough for support and they would like to add a few of their own things into the actual Linux distribution. I'm not happy with Red Hat anymore, their direction and mine are not aligning. I decide to switch my support contract to SuSE(SuSE also has a good distribution of Linux). SuSE informs my company that they do not support my Red Hat distribution but would be happy to support(and sell) a new SuSE distribution at our site. Well now I have a migration project, a big one at that. In turns out that Red Hat already has some stuff in their distribution that is unique to them as does SuSE.

So what does the example mean? It is simple, open-source means the source is open and that is all. It does not mean vendor lock-in cannot occur. Most companies rely on and pay for support for enterprise class software. Assuming that because the source is open, switching from one vendor's version to another will be easy would be a mistake. So how do I avoid or minimize vendor lock-in? Coming up in Part 3.

Wednesday, October 26, 2005

CNN.com - Web-based software challenges Windows - Oct 25, 2005

More on AJAX and its sudden rise in popularity. All this thanks to Google according to the article. I can certainly think of some potential apps for AJAX development. webMethods administration is all browser based. There is a lot of potential there.

Tuesday, October 25, 2005

Computerworld | 'Nightmare' drove desperate user to open source

Well this is one way to do it. I can only imagine trying this at my company. I don't know if I would describe Windows servers as a nightmare, but they certainly can be expensive and difficult to maintain. Of course so can any OS in the wrong hands.

Tuesday, October 18, 2005

New hopes from Sun's idea factory | CNET News.com

Originally saw a reference to this on Slashdot. Sun seems to be slowly turning the ship around. I think the Google announcement, although lacking in substance, really helped with some image issues.

Friday, October 07, 2005

What is Proprietary?

I have been thinking a lot about this subject lately (a lot is all relative). Two subjects that are getting a lot of air time these days are Open-Source software and SOA's. One word that seems to come up a lot in any conversation about SOA's and Open-Source software is "Proprietary". So I asked myself, what is proprietary and should I care? I am just going to talk about SOA's for now. I will address Open-Source at a later time. You can hardly wait, I can tell.

Some of the new upstart SOA proponents warn against using proprietary technology in your SOA. The finger is quick to point to the evil expensive proprietary traditional EAI vendors as what is wrong in the world. Standards based solutions are the way to go, otherwise you get locked in and interoperability becomes an issue. These vendors typically also point out that there solution is 100% standards based and they do not use any proprietary technology.

So what's the truth to that claim? Are you going to get locked in with a traditional EAI vendor? Are interoperability issues going to plague your until retirement and be passed on to your children? The answer is yes and no. So let's add another concept, it is called the provider. Let's use Java's JMS (Java Messaging Service) as an example. JMS is really nothing more than a series of interfaces and api's with no real meat. It is up to a provider (SonicMQ, webMethods, Tibco, MQ Series, etc) to provide the meat for JMS. The interfaces and api's are contracts that more or less bind the provider into providing a set of services that are standard across the board.

Just like in life however, contracts are open to interpretation. Each vendor selects and interprets which set of api's and interfaces they are going to implement and support. So your nice JMS client over here may not be your nice JMS client with a different provider over there. So while the idea of standards sounds nice, the reality is a little more complicated. It is really up to the architect and the developers then to know the standards very well and know when the provider is deviating from them. Otherwise your highly touted portable service becomes something more akin to an anchor.

This brings me to my point (you thought I would never get there). Underneath the covers there is always a provider. And swapping out providers is almost never an easy thing to do. Spending more time on the principles of loose coupling, abstraction and common data models regardless of the technology provider will pay off in a much bigger way than spending time chasing ever moving standards and the vendors that are touting them. There are no bad standards, just bad providers. Okay I was trying to use the dog analogy but it doesn't really work because there are some bad standards. The point is, standards are a good thing but they are just a part of the total solution.

Tuesday, October 04, 2005

Sun Microsystems announces a partnership with Google

I think this is good news for Sun. I not really sure how earth shattering the announcement is though. Downloading the Google toolbar with Java doesn't seem to make a whole lot of sense. Just a forecast of things to come maybe.

Saturday, October 01, 2005

LinuxPlanet - Reviews - Opening Solaris - The Solaris 10 Pitch

Just read this review of Solaris 10. I have not had a chance to get my hands on 10 yet. The review points out some pretty cool new features. The one I like the best is Dtrace. If you have ever used Solaris you know that the truss command can be pretty useful in debugging programs. But it had some limits. Dtrace takes this concept much further. Being able to look inside your program while it is running can save a lot of time when it is misbehaving. Things like why aren't my libraries loading, what's it looking for etc.

The reviews goes on to mention things like self-healing(new Solaris service manager), virtualization(containers), and very quick boot times ( although I never really saw the need for this, my servers rarely have to be booted except for patches)

If you are looking for a good server operating system, Solaris continues to be at the top of the heap. I like Linux ( the blog is hosted on a Linux server at my house) but I don't think it is as far along as Solaris. No doubt though that Linux's capability will continue to rise.

Tuesday, September 27, 2005

Google Claims Rivals Can't Hold a Candle to It - Yahoo! News

Does size matter?

Apparently Google thinks so. They are bragging about the size of their web index. Well at least the article explains those birthday cakes on their website.

PubSub PubStats

PubSub PubStats

I thought this was kind of a cool tool, actually several tools at this site. You can get site stats, rankings for more popular sites and even plugins for Firefox and IE to manage realtime subscriptions. Check it out when you have time.

ClearNova: RAD for AJAX, J2EE, and Open Source

ClearNova: RAD for AJAX, J2EE, and Open Source

CLEARNOVA has just released a platform for developing AJAX applications. Their site has some good info on AJAX and samples for learning or playing with AJAX. The Learn AJAX section on their site has samples and downloads to help. You don't need their platform for that. Their product is not free, actually pretty pricey. But still it does look interesting.

Friday, September 23, 2005

Ajax for Java developers: Build dynamic Java applications

Ajax for Java developers: Build dynamic Java applications

I found the article referenced above while reading Slashdot. It goes into a lot of detail on Ajax development. After reading the article, it reminds me of the functionality available in .Net with web services which has the ability to do asynch callback type functionality.

Tuesday, September 20, 2005

Mule 1.1, ESB messaging framework, released

Mule 1.1, ESB messaging framework, released

Mule is another open-source ESB along the lines of ServiceMix. I started looking around ServiceMix a few weeks ago. I think the thing that strikes me is the lack of tooling for these offerings. I am not a huge GUI fan, I tend to lean more toward the command line and simple text editors. However, given the somewhat complex nature of integration work especially when asynch messaging, and complex transformations/enrichment are involved; I think tooling becomes extremely important. Before these frameworks become any kind of serious player, they will have to evolve a lot. They probably will not need the kind of tool sets available from the pure play vendors but something more than what is there will be needed for more mainstream adoption.

Microsoft Gets the Open-Source Religion

Microsoft Gets the Open-Source Religion

It's a small first step but as the author points out, it could be a sign of things to come from Microsoft.

Wednesday, September 14, 2005

Google Blog Search

Google Blog Search

Not bad and very fast. Try searching on something like...oh I don't know, how about webMethods or ESB's?

Tuesday, September 13, 2005

Iona takes lead in new Eclipse SOA project

Iona takes lead in new Eclipse SOA project

More talk of ESB's and SOA. Iona and Loosely Coupled are definitely not on the same page. Iona is pushing this new tool set via Eclipse as open-source as well as their ESB offering. That ESB word just keeps coming up. Of course since Oracle is going to end up owning everything, it really probably doesn't matter.

Thursday, September 08, 2005

Loosely Coupled weblog - on-demand web services

Loosely Coupled weblog - on-demand web services

There is an article out there on the ESB as a concept. It's called Microsoft explodes the ESB. Now there is a wise authority on Enterprise Application Integration. Now if only their servers didn't have to be therapeutically rebooted.... On a serious note, Microsoft has done a pretty good job with their web services tool kit. But I would really hesitate to give them much credibility beyond that.

As far as the ESB goes, maybe the term will go away in the near future. But what is happening in the middleware layer will not. Companies still struggle with basic concepts especially surrounding SOA. And I am still not convinced that what the article is proposing is the best way to go.

Thursday, September 01, 2005

Tuesday, August 30, 2005

Java Business Integration

Java Business Integration

A good introduction to what JBI is about. However I'm skeptical that this is a better way to build integrations especially based upon the author's comment on the canonical document.

Steve Vinoski, writes "All the messages exchanged through the NMR are normalized messages, which doesn’t imply that all messages are converted to a canonical format. As I mentioned, EAI systems already proved that translating messages into canonical formats can negatively impact performance, scalability, and the ability to further integrate systems with other integration infrastructures. The NMR avoids these ­negative impacts by treating message payloads as opaque data that it simply sends along to the receiver."

Steve Vinoski, "Java Business Integration," IEEE Internet Computing, vol. 9, no. 4, 2005, pp. 89-91.

Not only have I not seen this performance issue, the canonical format is one of the bigger benefits from inserting an integration layer. Sure things like persisted messaging, async processing etc are nice but at the end of the day if you have tied all of your integrations together without the canonical, what are you left with? A very robust set of point-to-point integrations. Maybe I'm missing the boat here but it seems to violate the principals of abstraction, de-coupling etc. It seems that we are just moving the translation engine out of the middle layer and letting the application(s) do it. Is that really a good thing?

Saturday, August 27, 2005

Open source ESB projects Synapse and Celtix contributed

Open source ESB projects Synapse and Celtix contributed

A little more on the ESB and Open-Source. At what point do big companies who rely on mission critical software, start looking at the open-source offerings. Every company is unique in its tolerance for risk. The question becomes what is more risky? Closed systems from a single vendor with no control over end of life cycles or changes in product direction? Or using software from a community effort or small financially questionable company? Not an easy answer I am afraid. Both have their risks and impacts to corporations.

The open-source path. Simply having the source and being able to control your own destiny sounds good but what about in actual practice? Do you have the development expertise to handle the source, make changes? Do you really want to do that? What about support? Is your corporation self-sufficient from support standpoint or do you rely heavily on vendor support? I think the answers to these questions would have to drive your decisions. I think corporations with strong Unix and Java backgrounds would tend to do better here as a start.

Closed vendor path. The benefits here tend to be (but not always) stronger vendor stability and a more robust/dependable support structure. ie escalation paths when things go bad. There is probably a better long term outlook for the software from the vendor and a more well defined plan. The catch tends to be lock-in. The vendor will make decisions on direction based upon their business needs. If their needs and your needs align, very good. If they do not align, you could find yourself with some difficult and costly decisions.

The choices and decisions are not easy ones to make. But every corporation should be aware of the software market and the impact open-source offerings are starting to have.

Sunday, August 21, 2005

Unlocking the enterprise for open source | CNET News.com

Unlocking the enterprise for open source | CNET News.com

Good article from CNET on open-source software and its adoption into the corporate world. I know most companies are feeling pressure to reduce cost at every turn. Most companies are trying many different ways to do this: outsourcing, reduced benefits, pay cuts, increased automation, longer hours with fewer workers (thats your basic productivity number) and many other ways. Companies are also looking for ways to become more competitive.

Software and its associated cost remain a largely untapped source for cost reduction. And we know that software when used properly can give a corporation a competitive edge. I don't know that open-source software is a silver bullet (its not, really there is not such thing), but changing the way software is purchased, licensed and owned/maintained will eventually have a large impact on corporations and the bottom line. Some of which will be good and some maybe not so good (open-source licensing still has some kinks).

Saturday, August 20, 2005

ServiceMix - ServiceMix 1.0 Release

ServiceMix - ServiceMix 1.0 Release

Another open-source ESB enters the mix. These are becoming more numerous. None of these are of the quality or feature set of a webMethods or Tibco. But will they eventually put any pressure on the pure play vendors? Only time will tell but certainly something to watch.

Thursday, August 18, 2005

Zotob, PnP Worms Slam 13 DaimlerChrysler Plants - Yahoo! News

Zotob, PnP Worms Slam 13 DaimlerChrysler Plants - Yahoo! News

I've always wondered why Chrysler had more defects in their cars than anyone else. Using Windows as a critical part of the assembly line seems to explain a lot.

Monday, August 01, 2005

Developers and Infrastructure

How much do developers really need to know about infrastructure? I read an article recently about developers becoming further removed from the infrastructure. Which on the surface sounds pretty good. Tools make you more productive, auto generating this and that. But how does that play out in the integration landscape? The more abstracted the developer becomes from the underlying infrastructure, the less likely the developer is going to be able to deliver reliable integrations. So what does that really mean?

Integration reliability depends on the developer understanding the infrastructure. What happens when the network is down? What happens when a database connect fails? What happens if two targets are updated but the third one fails? How does the integration respond to the various runtime errors that can occur when traversing multiple distributed systems? Most of this stuff takes place asynchronously making the matter even more difficult. I plan sharing some my experiences with designing for these types of events in the integration layer. Some of the hard lessons learned.

Wednesday, July 20, 2005

Craig Walls: Message-Driven POJOs

Craig Walls: Message-Driven POJOs

Reading this article on the benefits of a POJO implementation instead of a full blown MDB EJB ie Message Driven Bean implementation along with app server. It starts to get into some of the benefits of using a less complicated infrastructure which I think is a good thing. It does raise the question in my mind, how do you account for and deploy POJO type applications. It's not as clean as deploying an app on an app server or even webMethods for that matter. Do you set up a dedicated infrastructure for POJO's or do you co-habitate with the app servers? What do others do? My thoughts are these types of apps can coexist with others. When talking JMS adapters, pushing out to the endpoints can make sense. Of course that can increase complexity, so management of those distributed objects must be accounted for. Any thoughts?

Tuesday, July 12, 2005

Lightning Strike

The server survived a direct lightning strike to house(A laptop did not). The house took some damage but it's not too bad. It could have been a lot worse. We are very thankful.

Friday, July 01, 2005

Open Source Ascendant - Editorial - CIO

Open Source Ascendant - Editorial - CIO

Interesting article about Linux cost savings. After reading the article, I'm very skeptical of the stated cost savings when compared to Unix. Red Hat Enterprise support is at least as expensive as Sun and HP (More in some cases). I think the author either didn't get the details or ignored them. The word free was used by the CIO of this company a couple of times. OSS does not mean free. And Redhat certainly is not. Hardware is pretty competitive among all the vendors, so I don't see a lot of potential savings there either unless you were comparing a Sunfire 15k against a Dell pizza box. I'm a fan of Open-Source but not a fan of unrealistic expectations or exaggerated cost savings.

The Open-Source movement definitely deserves credit for driving down the cost of more traditional Unix vendors. But the costs are now very competitive. A quick survey of the major players will show that it is a wash in most cases. Unless of course you are downloading a free Linux distribution and not buying support. Good luck with that.

Friday, June 24, 2005

BPM

Nathan Lee has a good post on the use of BPM tools. Adding my own two cents. The potential for BPM is good for long running complex processes. But from an overhead and complexity perspective is it really providing the touted benefits?

The ability to stop, pause, branch and restart individual steps is pretty powerful in a complex long running process. This makes complex processes more supportable. However, despite the modeler's ease of use (webMethods version), these processes can be difficult to develop and deploy. They also add a large load to the infrastructure.

Some criteria to use: long running and lots of steps. High volume, low latency would not be the best fit for BPM. Unless of course you own stock in Sun or Intel. Other things to think about, does my process frequently stall while waiting on some action? Does it have multiple points where it can stall or wait for long periods? Do I need or want visibility into this while it is happening? Does the process take different paths based upon some filter(s)?

And last but not least, do I have a big honking server(s) to run it on?

Friday, June 17, 2005

The case for document-centric Web services development

The case for document-centric Web services development

I thought this was a good discussion. One part of the discussion I was particularly interested in was the WSDL first approach to doing web services. Ie instead of using some tool to autogenerate a service interface, develop your contract first. The reason I find this interesting is that the more I work with tools the more interoperability problems I see. Plus as one of the comments discusses, this can still lead to a brittle architecture.

Thursday, June 09, 2005

UPS

No not the big brown truck company. I really need to put this server on a ups. A really robust thunderstorm last night took it out for a couple of minutes. Not that it is all that critical but still a good practice. The surge protector keeps it from being fried and all. I just like see the continuous uptime.

Wednesday, June 01, 2005

Describing Web Services and SOAs As Options Proliferate

Describing Web Services and SOAs As Options Proliferate

I'm still seeing more hype than actual real implementation. This article discusses some of the issues associated with the current WSDL spec. The more I work with vendors trying to implement web services, the more issues I see with this taking off as promised. Not only do vendors have to deliver the core functionality of their product, they now have to be integration experts. Up on the latest WS specs, and all other cross platform issues. One commenter on the above article makes the point that Web Services are going the way of EJB. EJB is used today but 90% of java development is around plain old java objects. Why? EJB became to complex to implement for the fast majority of developers. It appears that Web Services could head down that same path as the standards around continue to proliferate.

Tuesday, May 31, 2005

Enterprises Tout Linux's Cost, Performance Benefits - Yahoo! News

Enterprises Tout Linux's Cost, Performance Benefits - Yahoo! News

Good to hear from folks who have actually done the switch to Linux. Look at some of the names in the article and the story gets even better. I suspect we will see more Microsoft funded research to dispute this.

Wednesday, May 25, 2005

Linux Today - SearchEnterpriseLinux: EnterpriseDB CEO: Open Source Databases are 'Unstoppable Force'

Linux Today - SearchEnterpriseLinux: EnterpriseDB CEO: Open Source Databases are 'Unstoppable Force'

Andy use to work for webMethods as the Web Services Standards guy. We had a customer visit with webMethods a while back and I got to meet Andy. A very personable and engaging person. Not your typical CEO type. Sounds like they have a pretty good business case and plan. It will be interesting to see how much market share they can erode from Oracle. It shouldn't take to much to make them very successful.

Friday, May 20, 2005

Real World Integration

There is a lot of discussion going around on the future of Enterprise Integration. Will it be all SOA? Will there be an ESB required? What will happen to pure play EAI vendors? Where does Open-Source fit in? Having done a lot of "Real World Integration" and spoken with a lot of individuals from other companies, I think I can safely say that Enterprise Integration will continue to be one of the more complex and challenging disciplines with in any organization.

I don't think pure play vendors are going anywhere (assuming they stay financially viable), SOA will continue to grow in hype but practical implementation will still be very challenging. ESB's will be interesting to watch. I'm not convinced that they will be able to distinguish themselves above and beyond the pure play EAI vendors (one in the same sometimes). And Open-Source will continue to put pressure on every traditional software shop which is a good thing.

There is a lot of buzz around the Service Oriented Architecture (SOA). Their are now what I call "purist" who believe that ultimately all applications will just talk with each other via the WS-* standard de-jour. While an interesting goal, not one really based in reality. The average software shop (not the Oracle's, Microsoft's or IBM's) will not have the vision or resources to embed this integration layer into their core apps. A lot of developers still struggle with basic integration concepts. The large number of standards associated with the WS-* specs, make it extremely unlikely that wide spread understanding much less adoption will occur. This will also make interoperability a difficult challenge as developers struggle to interpret the standards. Except perhaps in the larger software shops.

But what if they could? Would that really be a good thing? I'm not sure. I believe manageability of that type of distributed infrastructure would be much more costly than a more centralized approach. A lot of folks who implement pure play integration solutions end up with a more central architecture even though the products usually support a distributed model. Certainly some of the reason that happens is cost. But I think a big contributing factor is complexity. Lots of moving parts create lots of support issues.

Don't get me wrong. I think a move to embrace the SOA architectural style is a good thing. But only when taken with a dose of reality. More on the reality of integration to come.

Tuesday, May 17, 2005

webMethods Customer Council

I'm hanging out at webMethods HQ this week at their Customer Council event. They bring in customers to talk with various folks about direction, support, quality etc. This is one of the positives with working with webMethods. They are a very approachable software company. Access is provided to all levels of folks within the organization. This was a big selling point to me when evaluating webMethods.

Of course the other big benefit of this event, is meeting the other customers and sharing stories. It's always good to find out what others are doing and what they are experiencing.

Monday, May 16, 2005

IT Execs Should Learn More About Coding - Yahoo! News

IT Execs Should Learn More About Coding - Yahoo! News

I thought this was interesting. There is certainly a big push for IT folks to learn "the business". What about CIO's knowing the howto's of coding?

Tuesday, May 10, 2005

David Kirkpatrick - Execs Tell Software Makers: 'Some of You Are Doomed' - FORTUNE

David Kirkpatrick - Execs Tell Software Makers: 'Some of You Are Doomed' - FORTUNE

A very interesting article on the quality of software today. I think a lot of us can relate to some of the views expressed by the CIO's. Those of us on the integration side get exposed to a lot more technology, both the good and bad. Real time integration seems to really bring out or expose a lot of the problems.

Friday, April 29, 2005

Open-Source EAI Project

I'm considering starting an Open-Source EAI project. The basic concept is a simple implementation of a EAI platform. The design would be simple, easy to deliver, easy to operate. It would be all Java based using JMS as the messaging system. The strengths would be robustness and reliability based upon my experiences with implementing and enhancing EAI solutions. It would not contain a great degree of transformation or data enrichment capabilities. Those can be added by the user. It's just in the concept stage right now. I'll keep you posted as I get a little further along. I will post a link to the primary site project, once it is far enough along. Why you ask? It's a good exercise for me and it might give some folks who have not been exposed to EAI a chance to get into it without the large investment that goes along with EAI solutions. Kind of a simple learning tool.

Monday, April 25, 2005

NewsForge | RMS: BitKeeper bon-voyage is a happy ending

NewsForge | RMS: BitKeeper bon-voyage is a happy ending

It's interesting. I'm not really sure how business decision makers react to this kind of stuff. Promoting open-source is difficult at best in the large corporate world. Does this kind of thing help or hurt?

Monday, April 18, 2005

Kernel Changes Draw Concern from Open-Source Community

Kernel Changes Draw Concern from Open-Source Community

Growing pains for Linux. Really not unexpected. There is a lot of competition happening with the different distributions. The article makes me think of the question, can a desktop operating system and server operating system be one in the same? Microsoft has tried over the years to get their original desktop OS to become a robust server operating platform. They have made some significant progress but in my view still no where near the capability of UNIX. Now Linux is trying to compete with Microsoft for a share of the desktop market. Will that take away from the server OS?

Monday, April 11, 2005

[ eChannelLine Canada ]

[ eChannelLine Canada ]

Those who like the idea of open source and technologies like Linux have to be careful with our enthusiasms. The old saying "you don't know what you don't know" has a sister saying which is "you don't know what you do know". Okay I made that up but.... Sometimes we are so close to the technology that we don't realize how far away others are. It may seem simple but to others it is not. In the end, businesses are going to go after what costs the least and gives them the least amount of trouble.

Wednesday, April 06, 2005

Linux Today - CNET News: Sun Criticizes Popular Open-Source License

Linux Today - CNET News: Sun Criticizes Popular Open-Source License

You know I like Sun but Jonathan could use a class in how to "win friends and influence people". Open source has it's share of issues but it is also where the software market is moving. Trying to stop the train by parking your car on the train tracks well.......

Monday, March 28, 2005

Web Services Testing

I've been doing some interoperability testing between webMethods, .Net, Eclipse with its new web tools, and IBM's WebSphere. There are some nuisances with each product that affect how they work with other web services. As much as it pains me, .Net is by far the least painful to work with.

I do have to give some props to the Eclipse folks however. Their open source product is pretty robust as everyone knows but what is more impressive is their support. I had a few issues and even stumbled upon a bug. The responsiveness of folks on the Eclipse side that helped me out was pretty amazing. I pretty much got immediate feedback that was dead on correct.

Friday, March 25, 2005

Data Loss

I use blogger.com to publish posts to my server. I'm not sure what happen but I have lost some recent posts. It appears that they have had some sort of glitch. No earth shattering revelations were lost on this blog, but I'm a bit puzzled as to why it happen.

Thursday, March 10, 2005

Monday, March 07, 2005

Divide And Conquer Yourself

Divide And Conquer Yourself

This article hits the nail on the head. The Unix community's in-fighting will ultimately lead to an even more powerful Microsoft. Linux versus Sun is a terrible fight. Take Sun out of the picture and what are you left with from the OS side? Redhat, Novell? I'm not anti-Microsoft, but I do believe competition leads to the best products.

Saturday, March 05, 2005

Web Services: REST in Peace? Jim Webber Weblog - WebServices.Org

Web Services: REST in Peace? Jim Webber Weblog - WebServices.Org

A good article on webservices and where it is evolving too. Especially around the rpc type of webservices versus the doc/literal type. As Jim explains, the standard for webservices is rapidly moving away from using rpc which generally results in tight coupling and a proliferation of point to point interfaces.

Thursday, March 03, 2005

Yahoo! News - Microsoft Loses Key Windows Architect to Google

Yahoo! News - Microsoft Loses Key Windows Architect to Google

So the article says he may be at Google to work on an operating system for them. Is there room for another operating system?

Yahoo! News - No Love Lost in the Enterprise OS Fight

Yahoo! News - No Love Lost in the Enterprise OS Fight

As I have said before, Microsoft has got to be loving this. Sun, IBM and Redhat, talking about taking your eye off the ball. You guys are killing each other and for no reason. Microsoft is focused on selling software and you all are focused on taking shots at each other. I wonder who is going to come out on top of all of this. Hmm.......

Saturday, February 26, 2005

SUSE to Fedora 3

Well I had to switch to Fedora on my laptop from SUSE. My company is using RedHat Enterprise going forward so I wanted to get some more time with Redhat and webMethods. The setup was pretty easy on SUSE. I can't say the same for Fedora. I'm still using SUSE for this site, no plans to change that.

Monday, February 21, 2005

Coupling versus Cohesion�When to Leverage Services David S. Linthicum Weblog - WebServices.Org

Coupling versus Cohesion�When to Leverage Services David S. Linthicum Weblog - WebServices.Org

This is a very interesting article on SOA and the more traditional middleware layer we think of when talking webMethods. His notion that services are in fact by their nature coupled is very intriguing. Most discussion about SOA brings up terms like loosely coupled and coarse grain services. But David makes a good point about the dependency of these lower level web services that make up a service. He also points out that they can be architected to be more loosely coupled. Understanding the tradeoffs and when to use each type of the integration is where the Architect role comes in.

Sunday, February 20, 2005

Integration Developers News

Integration Developers News

Very good article on SOA and Web Services. The demand for this next level of integration is on the rise. Products like webMethods really help enable this type of architecture. The article is talking mainly about Java skills but products like webMethods take out a lot of the complexity out of the picture.

Friday, February 11, 2005

First National Bank of Omaha throws Sun out - Computerworld

First National Bank of Omaha throws Sun out - Computerworld

Interesting article, although the title is very misleading. The company only had 30 sun servers versus the 560 Windows servers it got rid of. I suspect the bulk of the admin cost they are saving come from the reduction of Windows servers. The Open Source movement and Sun are in a bit of a tift these days. It shows up in highly subjective journalism being passed for objective reporting. Of course why should tech reporters be any different from regular news reporters?

eosj.com ::: Enterprise Open Source Journal

eosj.com ::: Enterprise Open Source Journal

I think I'm going to give this new mag a try. The Open Source train is wide open at this point but I think this mag addresses issues with Open Source in the enterprise. Should be an interesting read.

Tuesday, February 08, 2005

Financial Industry Floats Open-Source Messaging Standard for Web Services, SOA

Financial Industry Floats Open-Source Messaging Standard for Web Services, SOA

This is an interesting idea. Cross platform support with no adapters necessary for messaging? This could be a potential benefit to smaller companies that cannot afford the initial investments in the bigger players. Open-Source continues to gain a lot of steam.

Top Ten Reasons to Batch

10. When your data absolutely has to be there a month after it happen
9. Watching a cascading implosion of dependent batch jobs at 2AM is kind of fun
8. War room sounds neat
7. Your afternoon naps are important
6. You need 24 hours to ponder a broken batch job
5. Real Time, You don't need no stinking real time
4. Month end data surprises are fun
3. You haven't learned anything in 20 years, why start now?
2. You like the client calling you every hour for 24 hours after a broke down batch
1. Cool batcharena song

Thursday, February 03, 2005

Software Development in Large Companies

I have been thinking a lot about this topic as of late. The nature of my job, Integration Architecture, exposes me to a lot of projects within the company. Our development organizations are aligned to our business teams. The developments teams do not tend to do a lot of full blown custom development. Instead they are generally charged with implementing what I would call niche packaged applications from industry specific vendors. Implementations meaning getting the package to production with some custom add-ons like reporting, additional business logic or integration to other corporate systems.

Within each development team, the developer's skill sets may be mixed or all of one particular type of skill. This as you can imagine leads to the inconsistent application of technology across the company. Sometimes the choice of technology is driven by the package or often by the skill set of the particular application development team.

We have had much success with webMethods at our company. But I would argue it had less to do with the technology and more to do with how we have organized around it. We still see the same business aligned development teams, but we also implemented a small integration competency center. This competency center has been charged with overall responsibility of the architecture, implementation, and on-going support of the integration platform. This concentration of skill set has lead to consistent, reliable and repeatable integrations.


I'm curious to know what others see in their organizations. Should developers in large organizations be business aligned or do competency centers make more sense?

Monday, January 31, 2005

Yahoo! News - The Open-Source Challenge

Yahoo! News - The Open-Source Challenge

Right or wrong, Open-Source is rapidly changing the landscape. I think the term re-inventing themselves is going to come into play a lot over the next few years as the traditional software vendors try and figure this out.

Saturday, January 29, 2005

ISS X-Force Database:sdk-jre-applet-restriction-bypass(18188): Sun SDK and JRE applet bypass sandbox restrictions

ISS X-Force Database:sdk-jre-applet-restriction-bypass(18188): Sun SDK and JRE applet bypass sandbox restrictions

For you webMethods folks, this shouldn't affect your servers...but your developer's desktops might have this problem if they are using the Sun JDK. Take note in the advice that it is not enough to just stop using it, it must be completely removed from the system.

Friday, January 28, 2005

New Web Services Standards

W3C and OASIS have put out some new recommendations on standards for Web Services. I don't know about you but I'm still trying to get my hands around the existing standards. One of the biggest challenges we have seen is interoperability between vendors. We are using a variety of vendors including Microsoft(.Net), webMethods, webSphere, custom C clients, custom Java clients plus others. All of which seem to have varying levels of support for Web Services.

One of the bright spots is the ease of which webMethods and .Net interoperate. Of course this is assuming you get over the hump of how webMethods works with doc/literal. Many thanks to Mark Carlson for that bit of knowledge.

I haven't found the interoperability between webSphere and anything to be as straight forward. I believe that is mainly due to the way the WSAD IDE does things for you behind the scenes. I admit I'm not an expert with the WSAD but I do fine that it generates code behind the scenes that uses IBM specific classes or implementations that does not always play well with others.

Sunday, January 23, 2005

Java and Web Services

I am looking at different IDE's that have web services support(for Java development). I haven't been thrilled at the toolsets so far. It seems Microsoft has a better knack for the development environment. The Java tools are either really big and bulky ie WebSphere (WSAD ) or really light on features. .Net makes consuming and producing Web Services pretty trivial. I kind of like Sun's new Java Studio Creator. It takes a similar approach in terms of layout that Microsoft does. Web Services creation and consumption are almost identical to Microsoft's .Net environment. I wonder it there was any collaboration there.

I'm still trying to get use to Eclipse. I'm not a huge fan but that is the way of the future. webMethods is porting its development environment to Eclipse sometime in the fall. So I have little choice.

Monday, January 17, 2005

Techworld.com - Enterprise benefits of the Linux 2.6 kernel

Techworld.com - Enterprise benefits of the Linux 2.6 kernel

I thought this was an interesting article on some kernel differences between the major vendors. It is a little old but still applies. Does this contribute to vendor lock-in? Just how difficult would it be to move off of Redhat Enterprise and go to SuSe enterprise? I am talking about large scale enterprise applications.