Saturday, June 28, 2008

Ubuntu 8.04 (Hardy Heron) - an Evaluation

I've been using Ubuntu 8.04 (Hardy Heron), since about a week it was released in late April 2008. Recognizing the amount of effort I put together in making my Gutsy (Ubuntu 7.10) box the most pleasing experience to me, I decided to upgrade to Hardy and do a minimum amount of tweaking to make sure it meets my requirements.

The upgrade was so smooth and happened quite faster than I expected. I was delighted to see smoother graphics, easy-on-eye themes and layouts which were appealing at the first instance. However, in reality Hardy wasn't too far away from a most up-to-date Gusty distribution. Among the other improvements, additions and features introduced in Hardy are:
  1. Long-Term Support (LTS)
  2. Newer GNOME and Pidgin etc.
  3. Firefox 3 beta 5
  4. Brasero CD/DVD burning application
  5. Transmission BitTorrent client
  6. Linux Kernel 2.6.24-16-generic
A more detailed list can be found in the RC wiki.

However, at release point, Hardy was not as stable as Gutsy (or even Feisty perhaps). Updates have been flowing in, in abundance. It is noteworthy to state that there even was an upgrade to the Linux kernel itself in less than a month after the release. Thus, Hardy came sooner than the community expected it to.

An internet connection becomes a must perhaps to run Hardy as most incompatibility issues (including unsupported drivers, erroneous applications and numerous other bugs and vulnerabilities) were sorted after the release in the form of patches. But, this attempt to me signifies that Hardy is not a much stable OS out there. It is better suited for developers (or users) who are aiming at the latest trends in Linux based operating systems, but not for an average user who'd rather expect to have a reliable and easy to use OS.

Sunday, June 22, 2008

Firefox 3: A new definition to browsing

Firefox is the present world's most popular browser. The latest member in the family of Firefox was released last Tuesday, with a staggering amount of 8 million Firefox 3 downloads in 24 hours.

I started using the Firefox 3 interface since it's beta days, starting from Firefox 3 beta 5 which came with my Ubuntu 8.04 (Hardy Heron) operating system. Ever since then I've been enjoying Firefox 3, but with a few incompatibility issues such as, the popular work offline problem, and the unavailability of 3rd party plugins. The release solves these issues and also several other fixes that were dearly needed.

Among the improvements from earlier versions are the,
  1. Improved, intelligent address bar.
  2. Better resolution scaling.
  3. Lesser memory consumption.
  4. Improved security, making it the most secure Firefox ever.
  5. Faster browsing.
  6. Easy installing and management of plugins.
  7. Further language support.
And, most importantly with all these features Firefox 3 becomes the worlds best browser. Influenced by total communal participation, Firefox 3 is one great example of the true power and capability of open source, beating giants in browser industry such as IE and Netscape.

The latest version of Firefox can be downloaded by clicking the fancy download button (Spread Firefox button) on the right.

Thursday, June 19, 2008

Release Cycle begins @ WSO2

The WSO2 Incorporated has been a very busy company this May/June, with a number of releases in various open source projects. Ahead of others was released the WSO2 WSF/C 1.3.0 in late May and WSO2 WSF/PHP 1.3.0 (The latest stable release of WSF/PHP is 1.3.2). WSO2 WSF/C didn't see a great deal of feature improvements since the 1.2.0 release early this year but a number of bug fixes, and memory leak fixes. WSO2 WSF/C 1.3.0 ships with Guththila as the default parser which makes WSO2 WSF/C totally 3rd party independent in it's most primitive build.

Meanwhile the WSO2 WSF/PHP team has added a lot of value to their move from 1.2.0 to 1.3.0. The major features introduced are,
  1. Schema constructs support improvements for WSDL mode including SimpleType restricitons, ComplexType restrictions/extensions and attributes.
  2. WSDL Import support.
  3. Support for WSDLs with multiple bindings, API is provided to pick the preferred bindings.
  4. wsdl2php code generation improvements to support the improvements done in WSDL mode.
  5. HTTP Basic Authentication Support.
  6. SOAP Messages with Attachments support (SWA).
  7. Custom Security token support.
WSO2's WSF/PHP team did two more releases this June which mainly fixed some bugs related to security, the latest being 1.3.2.

The release with the greatest number of additions was the WSO2 ESB 1.7 adding quite a many features:
  1. Support for Hessian binary messages
  2. FIX (Financial Information eXchange) protocol transport
  3. WS-Reliable Messaging support with WSO2 Mercury
  4. Ability to stop, re-start and gracefully shutdown the ESB through JMX
  5. Integrated WSO2 Registry shipped, with ability to connect to a remote WSO2 Registry
  6. Support for re-usable database connection pools for DB report/lookup mediators
  7. Support for GZip encoding and HTTP 100 continue
  8. Natural support for dual channel messaging with WS-Addressing
  9. Cluster aware sticky load balancing support
  10. Non-blocking streaming of large messages at high concurrency with constant memory usage
  11. Support for an ELSE clause for the Filter mediator
  12. Ability to specify XPath expressions relative to the envelope or body
  13. Support for separate policies for incoming/outgoing messages
  14. Support for a mandatory sequence before mediation
  15. New Router mediator
  16. Ability to re-deploy proxy services
In addition to the WSO2 ESB, the WSO2 WSAS 2.3 was released adding,
  1. Improved interoperability
  2. Improved Data Services support
  3. Various bug fixes to Apache Axis2, Apache Rampart & WSAS
  4. WSO2 Mercury Integration - A new WS-RM Implementation
The last four weeks at WSO2 has been quite hectic, with also an Axis2 training session currently being held.

Wednesday, June 18, 2008

AMQP support now in Apache Axis2/C

Axis2/C, the world's best implementation of a WS engine in C supports both SOAP and REST style invocations. Axis2/C can be used to implement web services in many other languages as well due to it's inherent portability allowances. Examples found in the WSO2 stack, such as PHP, C++, Ruby and Perl fortify this aspect. An implementation supporting WS on Python is also underway, and will be released soon. Axis2/C can also operate based on a number of transports such as HTTP, TCP, and XMPP. The latter being a part of WSO2 WSF/C which is a glorified implementation of Axis2/C with all of its sub projects.

AMQP, or the Advanced Message Queuing Protocol is a relatively new protocol supporting network communication which was introduced about 2-3 years back. AMQP is an open standard application layer protocol for message oriented middleware. AMQP is intended to bridge the gap between common guaranteed-delivery messaging middleware, which enables complete interoperability at both protocol level and broker services semantics level. AMQP also defines an efficient wire-level format to enable a technology-neutral interoperable standard.

The AMQP transport for Axis2/C which was introduced few days ago addresses a popular demand for making it possible to author web services to use the AMQP protocol, which is a best of both worlds implementation. AMQP + Axis2/C makes it possible to integrate the world of AMQP based communication with WS services based on other standards. The Axis2/C project uses an extension provided by Apache Qpid to implement a transport based on AMQP.

Wednesday, June 11, 2008

WSO2 @ Tech.Ed 2008

Yesterday was a big day for Microsoft, WSO2 and the entire web service middleware provider industry. The true power of advanced web services and the gains in interoperability was presented in front of thousands seated, and perhaps a million or more online viewers taking part at the Microsoft Tech.Ed 2008 for IT Professionals, North America.

Jonathan Marsh, director of Mashup Technologies, WSO2 presented a real time demo on interoperability of WCF, WSO2 WSF/PHP, Axis2 (Java based), integrating several other components such as a WPF frontend and PHP enterprise applications. Jonathan was accompanied by Greg Leek, Director of Connected Systems Division, Microsoft, in the demonstration which was a part of Bob Muglia's keynote speech. The video broadcasted live is available for viewing at, [1].

Dr. Sanjiva Weerawarana, CEO WSO2, adds more spice in this blog post, which identifies interoperability as the heart and soul of a web service middleware framework. And, WSO2 provides perhaps the most comprehensive line of projects that are superior in standard and free to use.

The actual pieces of of the larger application in play are found at WSO2 Oxygen Tank, and the MSDN.


Sunday, June 8, 2008

Introducing SCI-Flex...

SCI-Flex is my present top-priority involvement, which is my final year project at the University of Moratuwa. The project is worth 10 credits of my 150 credit requirement for the 4 years of my BSc. in Computer Science and Engineering, making it the largest single contributor to my degree program.

SCI-Flex is a project aimed at the Flexible Integration of Service Oriented Architecture and Complex Event Processing. The topic is relatively new in the world of SOA as well as in the world of CEP systems. And, the achievement is a distributed SOA system utilizing a CEP system in a fully-parallel and concurrent fashion.

I'm a part of a team of three (others are Harsha, and Madhumal) individuals who are taking part in this project which focuses on the development to a real world project, Apache Synapse making it possible for it to fully utilize the power of the popular open source CEP system, Esper.

In addition to the three members in our team, Paul Fremantle, VP of Apache Synapse and CTO of WSO2, will be coordinating the project being our principle mentor. Sanjaya Karunasena, Director of Services at WSO2 is also another mentor of this project.

We have so far been able to create a mediator interface that enables both XML and AXIOM based communication between Synapse and Esper. A project has been setup at Google Code as means of facilitating our effort.

Our aim is to create a empowered and enhanced implementation of Apache Synapse with the necessary improvements and additions to fully incorporate the true power of Esper.

More information of SCI-Flex is found on the SCI-Flex blog.