<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Hippo CTO blog - Arjé Cahn</title>
      <link>http://blogs.onehippo.org/arje/</link>
      <description></description>
      <language>en</language>
      <copyright>Copyright 2010</copyright>
      <lastBuildDate>Fri, 19 Mar 2010 17:51:03 +0100</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/?v=3.35</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>Hippo CMS 7.4 preview: version compare</title>
         <description><![CDATA[<p>This is work in progress - but I got so excited when I saw it working that I couldn't resist turning it into a quick Friday afternoon demo video. This functionality will be released in Hippo CMS 7.4 which is scheduled for June, so I'm afraid I'm going to have to ask you for a bit of patience - but at least you'll have something to look out for :)</p>

<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10289262&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10289262&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object></p>

<p>Suppose Joe is our author and he's working on a new article that he wants to push live. He requests publication, and sends the article off to his editor, Jane, for review.</p>

<p><img alt="Screen%20shot%202010-03-19%20at%205.11.31%20PM.png" src="http://blogs.onehippo.org/arje/2010/03/19/Screen%20shot%202010-03-19%20at%205.11.31%20PM.png" width="500" height="294" /></p>

<p>I'm logging in as Jane now, and I can see the request that she got. Jane is fine with the article, so she pushes it live.</p>

<p>A couple of days later, Joe the author comes in again, and he changes some of that content he wrote before. And he requests publication again. </p>

<p>Jane logs in, sees the requests and wonders: What's new?</p>

<p>Hold it here - I need to explain some background. Of course we have versioning and history and all that. Every CMS does. But how easy is it to get to that comparison view? How many clicks do you have to perform to compare the current version of the document with the one that's online right now? And what kind of a view does it give you? How often do you do this? And if it would be *super* easy, wouldn't you just want to see that comparison view all the time? All in all, you're working with a team of editors in the same content pool and you need that contextual information about what's going on in the system, and who did what, where.</p>

<p>So that's what we did. We made it uber-super easy!</p>

<p><img alt="Screen%20shot%202010-03-19%20at%205.13.49%20PM.png" src="http://blogs.onehippo.org/arje/2010/03/19/Screen%20shot%202010-03-19%20at%205.13.49%20PM.png" width="500" height="160" /></p>

<p>Click it - and there you go! That's what's new. Hippo CMS shows you the comparison view right there when you view the article. That is, when something has changed. It simply shows you the difference between the current version of the document and the one live on the website. How useful is that? If you need more information - you can of course dive into the version history, but this simple comparison view is probably all you need. </p>

<p>Again - we hope to be releasing this with Hippo CMS 7.4 in June, so hold tight.</p>

<p>In the meantime, let me know what you think - feedback is very much appreciated.</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2010/03/hippo_cms_74_preview_version_c.html</link>
         <guid>http://blogs.onehippo.org/arje/2010/03/hippo_cms_74_preview_version_c.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Fri, 19 Mar 2010 17:51:03 +0100</pubDate>
      </item>
            <item>
         <title>What&apos;s wrong with portals?</title>
         <description><![CDATA[<p><a href="http://www.cmswire.com/cms/enterprise-cms/5-things-to-consider-when-integrating-your-content-management-system-and-portal-006789.php">This post</a> clearly describes the problem that I see with all current portal implementations: they treat content as “just another application running inside a portlet”. When we stick to this paradigm, it will kill Portal. Content behaves very different from legacy apps, and simply offering a contextually disconnected content management portlet is not enough. Content deals with semantics and relationships: users expect a portal to be smart enough to render content that is related to the apps they see right there on their screen, and they expect content to be reused across different sections in a portal, wherever that makes sense. Not to mention user-generated content.</p>

<p>Wikis gave users the possibility to quickly create and collaborate on content, but they don't come with the visual application integration that Portals offer. And they lacked the degree of control of a decent content management system. Integrating Portal and CMS is more than just adding a 'content portlet'. Adding an in-context application to a Wiki page would be more in line with how users think. They navigate your online consumer portal, find a page that answers their question and then they want to act on it directly. The FAQ page on “How to request a new password” should render the “New password” portlet in-line with the article. This is just an example - but this is clearly the direction Wikis are heading as they're maturing towards something that resembles an integration of Portal and CMS, and they're leaving traditional Portals way behind.</p>

<p>Portal vendors need to move towards the Content Driven Portal. At least, this is direction we've chosen to go with <a href="http://www.onehippo.com">Hippo Portal</a>. Users want URLs that make sense, that say something about the information that can be found on a page. They want to pop the URL of a portal page into an email and send it to someone else and it should just work - within the appropriate security constraints of course. What applications are shown on the portal page should follow the context, not the other way around. People got used to this concept during the Wiki revolution, and they'll never want to go back.</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2010/03/whats_wrong_with_portals.html</link>
         <guid>http://blogs.onehippo.org/arje/2010/03/whats_wrong_with_portals.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Thu, 11 Mar 2010 09:50:36 +0100</pubDate>
      </item>
            <item>
         <title>2010: the year the E-Reader will become the content managers’ favorite productivity tool</title>
         <description><![CDATA[<p>Flipping through my usability notes, I noticed one of our <a href="http://www.onehippo.com" target="_blank">Hippo CMS</a> users mentioned the following about proof-reading:</p>
<blockquote>
<p>&ldquo;There is no printing facility for content in Hippo CMS so everything has to be done on screen. Even if we could print, we can only see a single field, not the whole article, so it's a bit pointless trying to proofread this way. This leads to long periods of time staring at a screen. It's also very difficult to spot typos on screen, leading to potential loss of quality in copy.&rdquo;</p>
</blockquote>
<p>Exactly. Often enough, also I spot typing errors only after having printed out my text (like this blog post), and walking through it again while commuting on the train. The letters start to dance before my eyes when I&rsquo;m behind a monitor for too long. Sometimes it helps a lot to just put your text aside, do something else for a while, and then return to it on a quiet moment to walk through what you&rsquo;ve written. So, why not implement a printing functionality in Hippo CMS, to allow authors to take their text with them? Everybody got so used to printing out Word documents anyway, that it baffles me that this idea had never appeared to me before.</p>
<p>So I put the print function on our roadmap.</p>
<p>But somehow, it feels wrong. What happened to the paperless office? It&rsquo;s almost 2010 (it&rsquo;s the 31st of December, 11:45 in the morning, as I write this), <em>Kopenhagen</em> happened only a few weeks ago, I&rsquo;ve been driving <a title="A Lupo 3l" href="http://en.wikipedia.org/wiki/Volkswagen_Lupo#Lupo_3L" target="_blank">the most economical car on earth</a> for years, and I use the printer as little as possible. I don&rsquo;t want to have a tree cut down for me to be able to proof-read my blog post!</p>
<p>Enter the <a title="&quot;An e-book reader, also called an e-book device or e-reader, is a device used to display e-books.&quot;" href="http://en.wikipedia.org/wiki/List_of_e-book_readers" target="_blank">e-reader</a>. 2009 was the year of the e-reader. A number of those devices already boost a keyboard and the possibility to add annotations to texts, to store them and synchronize them with your PC. And every modern writer nowadays carries an e-reader to read their books anyway, right?</p>
<p>So here&rsquo;s the thought: let&rsquo;s make a tool that allows you, after a long day of writing, to take all the texts you&rsquo;ve worked on with you on your e-reader. You grab your reader again when you sit on the train, where you walk through all passages for typos and make annotations. The following day, you import all those changes back into Hippo, or maybe you&rsquo;ve already sent them to the content repository over <em>wireless email</em>.</p>
<p>I don&rsquo;t know whether the latest generation of e-readers are already open enough to share annotations with a content management system. Maybe we&rsquo;ll have to wait for that to happen in 2010. But at least I found a very good excuse to rush downtown and treat myself with another gadget to go try it out!</p>
<div><br /></div>
<p>&nbsp;</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/12/2010_the_year_the_ereader_will.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/12/2010_the_year_the_ereader_will.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Thu, 31 Dec 2009 12:43:41 +0100</pubDate>
      </item>
            <item>
         <title>ApacheCon US 09 Evening Meet-ups - Free for all</title>
         <description><![CDATA[<p>Monday 2nd, Tuesday 3rd and Thursday 5th of November<br />
Oakland, CA<br />
Content Tech, Hadoop, Lucene, NoSql, OSGi/Felix, SocialAndWidgets, Subversion, Tomcat, Traffic Server Podling, WebCrawlers, WebServices</p>

<p>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 .</p>

<p>Registration is free of charge, and everyone is invited. Register on the <a href="http://wiki.apache.org/apachecon/ApacheMeetupsUs09">meetup wiki pages</a>:</p>

<p>Monday 2nd (BarCamp Apache during the day)</p>

<ul><li>20:00 - 22:00  NoSqlMeetup  Room 1&2</li><li>20:00 - 22:00 Tomcat Room 6</li></ul>

<p>Tuesday 3rd (BarCamp Apache during the day)</p>

<ul><li>20:00 - 22:00 Lucene Room 1&2</li><li>20:00 - 22:00 OSGi/Felix Room 3</li><li>20:00 - 22:00 Traffic Server Podling Room 4</li></ul>

<p>Thursday 5th<br />
<ul><li>20:00 - 22:00 Content Tech 1&2</li><li>20:00 - 22:00 Web Services 3</li><li>20:00 - 22:00 SocialAndWidgetsMeetup</li><li>20:00 - 22:00 Web Crawlers Room 5</li><li>20:00 - 22:00 Hadoop Room 6</li><li>20:00 - 22:00 Subversion Room 7</li></ul></p>

<p>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.</p>

<p>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!</p>

<p>Location<br />
Marriott Oakland City Center<br />
1001 Broadway | Oakland, CA 94607 | +1 510 451-4000</p>

<h2>What is a Meetup?</h2>
A MeetUp has a number of key attributes:

<ul><li>Focused on a single Apache project</li><li>Organized by the members of the project community itself</li><li>Open agenda, anyone can propose a talk, covering a wide range of subjects related to the core project</li><li>An opportunity for users, interested people and committers to get together </li></ul>

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

<p>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.</p>

<h2>About ApacheCon US 2009</h2>

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

<p>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.</p>

<p>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.</p>

<p>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.</p>

<p>Register today at <a href="http://www.us.apachecon.com/c/acus2009/about">http://www.us.apachecon.com/c/acus2009/about</a>. </p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/10/apachecon_us_09_evening_meetup.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/10/apachecon_us_09_evening_meetup.html</guid>
         <category></category>
         <pubDate>Mon, 26 Oct 2009 14:01:18 +0100</pubDate>
      </item>
            <item>
         <title>Hippo Forge Friday: October 30</title>
         <description><![CDATA[<p>Get your hands dirty with Hippo, the <b>open source <a href="http://www.onehippo.com/">Java CMS and Portal framework</a></b> that everybody talks about. Join us for this <b>free</b> Hippo Forge Friday plugfest! We've scheduled an afternoon of free flow Hippo coding on <b>Friday, October 30</b> in our offices in Amsterdam and San Francisco.</p><br />
<p><b>Build a CMS plugin, a portlet, a repository addon, an HST component</b>, or something else that you think is cool enough to turn into an open source <a href="http://forge.onehippo.org/">Hippo Forge</a> project. The core Hippo developers will be there to help build the Hippo component you always dreamed of! A Google Analytics plugin, an image resizer, a Jira portlet, a Lightbox HST Component, you name it. You can <a href="https://spreadsheets.google.com/viewform?formkey=dHgzbVk2OWJwU1Y1SEJKTnJMeUIxNmc6MA">sign up here.</a></p><br />
<p>Whether you're an <b>experienced</b> Hippo hacker <b>or a complete newbie</b>, come join us for some proper coding fun, beers and food. If you don't know where to start - we'll help you get on track :)</p><br />
<img src="http://blogs.hippo.nl/tjeerd/forge_friday4.jpg" align="center"/><br />
<p>We'll spend half a day on pure hacking galore, a big BBQ, beers, and of course: geeky prizes! Bring your laptop and we'll take care of the rest.</p><br />
<img src="http://blogs.hippo.nl/tjeerd/forge_friday1.jpg" align="center"/><br />
                                    <p><strong>What:</strong> First international Hippo Forge Friday<br></p>

<p>                                    <strong>When:</strong> October 30th from 14.00 until 21.00<br></p>

<p>                                    <strong>Where:</strong><br/><a href="http://www.onehippo.com/en/company/contact">Hippo Office Amsterdam</a>: Oosteinde 11, 1017 WT Amsterdam<br/><a href="http://www.onehippo.com/en/company/contact">Hippo Office San Francisco</a>: 185 H Street, Suite B, Petaluma, CA 94952<br></p>

<p>                                    <strong>Why:</strong> A fast paced, hands-on introduction to Hippo. Get to know Hippo by writing plug-ins, HST components, portlets, and all things Hippo-like. Gain eternal fame by winning one of our prestigious prizes!<br></p>

<p>                                    <strong>Who:</strong> All Java developers and web enthousiasts.<br></p>

<p>                                    <strong>Registration:</strong> Make sure you sign up early by filling in the <a href="https://spreadsheets.google.com/viewform?formkey=dHgzbVk2OWJwU1Y1SEJKTnJMeUIxNmc6MA">Forge Friday sign up form</a>.<br/><br />
<strong>More info:</strong> Read Tjeerd's <a href="http://blogs.hippo.nl/tjeerd/2009/08/block_your_agenda_for_the_inte.html">blogpost about the last Forge Friday</a> and keep an eye on the <a href="http://wiki.onehippo.com/display/CMS7/Hippo+Forge+Friday+on+the+30th+of+October">Wiki page</a>.<br />
</p></p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/10/hippo_forge_friday_october_30.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/10/hippo_forge_friday_october_30.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Thu, 22 Oct 2009 11:08:02 +0100</pubDate>
      </item>
            <item>
         <title>Work in progress: HST Configuration Editor</title>
         <description><![CDATA[<p>As one of our architectural principles, we designed Hippo CMS to be a headless Java CMS that any developer can use to build his or her website with, using their preferred web framework technology. But when we started working on version 7, we wanted to add something to facilitate the need for more control over the web framework from within the CMS itself.</p>

<p>This lead to the creation of the <a href="http://www.onehippo.org/site-toolkit">Hippo Site Toolkit 2</a>. We wrote a bunch of libraries, for which we borrowed some brainpower from our <a href="http://portals.apache.org/jetspeed-2">Apache Portals</a> guys, that offer us a lightweight templating framework. The result is a toolkit that can be used in a wide variety of web technologies. But there's more. Our initial requirements for the HST were:</p>

<ul>
<li>Support JSP templates out of the box</li>
<li>Implement a component framework that allows reuse of functionality</li>
<li>Make components sharable on the <a href="http://forge.onehippo.org">Hippo Forge</a></li>
<li>Allow a user of the CMS to design the entire URL space</li>
<li>Enforce proper seperation of logic and presentation, by borrowing some concepts from the Portlet 2.0 spec (especially the action/render phase)</li>
<li>Let the CMS user define which component, template and selection of content to render on which particular URL</li>
<li>Make all website menus editable from within the CMS</li>
<li>Take care of connection pooling, caching, and all that</li>
<li>Don't tie in content with presentation - so content can always be reused in a different medium</li>
<li>And, to wrap it up: HST components should run inside a portal as Portlet 2.0 compliant portlets with no extra coding</li>
</ul>

<p>Already quite ambitious, we wanted to be sure that we would be able to extend the HST so it would also offer us an abstraction layer towards:</p>

<ul>
<li>Freemarker and Velocity templating</li>
<li>JSF, Wicket and SpringMVC</li>
<li>(J)Ruby</li>
<li>REST</li>
<li>CMIS</li>
<li>.. and what not :) </li>
</ul>

<p>I need to thank Ard, Woonsan and Ate for their hard work on the HST. But in this post, I wanted to focus a bit on Arthur's recent work, who has been working on the HST Configuration Editor. This is the user interface for the HST inside the CMS, which is being developed as a plugin within the HST project (see <a href="http://www.onehippo.org/site-toolkit/config_editor">http://www.onehippo.org/site-toolkit</a>).</p>

<p>In this video Arthur is telling me about his latest work on the HST Configuration Editor (as of July 2009). There are lots of sneak peak juicy screens to enjoy. Watch in full screen HD for best results!</p>

<p><object width="400" height="320"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5917601&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5917601&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="320"></embed></object><br />
<br />Arthur does a quick walk through of the different parts of the HST Configuration Editor and demonstrates what is possible with the demosuite right out of the box. The demosuite is available as a download from <a href="http://www.onehippo.org/site-toolkit/home">http://www.onehippo.org/site-toolkit/home</a>.</p></p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/08/work_in_progress_hst_configura.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/08/work_in_progress_hst_configura.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Fri, 14 Aug 2009 16:27:25 +0100</pubDate>
      </item>
            <item>
         <title>An improved template editor</title>
         <description><![CDATA[<p>
For our upcoming release, we're working on the document type editor (or template editor as some prefer it). Here's a sneak preview.

<p>The two major changes to the document type editor are:<br />
<ul><br />
<li><strong>Compound document types</strong>: reusable snippets that you can design using the document type editor, and then add to other document types. When the compound is changed, all document types that use the compound will reflect these changes as well. This allows you to develop very complex document types, with all kinds of hierarchical structures in your content.</li><br />
<li><strong>Layouts</strong>: both document types and compound document types now support a number of layout possibilities. Layouts like horizontal or vertical orientation, multiple columns with different sizes, etc, are now configurable for every template. This is a very powerful tool when used together with compound types!</li></ul><br />
</p><br />
<p>Frank explains in only 1 minute and 36 seconds how you can now use compound documents, as well as the layout mechanism. Watch in full screen for best results!<br />
</p><br />
<object width="400" height="225"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5928451&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5928451&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object></p>

<p>This is a preview of functionality that is being developed for our next big release. You can take a look at the latest code if you want to play around with it.</p>

<p>Available from pre-release tag 2.07.00: <a href="http://svn.onehippo.org/repos/hippo/hippo-ecm/tags/Tag-HREPTWO-v2_07_00/">http://svn.onehippo.org/repos/hippo/hippo-ecm/tags/Tag-HREPTWO-v2_07_00/</a>.</p>

<p><br />
Enjoy!</p>

<p>Arje</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/08/an_improved_template_editor.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/08/an_improved_template_editor.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Tue, 04 Aug 2009 14:23:03 +0100</pubDate>
      </item>
            <item>
         <title>Bragging rights</title>
         <description><![CDATA[<p>I'm not too fond of open source license discussions and I tend to stay away from them as much as I can, but <a href="http://www.contenthere.net/2009/07/apache-software-license-hippo-and-bluenog.html">Seth Gottlieb's recent blogpost</a> struck a nerve with me.</p>

<p><a href="http://www.onehippo.com">Hippo</a> 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.</p>

<p>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.</p>

<p>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.</p>

<p>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 <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache license</a>, 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 **.</p>

<p>So when three years ago a little startup from New Jersey started using the products we were working on at Hippo (<a href="http://portals.apache.org/jetspeed-2">Apache Jetspeed</a>, <a href="http://www.hippocms.org">Hippo CMS</a>), we welcomed the expansion of our community. <a href="http://blogs.hippo.nl/arje/2008/09/announcing_hippo_ecm_and_hippo.html">I've always felt</a> 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, <a href="http://blogs.hippo.nl/arje/2007/06/working_from_new_york.html">I visited their offices two years ago</a>, and shared Hippo's plans for the <a href="http://www.onehippo.org/cms7">future</a>.</p>

<p>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 <a href="http://www.cmswire.com/cms/enterprise-20/bluenog-contributes-back-makes-open-source-easy-004906.php"><i>"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></a>, I was skeptical.</p>

<p>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 <a href="http://www.bluenog.com">Bluenog</a>'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.</p>

<p>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.</p>

<p>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".</p>

<p>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.</p>

<p><i>** disclaimer: apart from being CTO of Hippo, I'm also a <a href="http://www.apache.org/foundation/members.html">member</a> of the <a href="http://www.apache.org">Apache Software Foundation</a>. 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.</i></p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/07/bragging_rights.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/07/bragging_rights.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Thu, 16 Jul 2009 12:31:50 +0100</pubDate>
      </item>
            <item>
         <title>Apache Meetups: next week!</title>
         <description><![CDATA[<h2>Wicket, Maven, Lucene, Jackrabbit and Portals Evening Meetups</h2>

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

<p>Registration is <b>free of charge</b>, and <a href="mailto:https://spreadsheets.google.com/viewform?formkey=cDFlMTdSV3dKT1lkYUlVa2lWUFdkQXc6MA..">everyone is invited</a>.<br />
<img src="http://cocoongt.hippo12.castaserver.com/cocoongt/logos.jpg" align="center" /></p>

<p>Monday 23rd (<a href="http://barcamp.org/BarCampApache">BarCamp</a> during the day)<br />
<ul><li>19:00 - 22:00 <a href="http://docs.codehaus.org/display/MAVENUSER/Maven+Meetup+ApacheCON+Europe+2009">Maven Meetup</a></li><li>19:00 - 22:00 <a href="http://wiki.apache.org/portals/MeetupAmsterdam2009">Portals Meetup</a></li></ul></p>

<p>Tuesday 24th<br />
<ul><li>19:00 - 22:00 <a href="http://cwiki.apache.org/confluence/display/WICKET/Wicket+Community+meetups+-+Amsterdam">Wicket Meetup</a></li><li>19:00 - 22:00 <a href="http://wiki.apache.org/jackrabbit/JcrMeetupMarch2009">Jackrabbit Meetup</a></li><li>19:00 - 22:00 <a href="http://wiki.apache.org/lucene-java/LuceneMeetupMarch2009">Lucene Meetup</a></li></ul></p>

<p>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.</p>

<p>Hosted by and located at the <a href="http://www.eu.apachecon.com/c/aceu2009/">ApacheCon</a>, these five special community meetings are taking taking place on the days before the ApacheCon conference in Amsterdam.</p>

<p><b>Entrance is <a href="https://spreadsheets.google.com/viewform?formkey=cDFlMTdSV3dKT1lkYUlVa2lWUFdkQXc6MA..">FREE</a> for everyone, so sign up quick!</b></p>

<h2>Location</h2>
Mövenpick Hotel Amsterdam City Centre
Piet Heinkade 11, Amsterdam

<h2>Sign up</h2>
SIGN UP HERE: <a href="https://spreadsheets.google.com/viewform?formkey=cDFlMTdSV3dKT1lkYUlVa2lWUFdkQXc6MA..">Sign up form</a>

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

<p><a href="http://www.eu.apachecon.com">ApacheCon</a> is the official conference of the <a href="http://www.apache.org">Apache Software Foundation (ASF)</a>, 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.</p>

<div align="center"><a href="http://wiki.apache.org/apachecon/ApacheMeetupsEu09"><img src="http://www.eu.apachecon.com/page_attachments/0000/0160/MeetUps.gif" /></a><a href="http://guest.cvent.com/EVENTS/Register/IdentityConfirmation.aspx?e=a6b010b7-1ca2-446c-92c2-034717858423"><img src="http://us.apachecon.com/page_attachments/0000/0105/Register_for_ApacheCon_gif.gif" /></a></div>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/03/apache_meetups_next_week.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/03/apache_meetups_next_week.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Mon, 16 Mar 2009 15:59:51 +0100</pubDate>
      </item>
            <item>
         <title>Wicket use case testing with Selenium</title>
         <description><![CDATA[<p>Our very own mr AJAX, <a href="http://www.ohloh.net/accounts/abogaart">Arthur</a>, blogs about <a href="http://blogs.hippo.nl/arthur/2009/02/hippoecm_integration_testing_w.html">how we perform</a> automated <a href="http://seleniumhq.org/">Selenium</a> tests on <a href="http://wicket.apache.org">Wicket</a> components</a> for <a href="http://www.onehippo.org/cms7">Hippo CMS 7</a>. </p>

<p>Although he credits me for the video, I was merely playing the annoying voice-over and shaky-cam-operator role :-). Arthur does all the talking. So here's credit back, 'Thuur.</p>

<p>In his blog, he explains how we had to tweak the Wicket markup ids to get Selenium to work.</p>

<p>"Use case testing" is my term for what Arthur (and with him probably the rest of the world) calls "integration testing". This is where we bring together two very important stakeholders into our development project: on one hand, the developers want to know whether integration doesn't break functionality, and on the other hand, users and testers want to know whether the new version of the system has at least the same level of functionality and stability as the last time they tested it. That's why, at the end of each development <a href="http://www.controlchaos.com/about/">Sprint</a>, we have a round of user testing. During that phase we record the use cases that the testers perform and add that to our set of automated Selenium tests.</p>

<p>Go ahead and enjoy <a href="http://blogs.hippo.nl/arthur/2009/02/hippoecm_integration_testing_w.html">Arthur's blog and the demonstration video</a> (and my shaky camera moves).</p>

<p><a href="http://blogs.hippo.nl/arthur/2009/02/hippoecm_integration_testing_w.html"><img alt="selenium.jpg" src="http://blogs.hippo.nl/arje/selenium.jpg" width="569" height="357" /></a></p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/02/wicket_use_case_testing_with_s.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/02/wicket_use_case_testing_with_s.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Tue, 17 Feb 2009 08:49:27 +0100</pubDate>
      </item>
            <item>
         <title>Introduction to imagesets</title>
         <description><![CDATA[<p>An image is not just *one* image to us. It can come in a wide variety of representations. The image that the user uploads, can be (automatically) scaled to different sizes, translated into different languages, or have different versions for different target audiences. All of these different instances are called '<b>variants</b>' in <a href="http://www.onehippo.org/cms7">Hippo</a> speak. In the content repository, there's one single node that represents all of these variants. This is what we call the '<b>handle</b>'. The handle is also what the user sees when he or she selects the image in the CMS. The thumbnail that is displayed next to the image's filename, is a variant underneath the handle.</p>

<p>If you access the image itself from within Hippo CMS, you see all the different variants, and you can actually edit the handle and swap out a variant with a different image file if you're not happy with it. By diving into the physical nodestructure within the content repository (I do this in the movie by accessing the 'console'), you can see those different variants.</p>

<p><br />
<center><br />
<object width="400" height="225"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3066078&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3066078&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object><br /><a href="http://vimeo.com/3066078">Imagesets in Hippo CMS 7</a> from <a href="http://vimeo.com/user1231815">Arje Cahn</a> on <a href="http://vimeo.com">Vimeo</a>.<br />
</center></p>

<p><br />
The structure of an imageset is something that can be tailored to a specific project or website. A website that displays an article that contains a reference to a handle gets to choose which variant to display. So, for example, you could have a website where you want the homepage to always render a thumbnail of the image, and when you click on it, you might want to show a large variant. That's easy! Slightly harder is a situation where you need the image to be translated into 21 different languages, because it's part of the website's navigation. The "About us" button in that case might need a translation workflow process that runs the image through a number of qualified translators and designers. You'll end up with one handle containing 21 different variants (with images that state "Au Sujet de Nous", "Over ons", "关于我们", etc). The whole concept of imagesets in Hippo CMS 7 was designed for processes like this.</p>

<p>In the video, I also demonstrate how references to images (or rather, imageset handles) work in the repository. We're using our <a href="http://blogs.hippo.nl/arje/2007/09/status_update_defining_facets.html">famed faceted repository goodness</a> to setup a symbolic link kind of relationship between an article and an image.</p>

<p>If you'd like to comment on this video, please do so on the <a href="http://vimeo.com/3066078">Vimeo video page</a>.</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/02/imagesets_in_hippo_cms_7.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/02/imagesets_in_hippo_cms_7.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Tue, 03 Feb 2009 12:56:19 +0100</pubDate>
      </item>
            <item>
         <title>Hippo CMS 7 is live!</title>
         <description><![CDATA[<p>Go get Hippo CMS 7 at <a href="http://www.onehippo.org/cms7/delve_into/quickstart.html">http://www.onehippo.org</a>, try out the distro and knock yourself out.</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="120" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://repository.hippo.nl/blogs/20090131/Tabbed editing.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="false"/>
                <param name="flashVars" value="autostart=true"/>
                <param name="scale" value="noborder"/>
                <param name="loop" value="true"/>
                <embed name="csSWF" src="http://repository.hippo.nl/blogs/20090131/Tabbed editing.swf" width="480" height="120" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="false" scale="noborder" flashVars="autostart=true" loop="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
        </div>

<p><br />
I need to thank so many people, that I wouldn't know where to start. Most of all, I need to thank "The Guys Upstairs" for all their hard coding in the last couple of months. Berry, Frank, Bart, Arthur, Ard and Auke, thank you. It's been a rocky ride but it was worth it. I also need to thank Niels, Rita, Jeroen, Jeroen, another Jeroen, Dennis, Jettro, Jasha, Ate, David, Woonsan, Vivek, Anton, Mathijs, Wouter, Tjeerd, Jeff&Jody, Ruben, Johan, Wander and Mike for their contributions. The "Guys Downstairs" (you know who you are!), folks in the US, the marketing people, our customers, everyone from <a href="http://jackrabbit.apache.org">Jackrabbit</a>, <a href="http://wicket.apache.org">Wicket</a>, <a href="http://maven.apache.org">Maven</a>, <a href="http://lucene.apache.org">Lucene</a> and everyone else who influenced this incredible new version of Hippo CMS.. Thanks.</p>

<p>Hippo CMS 7 was built on <a href="http://jackrabbit.apache.org">Apache Jackrabbit</a>, <a href="http://lucene.apache.org">Lucene</a>, <a href="http://wicket.apache.org">Wicket</a> and many other <a href="http://www.apache.org">Apache</a> projects. Combine these really powerful components, add a little <a href="http://blogs.hippo.nl/arje/2007/09/status_update_defining_facets.html">faceted navigation</a>, a touch of <a href="http://blogs.hippo.nl/arje/2007/08/hippo_ecm_platform_a_pluggable.html">plugin framework</a> and <a href="http://www.ohloh.net/p/hippoecm">36 person years of development</a> [1] and you have Hippo CMS 7 :-)</p>

<p>Oh, and it's open source. Go get our code from <a href="http://svn.onehippo.org/repos/hippo/hippo-ecm/">http://svn.onehippo.org/repos/hippo/hippo-ecm/</a>, check out the <a href="http://www.onehippo.org/cms7/delve_into/custom/howto/index.html">Hello World example</a>, and start your own plugin project at the <a href="http://forge.onehippo.org">Hippo Forge</a>. The first 25 people to build a really neat plugin on the forge will receive one of those funky Hippo T-shirts. What's neat? A Google Maps location picker is neat, and maybe a Flickr image plugin is neat, too :)</p>

<p>If you have questions, or would like to share some feedback, feel free to sign up to our <a href="http://www.onehippo.org/cms7/mail-lists.html">CMS 7 User list</a>. Your comments are very well appreciated! :)</p>

<p>[1] Stats from Ohloh http://www.ohloh.net/p/hippoecm<br />
</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2009/01/were_live_go_get_hippo.html</link>
         <guid>http://blogs.onehippo.org/arje/2009/01/were_live_go_get_hippo.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Fri, 30 Jan 2009 13:23:29 +0100</pubDate>
      </item>
            <item>
         <title>Announcing Hippo ECM and Hippo CMS 7</title>
         <description><![CDATA[<p>Lots has happened.</p>

<p>And we're nearly there. It took us <a href="http://blogs.hippo.nl/arje/2007/09/status_update_defining_facets.html">more than a year</a> of <a href="http://lists.hippo.nl/pipermail/hipporepos-dev/">heavy development</a>, but it feels *so good* to play around with this cute little gem! It just feels right. Here's a bit of a sneak preview:</p>

<div id="media">
            <object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="318" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0">
                <param name="src" value="http://repository.hippo.nl/blogs/Milestone%206.4.swf"/>
                <param name="bgcolor" value="#1a1a1a"/>
                <param name="quality" value="best"/>
                <param name="allowScriptAccess" value="always"/>
                <param name="allowFullScreen" value="false"/>
                <param name="scale" value="noscale"/>
                <param name="flashVars" value="autostart=false"/>
                <embed name="csSWF" src="http://repository.hippo.nl/blogs/Milestone%206.4.swf" width="400" height="318" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="false" scale="noscale" flashVars="autostart=true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
            </object>
        </div>

<p>In the meantime, Dennis Byron of <a href="http://www.itbusinessedge.com">IT Business Edge</a> wrote a really <a href="http://www.itbusinessedge.com/blogs/den/?p=149">nice blogpost</a> about how <a href="http://www.onehippo.com">Hippo</a> "Helps Get Portal Enterprise Software Right". As he says, "the characteristic of using CMS to do multiple things multiple ways is the key to the Hippo approach" - and he's <strong>so</strong> spot on. Hold your breath for v7.</p>

<p>This came in just days after something else that I think I'll simply interpret as a big compliment.</p>

<p>As they say, <a href="http://www.bluenog.com/site/products/content/website/products/bluenogcms/bluenogcms.xml">imitation</a> is the <a href="http://www.hippocms.org/display/CMS/Features">greatest</a> form of <a href="http://blog.contenthere.net/2008/09/bluenog-subtly-forks-hippo.html">flattery</a>. Draw your own conclusions. Apparently, there are more people in the world that really like Hippo :-).</p>

<p>Expect more from me in the blogosphere the upcoming weeks as we reveal the new kid on the block in open source ECM.<br />
</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2008/09/announcing_hippo_ecm_and_hippo.html</link>
         <guid>http://blogs.onehippo.org/arje/2008/09/announcing_hippo_ecm_and_hippo.html</guid>
         <category>Hippo CMS</category>
         <pubDate>Mon, 22 Sep 2008 23:38:50 +0100</pubDate>
      </item>
            <item>
         <title>Congratulations, XML</title>
         <description><![CDATA[<p>Last week, XML turned 10. Hurray! <br />
Incredible that it's just 10 years ago.</p>

<p>Crunching my memory, I think the first time I came across XML was somewhere in the end of 1998, when I was working on a Microsoft technology based CMS. Since people have been harassing me with this horrendous error ever since, I hereby would like to make a public confession.</p>

<p><b>The stupidest thing I ever did with XML</b><br />
Store a 100Mb of XML data in a single MS Access record using ASP. <br />
It took ages to store or retrieve the data, and I kept all data in memory for operations before I flushed it back to Access. And the database obviously crashed all the time. But you know, learning comes with making mistakes.</p>

<p><b>The coolest thing I ever did with XML</b><br />
Giving all attendees of the Cocoon GetTogether a <a href="http://www.cocoongt.org/archive/2006/index.html">virtual seat</a> using SVG and <a href="http://cocoon.apache.org">Cocoon</a> SVG-to-JPG transformations :)</p>

<p><b>The stupidest thing I ever saw someone else do with XML</b><br />
Calculate a square root using pure XSL transformations (this one is actually courtesy of <a href="http://blogs.hippo.nl/ard/">Ard</a> ;) )</p>

<p>So what was your best XML moment?</p>

<p>10 years old. Can you imagine? Not even old enough to visit high school. Another 8 years before XML will be allowed to drive a car.</p>

<p>Read more on the <a href="http://www.w3.org/2008/xml10/">W3C website.</a>.</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2008/02/congratulations_xml.html</link>
         <guid>http://blogs.onehippo.org/arje/2008/02/congratulations_xml.html</guid>
         <category></category>
         <pubDate>Fri, 15 Feb 2008 11:51:32 +0100</pubDate>
      </item>
            <item>
         <title>Fresh new hearing</title>
         <description><![CDATA[<p>They kicked me out of hospital last week.</p>

<p>Exactly ten years after what was supposed to be my last operation, my left ear started troubling me again. I had no other choice than to undergo some major surgery to stabilize the inflammation and to hopefully get some of my old hearing back.</p>

<p>Not a lot of people actually know this, but I'm almost deaf on one ear. Sitting on my left side in a crowded bar is a good guarantee that I won't be able to have any conversation with you. That's why you can see me switching chairs all the time for apparently no reason - it's not because I'm superstitious or something - I just want to be able to hear people.</p>

<p>But now this is all supposed to get soo much better...!</p>

<p>When I woke up from anaesthetics, the doctors (all three of them) were jumping up and down next to my bed like little children. Surgery went much quicker then they had expected, and they had had so much fun playing around with chunks of Titanium in my head, neurological sensors to monitor my facial nerves and so on. Oh big joy. But I can tell you - nothing feels better than seeing happy doctors when you wake up after long hours of surgery!</p>

<p>I'm taking it easy now - trying to recover and let the new ear heal. So bear with me if I'm not responding to your email quick enough.</p>

<p>For those of you who hungry for bloodshed and gore pictures - <a href="http://blogs.hippo.nl/arje/2008/02/07/IMG_7131-sm.html" onclick="window.open('http://blogs.hippo.nl/arje/2008/02/07/IMG_7131-sm.html','popup','width=461,height=691,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false">here's</a> what my head looked like last week :-)</p>

<p>Enjoy,</p>

<p>Arjé</p>]]></description>
         <link>http://blogs.onehippo.org/arje/2008/02/fresh_new_hearing.html</link>
         <guid>http://blogs.onehippo.org/arje/2008/02/fresh_new_hearing.html</guid>
         <category>Private</category>
         <pubDate>Thu, 07 Feb 2008 17:01:10 +0100</pubDate>
      </item>
      
   </channel>
</rss>
