Main

September 28, 2011

Raving about Rave!!

So, if you didn’t know – here at Hippo we’re doing some incredibly cool stuff with the Apache Software Foundation. One of the new things that I’m excited about is Apache Rave, a project currently undergoing Incubation within Apache.

Apache Rave is a new Web and Social mashup engine. Right out of the box it will provide an extensible, lightweight Java platform to host, serve and aggregate Open Social Gadgets and services – all through a highly customizable friendly UI.

It's like a portal - but without the portal. Instead of heavy weight, expensive, server-side Java portlets, Rave is taking a more modern approach focusing on client side rendering of Gadgets and Widgets.

I like the Rave concept because it’s built and targeted to be an engine for web sites, intranet portals and social network channels. I believe that these things will eventually blend into one thing - and become the building blocks of every website. I see more and more demand for portal like behavior in websites - as well as social aspects and personalization. Intranets have traditionally been very behind the firewall, but the trend is to move more and more of the organization's internal apps to the cloud. At the same time, people start to understand that a business really is and has always been a true social network - and that a more social approach to intranets is the future. Rave brings all this together. And I'm thrilled to be part of it!

Mark my words: in 5 years time, every website will be personalized and socialized.

Continue reading "Raving about Rave!!" »

March 31, 2010

The Dutch national government has a brand new website

News from the Dutch open source camp:

"On March 31, 2010, the first version of www.rijksoverheid.nl went live. This common website for all government ministries will make the central government more recognizable and accessible." (source: http://www.rijksoverheid.nl)
"Starting in 2010, the Dutch national government will communicate via a single website: www.rijksoverheid.nl. The various ministries will be added to the website in stages. As of its launch on 31 March, 5 ministries are currently active on this website. During the course of the year, the other ministries will be added." (source: http://www.rijksoverheid.nl)

I have to admit: our government has been very ambitious right from the start of this humongous project. The goal they set for themselves is not an easy one: to open up all information, in every possible way, using "Open Content, Open Data, Open Standards and Open Source".

rijksoverheid.png

It's no secret that this new grand website is based on a large set of open source components, among which many Apache projects, and of course my personal pride Hippo CMS. Hats off to Apache for being such a great open source community, and for being the foundation and source of inspiration for everything we do at Hippo!

"The government doesn't want to be tied to certain suppliers and licenses and therefore chooses for open standards and open source. [..] Using open standards will make it easier to exchange information with other government websites"

Congratulations to everyone who worked on this mega project, in particular everyone at ONS, Gerrit, Jettro, Michael, Gemma, all the JTeam guys, and of course the people here at Hippo: Bart, Berry, Frank, Ard, Stephan, Dennis, and the man who should receive an award for being the hardest working man in CMS business: Jeroen Reijn (maybe one day, he will :) ).

October 26, 2009

ApacheCon US 09 Evening Meet-ups - Free for all

Monday 2nd, Tuesday 3rd and Thursday 5th of November
Oakland, CA
Content Tech, Hadoop, Lucene, NoSql, OSGi/Felix, SocialAndWidgets, Subversion, Tomcat, Traffic Server Podling, WebCrawlers, WebServices

Join us for a third year of Apache Meetups! Users, committers, managers and developers will come together on the evenings of Monday 2nd, Tuesday 3rd, Thursday 5th of November .

Registration is free of charge, and everyone is invited. Register on the meetup wiki pages:

Monday 2nd (BarCamp Apache during the day)

  • 20:00 - 22:00 NoSqlMeetup Room 1&2
  • 20:00 - 22:00 Tomcat Room 6

Tuesday 3rd (BarCamp Apache during the day)

  • 20:00 - 22:00 Lucene Room 1&2
  • 20:00 - 22:00 OSGi/Felix Room 3
  • 20:00 - 22:00 Traffic Server Podling Room 4

Thursday 5th

  • 20:00 - 22:00 Content Tech 1&2
  • 20:00 - 22:00 Web Services 3
  • 20:00 - 22:00 SocialAndWidgetsMeetup
  • 20:00 - 22:00 Web Crawlers Room 5
  • 20:00 - 22:00 Hadoop Room 6
  • 20:00 - 22:00 Subversion Room 7

If you're interested in any of these popular open source projects, come join us for an evening of presentations and discussion with the creators and committers working on the projects themselves.

Hosted by and located at the ApacheCon, these five special community meetings are taking taking place on the days before the ApacheCon conference in Amsterdam. Entrance is FREE for everyone, so sign up quick!

Location
Marriott Oakland City Center
1001 Broadway | Oakland, CA 94607 | +1 510 451-4000

What is a Meetup?

A MeetUp has a number of key attributes:
  • Focused on a single Apache project
  • Organized by the members of the project community itself
  • Open agenda, anyone can propose a talk, covering a wide range of subjects related to the core project
  • An opportunity for users, interested people and committers to get together

MeetUps generally happen during the evening, and, most importantly, are supposed to be fun (as well as useful).

ApacheCon is the official conference of the Apache Software Foundation (ASF), drawing ASF Members, innovators, developers, vendors, and users to experience the future of Open Source development. Drawing internationally-renowned thought-leaders, contributors, influencers, and organizations in the Open Source community, ApacheCon offers insight into the culture and community that develops and shepherds industry-leading Open Source projects, including Apache HTTP Server - the world's most popular Web server software for ten years running.

About ApacheCon US 2009

These special Apache Meetups are organized as free side events next to their bigger sister conference, the ApacheCon US 2009.

ApacheCon is the official user conference, trainings, and expo of the Apache Software Foundation (ASF). Celebrating its landmark 10th Anniversary, ApacheCon US takes place November 2 - 6 at the Marriott Oakland City Center, California.

The global conference series gives attendees a 360-degree view into the highly lauded community that develops and shepherds industry-leading Open Source projects, including Apache HTTP Server - the world's most popular Web server software. ApacheCon offers participants the opportunity to deepen their understanding of Open Source methodologies and further advance their participation with like-minded peers in a relaxed, community-focused environment. More than 500 users, developers, and thought leaders are expected to attend.

With engaging keynote addresses, technical presentations, informal networking, Birds-of-a-Feather discussions, and entertaining social events, ApacheCon US 2009 gives participants the opportunity to choose from more than 60 sessions at the beginner, intermediate, and expert level. From mission-critical implementations to groundbreaking technologies, incubating projects, and collaborative development, ApacheCon presenters and faculty are passionate about some of the hottest issues at the heart of the industry.

Register today at http://www.us.apachecon.com/c/acus2009/about.

July 16, 2009

Bragging rights

I'm not too fond of open source license discussions and I tend to stay away from them as much as I can, but Seth Gottlieb's recent blogpost struck a nerve with me.

Hippo brings its products to the market under an open source license. We don't do this out of necessity, as the open source projects we use would allow us to distribute our software under a 'closed' license. Open source as a movement is very dear to us and we contribute on a regular basis to numerous projects, but our end products are open source for another reason.

Our products are distributed under open source license *because* (not despite) we are a commercial company. We believe that an attractive OS license encourages a level of adoption and collaboration that would be difficult or impossible to accomplish with a closed source product. It helps us create a larger ecosystem around our software than would otherwise be possible.

Distribution under an open source license changes the traditional user-vendor relationship in many ways. Most importantly it allows companies to implement and use the software without dealing directly with the original creator and thereby does away with vendor lock-in in an elegant way. Because of this liberal system of distribution, it is of essential importance that end-users have other ways to establish the origin of the code. Proper disclosure of origin is important for legal reasons, as unlabeled code could potentially be unlicensed, as well as for commercial reasons, as support or maintenance may be needed beyond what the distributor can provide. But even more importantly, disclosure helps ensure that any user can get in touch with the original developers to check for updates and participate in the community.

In the end, more than providing an ego boost to the developers, retaining a proper notice is an essential ingredient for a thriving eco-system. It is for these reasons that the Apache license, while being one of the most liberal, is so keen on giving credit to the original developers: retention of the original notices in any distribution is pretty much the only condition to be met for redistribution **.

So when three years ago a little startup from New Jersey started using the products we were working on at Hippo (Apache Jetspeed, Hippo CMS), we welcomed the expansion of our community. I've always felt that adoption of our software by other vendors was a testament to our success and in many ways a big compliment. Excited about the opportunity to get them on board, I visited their offices two years ago, and shared Hippo's plans for the future.

Now, three years down the road, while they do ask a lot of questions on the mailing lists, I am not aware of any contributions that they return. So, when I learned from CMSWire that "Good Samaritans that they are, Bluenog plans to contribute back the enhancements it made to various open source projects during the development phase of Bluenog ICE 4.5.", I was skeptical.

As anyone can tell from what is publicly available, their product very much remains a collection of open source tools, of which older versions of Apache Jetspeed and Hippo CMS form the backbone. Both are already provided as an integrated whole by Hippo, so what exactly is new here? If they have great contributions to make, why did we not see them yet? And as Bluenog's source code is not publicly available, there is currently no way of returning those contributions to the other users of Hippo CMS, Apache Jetspeed or any of the other open source projects they shrink wrap.

Already a bit wary of this self proclamation of good open source citizenship, I was shocked to see that they did not take their obligations under the Apache license too seriously. Distributing our product without retaining the required notices does not only go against the spirit of the open source community, it also hampers our efforts to build the larger community of which Bluenog and its customers are a part.

It's too easy to brush aside a breach of the Apache License as the weeping of another sad open source developer complaining about others stealing his code. Let's not forget that in the end respecting licenses is an essential part of the open source ecosystem. Opinions and discussions aside, Bluenog has simply been in breach with our license for years. Shrugging that off as a minor mistake is like a failing bank telling you: "what are you complaining about? It's only money".

Don't get me wrong: I think it is a great development that companies care to be good citizens of the open source community, but like any commercial open source vendor they should earn their bragging rights and above all stay within legal boundaries.

** disclaimer: apart from being CTO of Hippo, I'm also a member of the Apache Software Foundation. The statements I make about the Apache license are my entirely own, and are not related to my role at the Foundation, nor are they statements of the Foundation itself.

March 16, 2009

Apache Meetups: next week!

Wicket, Maven, Lucene, Jackrabbit and Portals Evening Meetups

Join us for a third year of Apache Meetups! Users, committers, managers and developers will come together on the evenings of Monday 23rd and Tuesday 24th of March.

Registration is free of charge, and everyone is invited.

Monday 23rd (BarCamp during the day)

Tuesday 24th

If you're interested in any of these highly anticipated open source projects, come join us for an evening of presentations and discussion with the creators and committers working on the projects themselves.

Hosted by and located at the ApacheCon, these five special community meetings are taking taking place on the days before the ApacheCon conference in Amsterdam.

Entrance is FREE for everyone, so sign up quick!

Location

Mövenpick Hotel Amsterdam City Centre Piet Heinkade 11, Amsterdam

Sign up

SIGN UP HERE: Sign up form

What is a Meetup?

A MeetUp has a number of key attributes:
  • Focused on a single Apache project
  • Organized by the members of the project community itself
  • Open agenda, anyone can propose a talk, covering a wide range of subjects related to the core project
  • An opportunity for users, interested people and committers to get together
MeetUps generally happen during the evening, and, most importantly, are supposed to be fun (as well as useful).

ApacheCon is the official conference of the Apache Software Foundation (ASF), drawing ASF Members, innovators, developers, vendors, and users to experience the future of Open Source development. Drawing internationally-renowned thought-leaders, contributors, influencers, and organizations in the Open Source community, ApacheCon offers insight into the culture and community that develops and shepherds industry-leading Open Source projects, including Apache HTTP Server—the world’s most popular Web server software for ten years running.

August 24, 2007

Hippo is hiring... Java pros!

Hippo is looking for kick ass Java developers to join our product development team. If you happen to know anyone that would fit the profile, I'd really appreciate it if you could get us in touch..

BTW, we're also looking for consultants, web developers and open source community builders.. In short, we need lots of people :-)

Job Title: Senior Java Developers (product development)

Hippo is looking for experienced Java programmers who would like to work in a dynamic and open environment that emphasizes individual initiative and is deeply involved in the Apache open source community.

We're expanding our Java development teams, and are looking for developers to work on our CMS, Portal and Repository products.

Profile:

* Academic qualification in IT
* Relevant work experience
* Good knowledge of Java
* Experience in developing server applications
* Affinity with open source, Apache in particular

Knowledge of the following items is desirable:

* Apache Cocoon, Jackrabbit or Jetspeed
* Content management systems
* Portal development

Hippo is the developer of the open source enterprise content management system Hippo ECM, a native XML content management platform, and Hippo Portal, an open source portal container.

The level of knowledge within Hippo is high, oriented specifically towards XML and Java. Staff are encouraged to investigate new technologies. In particular, emerging technologies from within the open source community and the W3C are followed closely. Where possible, Hippo participates in open source projects. Researching and developing new applications before the market is even demanding them, is a challenge we face every day.

Hippo develops software for a market that is changing on a daily basis. It is therefore important that we respond quickly to new developments, but all the while keeping an eye on the continuity of the existing products. As well as creativity, all staff are therefore expected to have a well-developed feeling for their own responsibility.

The company’s distinguishing characteristics are the short communication lines, a customer-friendly attitude and the use of the newest technologies, with personal creativity and an eye for detail being highly valued.

For more information, visit our website:
* www.hippo.nl

Or visit our community site:
* www.hippocms.org

Got questions? Don't hesitate to mail me directly at arje (@) apache dot org.

August 21, 2007

Hippo ECM platform: a pluggable, scalable, Java content management platform. Part II.

Yesterday we discussed our development schedule for the upcoming half year. In the next couple of months we will be working on Hippo ECM release 1.0, which contains Hippo CMS 7 and Hippo Repository version 2. Also included in this package will be Hippo Portal release 1 and Hippo DMS release 1. The result will be a complete package for content management in the enterprise. The last two components, Portal and DMS have been anticipated by Hippo for a long period of time already, but have never been released as separate software products. Combined with the fact that the numbering of our current version of the CMS and Repository is out of sync with each other, we decided to add clarity by combining all the different tools into one clear package called Hippo ECM.

Towards a new architecture

Hippo ECM will be focusing on providing the developer with a stable toolkit of open source enterprise content management components. Individual components of the Hippo ECM toolset will be available to developers setting up their own custom-built applications. But combined all components give the developer the power and flexibility of Hippo's XML querying background and a highly flexible and extensible content management user interface.

This extensibility is very important to us. Over the years we have noticed that our core public consists of developers using our components to create their own bespoke applications. And not so accidentally this happens to match perfectly with our own vision on open source: a diverse set of reusable components that allow developers to integrate with and develop upon, while at the same time providing a rich and user-friendly interface to the end user. There is no one CMS that provides a solution to all different users for all their different requirements. And we wouldn't want to claim that we do so. But we can get a long way, by cleanly separating concerns and providing a flexible plug-in architecture. And this is exactly what we are trying to perceive with our new release of Hippo ECM.

Plug-ins

For the very first release of Hippo ECM, we will stick to a very bare CMS system that provides no more than just the very very basic functionalities one can expect from a content management system. Pretty much all functionalities will be implemented as plug-ins that can be loaded into the skeleton system. Also, all different components will be extendable in such a way that developers can take an existing component and add their own functionalities on top of it. Developers will be able to share and co-develop their own components in the Hippo Forge, a community with SVN and communication functionalities for the development of Hippo plugins. On all the different layers in Hippo ECM, a plug-in architecture will be implemented. The user interface will allow widgets to be deployed that communicate with back-end plug-ins that have been added to the Hippo Repository. In this way, custom defined workflow actions can be added on repository level that require specific user input and behavior on the UI level, without having to change anything to the core CMS system. Apache Wicket has proven to be an excellent Web framework to develop component based web applications with full Ajax support, and we'll be happy to use it for our upcoming release.

Workflow

Workflow functionalities are handled from within the Repository solely, and only their presentation part will be handled from within the CMS user interface. When accessed from within a different application than Hippo CMS, the Repository will take into account document state and permissions, so no illegal actions can be undertaken. Where possible, workflow actions will be exposed through the JCR API.

Hippo Portal

For Hippo Portal, extensibility comes naturally since it has been developed as a portlet specification compliant environment (JSR-168). Portlets have been designed to separate presentation from back-end application logic, allowing developers to work together on an aggregated view of several underlaying applications without having to take into account their individual behaviors. We will be working with the JSR-286 group to define the portlet 2.0 specifications. Also, we will work with the Apache Wicket community to improve portlet support from within the Wicket Java Web application framework. Apart from the fact that Wicket is a strong framework for developing portlets, this will also allow running individual CMS components (as Wicket apps) within a larger Portal environment.

Hippo DMS

When it comes to document management, the plug-in architecture adds the possibility of allowing different content sources and workflows to be plugged in. In the future, Hippo Repository should be able to function as a layer on top of several back-end repositories, only referring to objects in an external repository from within its own global index. This allows existing legacy repositories or databases to be kept in place, only adding the need for an indexing trigger to be called whenever a change is performed. The global index will be able to define relationships between -- for example -- Word documents, e-mails, and regular XML content in the repository.

Up next

However, the most interesting part of the new Hippo Repository, and therefor the core of Hippo ECM, will arguably be its built-in faceted navigation support with virtual directory structures. But that's part of the next blog entry!

Stay tuned.

Arjé

July 31, 2007

Neglect Leads To Problems

Pretty annoying article on the website of a very respectable Dutch IT magazine:

Apache most actively abused for malware

(Source: Computable. Original title: "Apache vaakst misbruikt voor malware")

The article was inspired by a press release from anti-virus and anti-spam vendor Sophos. My FUD sensors go beserk...

Damn liars!

That's Geek Defense: if you're so angry that you're unable to come up with any real arguments, simply blame the Big Corporations and call them liars.

Now I'm a strong believer of open source, especially when it comes to Apache, but I'm not the kind of person to run around calling other people liars just because they're being critical. Criticism is good. After all, it's what makes open source work.

So, after reading the original press release and some of Sophos' security reports I feel a lot better. Sophos is not so evil after all. Actually, they're taking extreme care to be as independent as possible (of course they are). Their general advice - "make sure your Apache installation is up to date" - sounds reasonable and scarily familiar.

While reading along on the Sophos website, I notice that the original press release is not about Apache. It's about the latest hype in security land: malware that attacks webpages that might be hosted on Apache.

But as it happens, the press release is picked up by journalists and interpreted as being entirely about Apache. And in true Web 2.0 reporting style, they mesh-up their articles by using exactly the wrong bits and pieces from the wrong press releases and blog entries all coming from the same company. But let's be honest here: no press release has ever been sent out by a commercial company if they weren't in it for the money. Sophos is not saying anything wrong, it's just dropping some information here and there, waiting to be picked up by journalists that can't wait to write something that will shock their audience.

Continue reading "Neglect Leads To Problems" »

July 13, 2007

On predicting the future, selling software and Restating the Obvious

My favorite quote from the Hitchhikers Guide to the Galaxy:

"One of the things Ford Prefect had always found hardest to understand about humans was their habit of continuously stating and repeating the very very obvious, as in 'It's a nice day', or 'You're very tall', or 'Oh dear you seem to have fallen down a thirty-foot well, are you all right?'"

Me presenting at CMProsAt the CM Pro's Future of Content Management Summit last year, a sales person from a competing well known content management vendor compared a content management system with Microsoft's Excel spreadsheet. In his "vision for the future" content management is an activity that should be "as common" as working with an Excel spreadsheet:

"[the sales guy] told us [CMS vendor X] wants content management tools to be as ubiquitous as Excel, and either their Windows client or AJAX web-client should be available to any editor. By focusing on usability, he believes the role of (technical) webmasters will become less important while enabling many more content managers to focus on getting the information to the web."

This must've been one of the most obvious statements I've heard in a long time. I'm actually surprised someone has the guts to climb on stage and state that '[web] content managers should focus on getting the information to the web'. Rocket science, guys, and a pretty damn brilliant sales pitch, too.

But, instead of bashing the guy for saying things like this, I should better listen to him and ask myself what the deeper meaning is of his words.

Continue reading "On predicting the future, selling software and Restating the Obvious" »

May 8, 2007

Open Source in the Netherlands (ApacheCon EU 2007)

Damn, it feels good. The Apache conference has been a great success, thanks to all visitors and of a bunch of really great people behind the scenes. Hippo has been pushing hard to help out as Gold sponsor, organizing infrastructure, people and communities. I'm so happy.

But hey, somewhere, I feel a little bit disappointed. I had expected *much* more from the Dutch open source community. Where'd you all go?! Looking at the stats, the biggest portion of attendees were from the US, followed by the UK, Germany and after all that, finally, The Netherlands.

For some reason, and this is a feeling I've had for much longer, Dutch open source people seem way too much concerned with their own little Dutchy communities.

Hi there! Playing open source means playing out in the open, out in the world! We have such a small country, why don't we talk to the world instead of to ourselves? We've always played a big role internationally. We've sailed the seven seas, we've inhabited countries, we've been traders for ages... And then there's the internet, opening up literally *all* borders (not just the Schengen ones), and what do we do?

  • Dutch government invests heavily in open source by developing a pure-Dutch rip off of Sourceforge (what the ??)
  • Dutch public broadcasters invest in a Dutch only open source content management system that is virtually dead now and no longer supported because only selected (Dutch) members are allowed to contribute to it (and they're all doing something else now - go on, let the newcomers in!)
  • Dutch initiatives for open source conferences get lots of recognition from the media, but as soon as the guys show up that practically invented the web as we know it (the HTTP protocol, the Apache webserver) - all important factors in making open source into a worldwide success.. We run away scared to our little teeny Dutch open source initiatives...?

Where's the innovation in all this? Where is our government's money going? Only investing in local initiatives that will stay local forever, does *not* work with open source!

Babies born in The Netherlands practically learn to speak English before they get to speak Dutch. Why the Dutchy thingy? We could be running this show!

Next year, ApacheCon will be back in Amsterdam again and I'll put all my energy into making it a *much* *much* bigger success. We need to get this little country back on the global map!

Suggestions are welcome.

Update 09-05-2007: Due to some mailserver problems, posting comments resulted in an infinite loop on the server... Sorry about that.. I fixed the comment script, please feel free to send one in!

December 15, 2006

New year's resolution: Apache running challenge

Ok, so here's my new year's resolution: I will run a minimum distance of 15 kilometers a week, spread out over an average of 2.5 workouts.

Because I believe that a tool can make all the difference (yep, I must still be a geek), I bought some shiney new shoes and a Nike Plus connector to my 8gb iPod Nano. My current running progress on the Nike+ site
I've got a heartrate monitor too (from back in the days, when I was still a rowing hero), so when running I'm entirely gadgetted up. That should lower the barrier for putting on my shoes every night after a hard days' work! :-)

The Nike+ thing is awesome, and Apple has in all its ingenuity put up some really great music compilations in its iTunes database. The combination makes the whole running experience so much more fun. Yep, I'm a happy running hacker now.

After your first run with the Nike+ thingy, iTunes will upload your training statistics to the central Nike server where they will probably do horrible things with all that data and sell your lap splits right away to your insurance company, who will laugh about them and after that send you a notice that they've doubled your monthly fee because your condition sucks so badly. Nevertheless, it's fun to see what you've achieved projected in this nice and geeky Flash user interface.

But the really cool thing is that you can form a group and compete against each other or try to complete a goal together!

So here's my call to all Apache people that could lose a pound or two (pretty much all of you I guess :-p ): buy yourself some gadgets this Christmas and join in on the Apache Running team! The goal is to all run 100 miles starting on January 1st. The challenge is completed when *all* runners have finished :-)

So, in my case, it should take me about 10 weeks to finish...

Who's with me!?

December 13, 2006

Javapolis 2006

Unbelievable... I didn't know it was still possible to hold a Java conference with 2800 attendees and *no* WiFi access! :-(
Oh yes, there's a signal, but it just doesn't do anything. And given the sad look on the faces of people sitting around me, I'm not the only one!

So, I had to get back to the hotel for some old school 6 euro's per hour WiFi access ... But hey, it works :)

If you are at Javapolis, are able to read your email, *and* care for a beer or two later on in the evening, send me a text at +(thirtyone)-six-185167-seven-eight :-)
I got no clue how SPAM sensitive phone numbers are... ;)

-- Arje

November 6, 2006

A Widget Should Be a Uniform Object

Building a large web application that *must* have extendable UI widgets in Cocoon is very hard to do. We've had this with our applications, since we have to tell our community to learn almost every single aspect of Cocoon in order to be able to extend our widgets: the sitemap, Java, XSL, Flowscript, Cforms, JXTemplate, Javascript, CSS, HTML, and many more. If you miss out on any one of these technologies, you'll be lost. Extending a certain component (aka widget) means you have to implement extension points in the original code pointing to a possible extension. It requires hooks into the pretty much all of the Cocoon parts, like the sitemap, JXTemplate, XSL, Flowscripts, and all the other different techniques. Each one of them requires a very different way of handling extensibility.

This is a bit of a scary point to make, as I'm afraid I'll get ass-whooped by Cocoonistas that believe this is all very well possible with CForms + flowscript. And maybe it is - but it's just a little bit hard if you're not a Real Cocoonista :-)
It raises the question of whether there should be a widget framework in Cocoon proper, or whether I should move away from Cocoon and find a suitable alternative outside of it. Or maybe have an integration of the two.
Don't get me wrong - the Hippo CMS UI is completely seperated from the website delivery layer, which can (and sometimes should) still be done in Cocoon! You know I love her and I always will ;).

But we must move to a more object oriented way of writing web application UI's, and consider doing this all in plain Java. A UI consists of components, sometimes referred to as widgets. I prefer the term widget as it makes it very clear that we're talking about user interface components, as opposed to components that only live on the serverside to provide real application logic.
So what are the requirements for such a widget framework? And are there any suitable options?

Widget framework requirements

Basically, these are the points that need to be taken care of by my favorite widget framework:

  • A widget should be a uniform object, with it's own behaviour, methods and events
  • The presentation of a widget must be properly seperated from its behaviour
  • Any logic provided by a widget is 'behaviour', which might need some serverside processing, but does not handle any application logic
  • Widgets must be extendible, both in presentation and in behaviour (also see discussion on HippoCMS-dev)
  • Designing the widget's presentation should be fairly easy to do, and should not limit the design of the user interface (at least, not too much)
  • A widget's behaviour must be unit testable
  • Widgets are able to group other widgets
  • AJAX support in the framework should be transparant and not obfuscate behaviour code (too much)
  • Behaviour should be codable in Java

Matching frameworks

Wading through the enormous list of AJAX web application frameworks (don't forget to check out Manageability), a couple seem to be very capable of doing what I want them to do.

On my shortlist, there are the following Java web app frameworks:

Cocoon + DOJO

http://cocoon.apache.org, http://dojotoolkit.org/

We know our way around in it, but it has the extensibility problems I mentioned above.
Because of Cocoon's design architecture, presentation and behaviour are very well seperated. However, a widget is not a uniform object, which causes trouble and makes inheritance very hard to do. Unit testing widgets in Cocoon quickly resolves to hard to develop HTTP unit tests. Changing a widget's behaviour can be painful, given the amount of different coding techniques needed to perform the job.

Echo2

http://www.nextapp.com/platform/echo2/echo/

Would completely replace Cocoon (in our case). The Echo analogy is a pure Java way of thinking. Translates parts of your Java code into Javascript to execute on the client. Allows for inheritance. Drawback: makes a lot of roundtrips to the server (slow), and there's no way to work around any weird behaviours. Could become a big burden. What about the license?

Google Web Toolkit

http://code.google.com/webtoolkit/

Another standalone framework, and as such a complete replacement for Cocoon. Compiles your Java code into Javscript using a proprietary compiler (which is not very unusual, BTW).
Semi-pure Java, forces you to keep thinking about the clientside Javascript you're generating. Loads ALL user interface code into the client at startup. UI response is fast. Still requires plenty of workarounds to get things done. Has lots of limitations in terms of the widgets it supports. License is OK, but it's impossible to predict what Google will do with its compiler?

Wicket

http://www.wicketframework.org

Makes component/widget extendability a breeze. Needs Dojo or any other library for AJAX. Easy to implement very specific HTML / Javascript functionalities if needed. Less limitations. Needs only 2 levels of knowledge: it's either 'Java' or 'HTML-CSS-Javascript'. Does that work?
Drawback: Still requires HTML / CSS and Javascript coding.
Nice: has a concept of both WebApplications and PortletApplications. According to Sylvain, only replaces the Flowscript/CForms part of Cocoon and not your favorite Cocoon pipeline plumbing. Is currently in the Apache Incubator.

Prototyping

We'll be running some prototypes with these libraries. If you have any additions to this list, or ideas, please comment. We have to take into account the fact that there's been a lot of people writing Cocoon-specific extensions to Hippo CMS, so any feedback from people in that field would be more than useful!

Thanks,

-- Arjé

September 6, 2006

Behind the scenes of the Cocoon GetTogether...

Kirsten and I got married last week after being Cocoon GetTogether for about 5 years. Hurray! We had an excellent day in the sun with lots and lots of friends, and a really nice week in Florence afterwards. Excellent! I'd like to thank all of my Hippo, Luminas, Sourcesense and Apache buddies who where there to see me wearing a proper suit and shiny new ring :). And to the rest: sorry, gals, he's a married guy now! :-)

Lady Coco wants it all
And just when you think you've had it all - organizing the location, the food, the music, the rooms, the beds, the drinks, the speakers, all the official stuff and of course all of the fun stuff - it hits you right in the back: there she is again, that other lovely woman in your life. She calls herself Coco, although "Cocoon GetTogether" is her real name and she's *not* happy that you've left her for some other chick.

So there you go again, hunting down speakers, attendees, sponsors, rooms, diners, drinks, hotels, proposals, WiFi access, whiteboards, power outlets, yada, yada, yada... The lady demands fulltime attention. Again!

Counter at 39
But, heck, she's fun, and I'm looking forward to having everyone back in Amsterdam in October again to relive the three-day Cocoon GT rollercoaster. Currently, the counter is at almost 40 attendees from 7 different countries, which is quite a lot given the fact that the program is not even online yet.. A really good sign. This year, the hackaton days are free, thanks to our wonderful sponsors S&N (thanks guys!) and my company Hippo. Now there's *no* excuse anymore for you to skip the hackaton days, it's just too much fun to miss. And really important for Cocoon, too!.

Pizza hacking
In the meantime, I've been talking with the venue about doing a pizza-and-beers evening hacking session on monday, October 2nd. Also, the WiFi access will be much more improved after last year's four o'clock automatic WiFi shutdown troubles. There'll be plenty of power outlets again (certainly after I've seen what a shortage of outlets can do to a big crowd like this year's ApacheCon Europe in Dublin..).

More room
Also, there's still the option of using an extra, smaller room during to the hackaton or conference days for tutorials or other sessions. Although the budget might allow it, I'm awaiting any brilliant ideas for the room, otherwise I will cancel it and use the money for something more appropriate. So, go on, don't be shy!

Hackaton agenda
On October 2nd and October 3rd, the days before the Cocoon Gettogether 2006, there is a Hackathon foreseen at the Felix Meritis Foundation building in the center of Amsterdam.
It might be good to start thinking about how we'll be filling the two Hackathon days.. Please jot your ideas down on the Wikipage!

The main idea is to use this page to hack together some agenda for both days. Please make this a joint effort. There's one big moshpit-like room available for us on the 2nd or 3rd floor, which can hold up to 60 or 80 people.

The Hackathon will start on both days at 9:00 AM and ends around 18:00. There'll be food on both days, on monday in the room itself and on tuesday outside.
In the evenings the room is available for use until 23:00. There's no evening program defined, but anything goes, so jot down any ideas on the Wikipage!

Hackaton infrastructure and logistics
There will be:


  • food

  • drinks

  • long tables

  • WiFi access

  • some hubs for wired access (bring your own cable!!)

  • plenty of power outlets

  • fairly large whiteboard (will 3 normal ones do?)

  • 3 flip charts

  • tape to assemble pages

  • beamer + screen to beam on


Other things needed?

Conference day (wednesday) infrastructure and logistics
The talks will be in the same building as the hackaton, but we'll have a much nicier room available that can easily hold around 120 people. There'll be:


  • chairs

  • food

  • drinks

  • (some!) long tables

  • lots of WiFi access

  • plenty of power outlets

  • big beamer + screen to beam on

  • all audio gear you could dream of

  • CocoonGT shirts!

After the conference, there'll be a nice reception with drinks and snacks.
What am I forgetting??? OMG - panic rushes to the head all over again ;)

See you soon!

-- Arjé

September 5, 2006

Reminder: send in your Cocoon GetTogether 2006 talks!

Because I was on holiday, I forgot to send out the RFP reminder for the Cocoon GetTogether 2006... :( Therefor, here's a short reminder, giving you all some extra time to send in your proposals!

Please send in your proposals for talks before tomorrownight:

September 6, 23:59 CET

See http://www.cocoongt.org/Request-for-papers.html for guidelines. It can be really short, as long as there's some basic description in there so we can start setting up the program.

Thanks, and looking forward to meeting you all (again) in october in Amsterdam!

-- Arjé

August 14, 2006

Cocoon GetTogether 2006 Registration is open!

After quite a long period of talking to other people about the 5th Cocoon GetTogether, the registration finally went live this friday. Book your seat!There's been a *lot* of ideas for talks from the user community and I really think this will give this year's edition a power boost towards a much more user oriented conference. This year's Cocoon GetTogether will be interesting for an even broader public than last year's event, targetting at both existing users and newcomers that want to know why Cocoon is the *ultimate* platform for developing large-scale XML driven websites and applications.

This year's GetTogether will be held in Amsterdam, The Netherlands, on October 4th. The traditional hackaton will be on October 2nd and 3rd. Register at www.cocoongt.org.

There'll be a big focus on demonstrating the practical side of Cocoon - with shorter, flashier demonstrations of live websites, best practices and how-to's. Some of the subjects that have been suggested on the mailinglists include:

  • Success stories and live demos of actual Cocoon sites
  • A "guided tour" through Cocoon with the Cocoon lead developers
  • Comparison of Cocoon with other web frameworks
  • The secret gems of Cocoon
  • 10 Reasons to use Cocoon
  • The Funky Cocoon AJAX tour (with lots of samples!)
  • Real numbers: performance, hardware and deployment topology
  • ...... and many, many more!

Of course, apart from all the "show me the goodies!"-demonstrations, there'll be the traditional 2-day Cocoon Hackaton before the event itself, which is a really good opportunity to see what is going on in the Cocoon community. Now, don't be shy! The hackaton is free for attendees to the conference day (thanks to our sponsors!), so be there! :-)

All in all, this year will be a lot of fun, and will give newcomers to Cocoon a really good view on the why and the how of Cocoon.

If you really want to know what Cocoon is all about, you got to be there!

The early-bird registration is *now* open. If you register before September 12th, you're only paying 99 Euros for this information-crammed event!

See you in October!

-- Arjé Cahn

April 14, 2006

Apache Cocoon in the government

I'm very proud to announce the go-live of the new website of the Dutch Ministery of Finance, which is using Hippo CMS, which is, as you hopefully all know, running Apache Cocoon :).
Please see my (non-official) translation of the official Dutch press release below.

The Dutch Ministery of Finance has launched it's new website at www.minfin.nl.

The new website is using the open source content management system Hippo CMS. This is in line with the desire of the Dutch government to migrate as much as possible to open source software and open standards by the end of 2006. The usage of open source and open standards raises the freedom of choice, cooperation and effectiveness of information systems.

The new website contains about 25.000 pages, and has around 10.000 visitors each day. A popular part of the site is the weblog of the Minister of Finance, mr Gerrit Zalm, which receives around 5.000 visitors each day.

This major achievement would not have been possible without the great work of the Cocoon community, for which I'd like to thank you all!

Also, I need to thank the awesome team of Cocoon developers that has been working so hard to get this job done on time: Ard Schrijvers, Bart van der Schans, Max Pfingsthorn, Dennis Dam, Jeroen Reijn, Niels van Kampenhout, Andrew Savory, Ugo Cei, Maurizio Pillitu and Gabriele Columbro... And of course all of the Hippo and Ordina people behind the scenes.

Next up is the Ministery of Foreign Affairs; and we could definitely use some extra help on this one... In case you're looking for a really cool Cocoon job, please let me know!

Thanks, everyone!

-- Arjé

April 12, 2006

Cool OSS: Synergy Keyboard / Mouse sharing

Get that Wireless feeling

Synergy transports your mouse and keyboard events over TCP to one or several other computers, running on Windows, Mac, or any Linux/Unix operating system. I'm using it now on my Windows desktop as a server, and my Windows/Ubuntu laptop hooked to the right side of my screen. When I move my mouse to the right, out of the border of my monitor, it will show up again on my laptop! There's absolutely no lag in the mousepointer movement.

Kind of strange - it feels like using a wireless keyboard, but it's the other way around.. My laptop is now wireless (WiFi), but the keyboard *is* wired.. :)

As a nice bonus, you get clipboard sharing across all machines too! Great for transporting notes from my laptop back to my desktop machine.

Via Jon Aquino's Mental Garden: Synergy: Open-Source Keyboard/Mouse Sharing