<?xml version="1.0" encoding='utf-8'?>
<?xml-stylesheet type="text/xsl" href="https://raibledesigns.com/roller-ui/styles/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" 
      xmlns:app="http://www.w3.org/2007/app"
      xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">

    <title type="html">Search for [drupal] in weblog rd</title>
    <subtitle type="html">Search results for [drupal] within weblog Raible Designs</subtitle>
    <id>https://raibledesigns.com/rd/feed/entries/atom?q=drupal</id>

    <link rel="self" type="application/atom+xml" 
        href="https://raibledesigns.com/rd/feed/entries/atom?q=drupal" />

    <link rel="alternate" type="text/html" 
        href="https://raibledesigns.com/rd/search?q=drupal" />

    <link rel="search" type="application/opensearchdescription+xml" 
        href="https://raibledesigns.com/roller-services/opensearch/rd" />
    <opensearch:Query role="request" searchTerms="drupal" startPage="1" />

    <link rel="first" type="application/atom+xml" href="https://raibledesigns.com/rd/feed/entries/atom?q=drupal" />
    <updated>2026-05-09T04:29:55-06:00</updated>
    <generator uri="http://roller.apache.org" version="5.0.3 (1388864191739:dave)">Apache Roller</generator>

        <entry>
        <id>https://raibledesigns.com/rd/entry/play_framework_2_0_with</id>
        <title type="html">Play Framework 2.0 with Peter Hilton at Jfokus</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/play_framework_2_0_with"/>
        <published>2012-02-14T07:17:08-07:00</published>
        <updated>2012-02-14T13:19:40-07:00</updated> 
        <category term="/Java" label="Java" />
        <category term="playframework" scheme="http://roller.apache.org/ns/tags/" />
        <category term="webframeworks" scheme="http://roller.apache.org/ns/tags/" />
        <category term="jfokus" scheme="http://roller.apache.org/ns/tags/" />
        <category term="scala" scheme="http://roller.apache.org/ns/tags/" />
        <category term="http" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">This week, I&apos;m at &lt;a href=&quot;http://jfokus.se&quot;&gt;Jfokus&lt;/a&gt; in Stockholm, Sweden. After a fun speaker&apos;s dinner last night, I got up this morning and polished up my presentations and demo before attending the conference. The first session I attended was &lt;a href=&quot;http://twitter.com/PeterHilton&quot;&gt;Peter Hilton&apos;s&lt;/a&gt; &lt;a href=&quot;http://www.jfokus.se/jfokus/talks.jsp#Play%20Framework%202.0&quot;&gt;Play Framework 2.0&lt;/a&gt; presentation. Below are my notes from this talk.
&lt;/p&gt;
&lt;p style=&quot;border-top: 1px dotted silver; padding-top: 10px&quot;&gt;Peter is a Senior &lt;em&gt;Web&lt;/em&gt; Developer, not a Java Developer. His first slide states the following:&lt;/p&gt;
&lt;p style=&quot;text-align: center&quot;&gt;
&quot;Play brings type safe high-productivity web development to the JVM.&quot;
&lt;/p&gt;
&lt;p&gt;
New features in Play 2.0: type-safety, template syntax, compile-time checking and asynchronous HTTP programming. Java, Scala - the language you use is less important than the fact that Play is a &lt;em&gt;web&lt;/em&gt; framework. It&apos;s a full-stack framework and has everything you need out-of-the-box to build a web application. Play focuses on HTTP and doesn&apos;t try to hide it. It&apos;s designed &lt;em&gt;by&lt;/em&gt; web developers &lt;em&gt;for&lt;/em&gt; web developers.
&lt;/p&gt;
&lt;p&gt;
With Play, the Back button just works. Your web framework shouldn&apos;t break the first button on your browser&apos;s toolbar. The Reload button also works: make a change, hit reload and your changes (even in Scala classes) are shown. You design the URLs and you can use &quot;clean&quot; URLs. DX (Developer eXperience) is Peter&apos;s new term. Usability matters: as a developer, you deserve a framework that provides a good experience.
&lt;/p&gt;
&lt;p&gt;
Play doesn&apos;t fight HTTP or the browser. It&apos;s stateless and HTTP-centric. A few years ago, it seemed like a good idea to try and keep state on the server. It sounded like a good idea, but in practice, it&apos;s a really bad idea - especially for things like the back button. Play matches the web&apos;s stateless HTTP architecture. 
&lt;/p&gt;
&lt;p&gt;
As a Java EE developer, PHP and Rails developers have been laughing at us for years. Like Father Christmas, Peter&apos;s heard of class-reloading, but he hasn&apos;t actually seen it. Code reloading is the most important part of DX and about achieving high-productivity in web development. 
&lt;/p&gt;
&lt;p&gt;
URLs want to be loved too. REST architecture isn&apos;t just for web service APIs. When you have clean URLs, you can tweet them, post them and email them. 
&lt;/p&gt;
&lt;p&gt;
&quot;You would need to be a super-hero to successfully use some web frameworks.&quot; They show you a blank screen in the browser and you have to look at your console&apos;s stack trace to figure it out. With Play, the error is shown in your browser and you can see the exact line it happens on.
&lt;/p&gt;
&lt;p&gt;
In Play 1.x, there was a lot of magic and a lot of bytecode enhancement at runtime. This allowed the API to be a lot nicer than traditional Java APIs. However, it caused issues when users viewed the enhanced source and it also caused issues in IDEs. With Play 2.0, the framework itself is implemented in Scala. Scala removes the need for so much bytecode enhancement. There is less &apos;magic&apos; and strangeness in the API. The code you see in the IDE is the code that runs. Scala source code is not necessarily harder to read. 1.x had some pretty hairy Java code, and you could tell when you dug into it. Especially when you were deep into the source code and saw that a lot of the comments were in French.
&lt;/p&gt;
&lt;p&gt;
Play 2.0&apos;s template system is based on Scala. It&apos;s similar to the lightweight template syntax in Play 1.x. Templates are compiled into class files for run-time speed. For example:
&lt;/p&gt;
&lt;pre class=&quot;brush: scala&quot;&gt;
@(products: Seq[Product])

&amp;lt;ul&gt;
@for(product &amp;lt;- products) {
  &amp;lt;li&gt;@product.name&amp;lt;/li&gt;
}
&amp;lt;/ul&gt;

@summary(products)
&lt;/pre&gt;
&lt;p&gt;We used to think XML-based templates were great, but it turns out it&apos;s a terrible idea. Mostly because you end up having to invent an expression language to create valid XML (to avoid putting XML in your HTML attributes). With Play 2.0&apos;s templates, you can define tags in your templates as regular Scala methods.
&lt;/p&gt;
&lt;pre class=&quot;brush: scala&quot;&gt;
@display(product: models.Product) ={
 &amp;lt;a href=&quot;@routes.Product.details(product.id)&quot;&gt;@product.name&amp;lt;/a&gt; 
}

@for(product &amp;lt;- products) {
  @display(product)
}
&lt;/pre&gt;
&lt;p&gt;The compile-time checking in Play 2.0 is not just for Java and Scala classes. It also compiles your HTTP routes file (which maps requests to controller actions). Furthermore, it compiles your templates, JavaScript files (using Google Closure Compiler), CoffeeScript files and LESS stylesheets. 
&lt;/p&gt;
&lt;p&gt;
Play supports modern web development. It&apos;s designed to work with HTML5, but there&apos;s no constraints on HTML output. It&apos;s front-end developer friendly and has great DX. UI components belong in the client, e.g. jQuery UI. It also has built-in support for improvements to CSS (LESS) and JavaScript (CoffeeScript).
&lt;/p&gt;
&lt;p&gt;
A few years ago, it seemed like a really good idea to hide JavaScript from the web developer. Web frameworks used to say &quot;You don&apos;t need to see the JavaScript or the HTML, we&apos;ll handle generating your components for you.&quot; Now, if you&apos;re building a web application and you don&apos;t know any jQuery, you doing it the hard way. You should learn how to work with front-end developers or learn how to do it yourself. And make sure your web framework allows this sort of development. 
&lt;/p&gt;
&lt;p&gt;
The future of web programming is asynchronous. You&apos;ll perform simultaneous web service requests. You&apos;ll process streams of data, instead of filling up memory or disk. You&apos;ll publish real-time data and have predictable and minimal resource consumption. In the long term, this changes everything. The future of the web is real-time and asynchronous. With Play 2.0, it&apos;s not just another feature, it&apos;s a fundamental aspect of the architecture. Play&apos;s internal architecture uses a reactive model based on Iteratee IO. 
&lt;/p&gt;
&lt;p&gt;In summary, use Play 2, use HTML5, deploy to the Cloud. There&apos;s two forthcoming books on Play (both from Manning) and Play 2.0 RC1 will be released today.&lt;/p&gt;
&lt;p style=&quot;border-top: 1px dotted silver; padding-top: 10px&quot;&gt;
I think Peter did a good job of summarizing the new features in Play 2.0, especially how templates work. I enjoyed his emphasis on HTTP and how Play leverages the browser (back, reload and as a console). I liked his humorous speaking style, and agree with his emphasis that client-side development skills are important for modern web applications. I think Play 2.0 is making a big bet on Scala and asynchronous programming, but if they live up to the hype, it should be a very enjoyable web framework to develop with.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/awesome_birthday_present_a_kegerator</id>
        <title type="html">Awesome Birthday Present: A Kegerator</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/awesome_birthday_present_a_kegerator"/>
        <published>2008-08-05T21:01:20-06:00</published>
        <updated>2014-05-08T19:47:19-06:00</updated> 
        <category term="/General" label="General" />
        <category term="parents" scheme="http://roller.apache.org/ns/tags/" />
        <category term="beer" scheme="http://roller.apache.org/ns/tags/" />
        <category term="kegerator" scheme="http://roller.apache.org/ns/tags/" />
        <category term="birthday" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;a href=&quot;http://farm3.static.flickr.com/2237/2737563390_dbd7f48a03_o.jpg&quot; title=&quot;My New Kegorator&quot; rel=&quot;lightbox[kegorator]&quot;&gt;&lt;img src=&quot;//farm3.static.flickr.com/2237/2737563390_b91959df53_m.jpg&quot; width=&quot;180&quot; height=&quot;240&quot; alt=&quot;My New Kegorator&quot; class=&quot;picture&quot; /&gt;&lt;/a&gt;
I&apos;m proud to say I have the best parents in the world. For my birthday this year, they bought me a &lt;a href=&quot;http://en.wikipedia.org/wiki/Kegerator&quot;&gt;kegerator&lt;/a&gt;. It was delivered last week, but I didn&apos;t get a chance to put it together until this weekend. I&apos;ve never had so much fun putting together an appliance.&lt;/p&gt;
&lt;p&gt;Since it&apos;s summer and I&apos;m in Colorado, I decided to get a keg of &lt;a href=&quot;http://www.newbelgium.com/beers_sw.php&quot;&gt;Sunshine Wheat&lt;/a&gt; to start things off. So far, there&apos;s issues with 1) too much head and 2) it&apos;s not quite cold enough. I think the first can be fixed by playing with the CO2 tank and settings. The 2nd might only be fixable by moving it inside. If you have a kegerator and have advice on how to fix these issues, please let me know.
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Why did your parents buy you a kegerator?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;There&apos;s actually a good reason for this. A few years ago, Julie and I made an agreement that I could buy a kegerator when I paid off the last of my student loans. While Julie and I aren&apos;t a couple anymore, it still seemed like a good idea. I paid off my last student loan in June. However, it wasn&apos;t &lt;em&gt;my&lt;/em&gt; loan, it was my Mom&apos;s. When I was applying for colleges way back in the early nineties, my parents said I could go to &lt;a href=&quot;http://www.du.edu&quot;&gt;DU&lt;/a&gt;, but only if &lt;em&gt;I&lt;/em&gt; paid for it. 
&lt;/p&gt;
&lt;p&gt;
My Mom took out quite a few loans over the years to help with tuition, and I finally paid them all off. When I was with my parents &lt;a href=&quot;http://raibledesigns.com/rd/entry/raible_road_trip_12_vacation&quot;&gt;over the 4th&lt;/a&gt;, I joked that they should buy me a kegerator since I was paying off their loans. Lo and behold, my subliminal messages worked and I ended up with a tap at my house. I couldn&apos;t be happier.
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; Speaking of birthdays, this is the first post I&apos;ve had to start the 7th year of this blog. My first post was on &lt;a href=&quot;http://raibledesigns.com/rd/date/20020801&quot;&gt;August 1, 2002&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update 2 on Friday:&lt;/strong&gt; I haven&apos;t had a beer from the kegerator since Sunday. This evening I poured a fresh one and I&apos;m happy to report the head and temperature issues seem to be fixed.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/oscon_2008_the_state_of</id>
        <title type="html">[OSCON 2008] The State of Lightning Talks</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/oscon_2008_the_state_of"/>
        <published>2008-07-24T13:34:08-06:00</published>
        <updated>2012-11-11T02:00:40-07:00</updated> 
        <category term="/Open Source" label="Open Source" />
        <category term="memcached" scheme="http://roller.apache.org/ns/tags/" />
        <category term="gentoo" scheme="http://roller.apache.org/ns/tags/" />
        <category term="launchpad" scheme="http://roller.apache.org/ns/tags/" />
        <category term="openscrum" scheme="http://roller.apache.org/ns/tags/" />
        <category term="openid" scheme="http://roller.apache.org/ns/tags/" />
        <category term="osi" scheme="http://roller.apache.org/ns/tags/" />
        <category term="mysql" scheme="http://roller.apache.org/ns/tags/" />
        <category term="opensolaris" scheme="http://roller.apache.org/ns/tags/" />
        <category term="oscon08" scheme="http://roller.apache.org/ns/tags/" />
        <category term="glassfish" scheme="http://roller.apache.org/ns/tags/" />
        <category term="gnome" scheme="http://roller.apache.org/ns/tags/" />
        <category term="bazaar" scheme="http://roller.apache.org/ns/tags/" />
        <category term="subversion" scheme="http://roller.apache.org/ns/tags/" />
        <category term="postgresql" scheme="http://roller.apache.org/ns/tags/" />
        <category term="talkingbridgeproject" scheme="http://roller.apache.org/ns/tags/" />
        <category term="openoffice" scheme="http://roller.apache.org/ns/tags/" />
        <category term="drizzle" scheme="http://roller.apache.org/ns/tags/" />
        <category term="mozdev" scheme="http://roller.apache.org/ns/tags/" />
        <category term="oscon" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">From &lt;a href=&quot;http://en.oreilly.com/oscon2008/public/schedule/detail/2236&quot;&gt;this session&apos;s detail page&lt;/a&gt;:&lt;/p&gt;
&lt;p class=&quot;quote&quot;&gt;
As a repeat of the last 2 years, 15 open source project leaders will be given five minute lightning talk slots to bring the audience up to date on their projects.
&lt;br/&gt;&lt;br/&gt;
This year&amp;rsquo;s speakers and projects include: Brian Aker: Memcached, Glynn Foster: OpenSolaris, OSI: Danese Cooper, MySQL: Monty Widenius, PostgreSQL: Bruce Momjian, GNOME: Dave Neary, Gentoo: Donnie Berkholz, OpenOffice.org: Louis Suarez-Potts, Jabber: Peter Saint-Andre, Mozdev: Brian King, OpenID: Scott Kveton, Open Scrum: James Dixon, and Cliff Schmidt for the Talking Book Project. A couple more projects may be added later.
&lt;br/&gt;&lt;br/&gt;
Each speaker has exactly 5 minutes, and we use various &amp;ldquo;fun&amp;rdquo; tools to make sure they stick to their time. The session usually ends with a &amp;ldquo;zinger&amp;rdquo; presentation worth staying for.
&lt;/p&gt;
&lt;p&gt;Unlike the description above, apparently there&apos;s 17 projects instead of 15. This session is 95 minutes long (spans 2 normal sessions). I figure this will be the most challenging event for me to blog, so here we go!
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OSI (Open Source Initiative), Danese Cooper&lt;/strong&gt;&lt;br/&gt;
Danese has been on the board of OSI since 2001 and will be on the board for another 3 years. This year, they&apos;ve been asking themselves &quot;What are the ways to make OSI more effective?&quot; The best answer they&apos;ve come up with is that they should run OSI more like an open source project (with lots of transparency). Minutes are posted publicly on website and they have a public blog. They&apos;re also transferring their archives to a searchable system. They&apos;ll be using Trac to do more objective tracking of all the issues that&apos;ve been brought to their attention.
&lt;/p&gt;
&lt;p&gt;
They&apos;re also going to establish (formal) membership. They&apos;re going to use Apache as a model and allow Charter, Individual, Organizational and have an Annual Members Meeting. ASF currently has 300 members and these folks are in charge of making decisions for the foundation. There&apos;s a good chance you&apos;ll recognize all the Charter Members of OSI. The names will be announced in the next couple months (I believe). There will be opportunities to be individual or organizational members. 
&lt;/p&gt;
&lt;p&gt;
There&apos;s new board members this year with an international focus: Nnenna (Africa), Harshad Gune ...honk... out of time.
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Open Scrum, James Dixon&lt;/strong&gt;&lt;br/&gt;
James is the founder and Chief Geek at Pentaho. Pentaho recently took their products open source and they&apos;re releasing Open Scrum as an agile methodology for managing open source projects. Open Source is not a methodology, it is a set of principles.&lt;/p&gt;
&lt;p&gt;
Some agile principles are used in open source, but some are not. For instance, trusting developers and face-to-face contact can be difficult with open source projects. Simplicity sometimes comes out of open source projects, but usually only for projects with a large developer base. There&apos;s a 45% good fit between Agile and Open Source.
&lt;/p&gt;
&lt;p&gt;Open Scrum is based on Scrum, but geared towards open source projects. It&apos;s simple and flexible and template driven. It scales from single-geek, part-time, single-projects to massively multi-geek full-on and multi-layered undertakings. 
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MySQL, Monty Widenius&lt;/strong&gt;&lt;br/&gt;
Monty is the Chief Fonder of MySQL and he&apos;s talking about what&apos;s new in MySQL. There&apos;s been no new releases for users, but internally they&apos;ve been doing lots of bug fixes in 5.1. He expects to have a reasonable GA of 5.1 in 3-5 months. 5.0 will include online backup and optimizer changes for faster joins and sub queries. 5.1 has an InnoDB Plugin.
&lt;/p&gt;
&lt;p&gt;
MySQL was acquired by Sun for $1 billion and 6 months later, life is good. MySQL Backup was announced to be crippleware by MySQL management, but later changed to be open source.
&lt;/p&gt;
&lt;p&gt;
Switched to use Bazaar and Launchpad to increase community participation. Started public bug hunt for MySQL 5.1. Started using case competition for new features in 5.1. There&apos;s also a new MySQL forge. Please help MySQL get better by filing bugs!
&lt;/p&gt;
&lt;p&gt;
Maria engine 1.0 and 1.5; now crashsafe and multi-versioned. Transactional part to follow soon. 
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OpenID, Scott Kveton&lt;/strong&gt;&lt;br/&gt;
Scott is on the board of the OpenID Foundation and his son is on stage with him (with a Twitter shirt on). In terms of adoption, they have a hockey stick graph with the big upturn starting in February 2007. OpenID is only 3 years old and there&apos;s over 20,000 sites that now support it. There&apos;s about ~500 million OpenIDs (including every AOL, Yahoo, MySpace and LiveJournal user).&lt;/p&gt;
&lt;p&gt;OpenID 2.0 was released as final 12/7/2007. What&apos;s next: usability (currently sucks), security (PAPE), integration with other protocols, more than just providing, and possibly OpenID 3.0. One of the biggest problems with usability is people just can&apos;t remember URLs, so they&apos;re trying to figure out a URL -&gt; e-mail mapping.
&lt;/p&gt;
&lt;p&gt;OpenID Foundation has added 5 corporate board seats and has 7 community board seats and elections are in August. You can get code at &lt;a href=&quot;http://openidenabled.com&quot;&gt;openidenabled.com&lt;/a&gt; and you can get involved at &lt;a href=&quot;http://openid.net&quot;&gt;openid.net&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Gentoo, Donnie Berkholz&lt;/strong&gt;&lt;br/&gt;
Donnie is one of 7 people that&apos;s on the council that tries to make sure Gentoo is going in a good direction. In the last year, they&apos;ve been struggling with community and releasing. Gentoo is just getting old enough where people are quitting and new developers are coming on board. In 2005, they had a lot of voters for their council. 2006 and 2007 were bad years from a community participation standpoint. This year, they&apos;ve fixed &quot;poisonous people&quot; and participating is back up.&lt;/p&gt;
&lt;p&gt;Rather than voting for single candidates, they use a &quot;rank all the candidates&quot; voting system. Community is very important and they&apos;ve recently kicked out 3 people that didn&apos;t think community was important. They released 2008.0 a few weeks ago. It was supposed to be released in February. When they released, they made the front page of Digg, which made Donnie very happy. Gentoo news announcements were way down in 2007, but now they&apos;re back up. 
&lt;/p&gt;
&lt;p&gt;Recommended books for community building: Good to Great, The No Asshole Rule, Getting to Yes.
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;PostgreSQL, Bruce Momjian&lt;/strong&gt;&lt;br/&gt;
Bruce is a PostgreSQL core developer and works for EnterpriseDB. The future for PostgreSQL is going to be a lot different than the past. PostgreSQL&apos;s path to the future isn&apos;t a straight line. Rather, it&apos;s a meandering path like a road up a mountain with switchbacks. People would like a catapult to put features into to get things in, but it&apos;s not that easy. It&apos;s difficult to improve software that&apos;s been around for 20 years.
&lt;/p&gt;
&lt;p&gt;Companies have very clearly defined goals that usually revolve around money. With open source, it&apos;s a lot different. Goals are usually for a feature set, for adoption of open source or for the challenge and fun of it. 
&lt;/p&gt;
&lt;p&gt;PostgreSQL 8.0 was released in January 2005 and had a lot of enterprise features: Win32, Savepoints, Point-In-Time Recovery, Tablespaces. The latest release (8.3 in February) was much different and much more exotic features. In the future, they&apos;re going to expand on running queries on multiple CPUs and maintaining their leadership in the open source database space.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Bazaar, Mark Shuttleworth&lt;/strong&gt;&lt;br/&gt;
Mark&apos;s interest in distributed version control predates his interest in Ubuntu. If we can elevate our process of version control, we can elevate the entire open source community. Bazaar is a distributed version control system that&apos;s developed in Python. It focuses relentlessly on a couple of key values: 
&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;Cross-platform: Linux, Windows, Mac OS X&lt;/li&gt;
&lt;li&gt;Performance: sub-second status on &gt; 10,000 files&lt;/li&gt;
&lt;li&gt;Being adaptive to the way that people want to work (can use it like Subversion if you want or you can have distributed branches or have a team checkout)&lt;/li&gt;
&lt;li&gt;Extensibility and embeddable - has a plugin system&lt;/li&gt;
&lt;li&gt;Python Hackable - people can easily modify&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Projects that use Bazaar: GNU, MySQL, Twisted and Ubuntu.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Memcached, Alan &quot;Dormando&quot;&lt;/strong&gt;&lt;br/&gt;
Memcached is a very simple project with a mailing list with very simple people on it that run very simple websites. They haven&apos;t had a release in 6 months. Memcached was written by a guy named Fitz that wrote it and left. They&apos;ve only recently created a developer community that&apos;s all over the globe. Alan didn&apos;t bring any slides, but he did release 1.2.6 RC1 as he was standing on stage. They also hope to release 1.3.1 this week, but there&apos;s not a lot of documentation.
&lt;/p&gt;
&lt;p&gt;
People fork Memcached a LOT, mostly because they need a new backend. They&apos;ve added a new storage engine that&apos;s pluggable to hopefully fix the forking problem. Also, their new binary protocol should make it a lot faster for high traffic web sites.
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Talking Bridge Project, Cliff Schmidt&lt;/strong&gt;&lt;br/&gt;
While the network at OSCON has been slow, the folks that live in rural areas around the world have an incredibly slow means of getting information. Their network is often roads that people travel on to communicate with each other. 
&lt;/p&gt;
&lt;p&gt;
They&apos;ve created a Talking Book device that is an MP3 player that costs $5-10. They&apos;re also creating kiosks that people in rural areas can interact with to download new information (i.e. podcasts and other educational content). It also has a microphone and can be found at &lt;a href=&quot;http://literacybridge.org&quot;&gt;literacybridge.org&lt;/a&gt;. They&apos;re creating open source projects to help build the device and content around it. They&apos;d love to have open source developers join their projects and help them make access to information easier for rural societies.
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Open Source Lab at Oregon State University, Lance Albertson&lt;/strong&gt;&lt;br/&gt;
Lance is a Kansas native and grew up on a farm. He&apos;s a Gentoo developer and joined OSL a year ago. OSL was created in 2003 to utilize &quot;extra&quot; unused bandwidth. They provide managed and co-located hosting for open source software projects. They also provide on-the-job learning opportunities for students in system administration and development.
&lt;/p&gt;
&lt;p&gt;
In addition to hosting, they have a development and outreach side. They have 12 student employees that are given developers/sys admins are given real world practical opportunities. Their work is seen and used by many people and students are given extraordinary amounts of responsibility. They&apos;re working on a couple external OSS projects: Oregon Virtual School District and One Laptop Per Child. 
&lt;/p&gt;
&lt;p&gt;
Outreach wise, they have an Open Source Education Lab and they&apos;ve been doing Drupal training for OSU employees. They&apos;ve also helping organize GOSCON, which is an open source conference for governments. 
&lt;/p&gt;
&lt;p&gt;
They currently offer hosting for over 70 OSS projects. Services include, email relays, databases, web hosting, file mirroring and code repositories. Notable clients: ASF, Drupal, kernel.org (master), OpenOffice, Freenode, Gentoo Linux &amp;amp; Debian, phpBB and many others. Datacenter currently has 50 racks; they&apos;ll be moving to 75 in the near future.
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;OpenOffice&lt;/strong&gt;&lt;br/&gt;
They&apos;ve had 150 million downloads and believe there&apos;s around 1 million users. There&apos;s 350 committers and most of them work from Sun. Presently, their biggest focus is Desktop. In the future, they&apos;ll focus on the Web. The idea is that people will want to use OpenOffice from their mobile devices. ODF is a format that can be expressed by any application. OO 3.0 is about extensions, not bloat. They&apos;re adding linkage to a free PIM (Outlook replacement). They&apos;re also adding better interoperatbility with other suites and formats (e.g., Microsoft Office 2007). They&apos;re adding productivity tools and adding toolkits to make things easier for developers. 

In the next year, they expect to go way beyond 150 million downloads. They also expect to expand greatly internationally.

&lt;p&gt;&lt;strong&gt;Mozdev, Brian King&lt;/strong&gt;&lt;br/&gt;
Brian has been in the Mozilla Community since 1999. &lt;a href=&quot;http://mozdev.org&quot;&gt;Mozdev.org&lt;/a&gt; is a community site that provides free hosting for Mozilla applications and extensions since 2000. Established as a non-profit organization in 2004. It has over 250 active projects today and there&apos;s over 500 developers discussing issues on the project_owners@mozdev.org list.
&lt;/p&gt;
&lt;p&gt;
Services provided: source code hosting, bug tracking (Bugzilla), communication tools (lists, newsgroups, blogs, forums), file management tools, project tagging, wiki, statistics, permissions system and public planning.
&lt;/p&gt;
&lt;p&gt;
They&apos;ve experienced some grown pains in the last few years, but they&apos;re mostly solved now. They&apos;ve added developer resources to help develop their site, but they need more. Up until Firefox, they were the #1 place to go for Mozilla projects. They&apos;re still working on letting people know that they&apos;re around and have projects that are interested. They&apos;re looking for new avenues for funding.
&lt;/p&gt;
&lt;p&gt;
Moving forward: they&apos;ll be add more items to roadmap, making it easier for less technical folks to host and create extensions, solving the funding issue, and developing deeper relationship with Mozilla (MoFo and MoCo). Quite simply, they want to continue with their goal of supporting developers in order to proliferate Mozilla technologies.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Glen Foster, OpenSolaris&lt;/strong&gt;&lt;br/&gt;
&lt;em&gt;Hey - I had a beer with this guy last night at Kells!&lt;/em&gt; Rather than focusing on the older Solaris users, they want to move to focus on getting kids to learn and use it. A couple of months ago, they released 200805 and reduced 5 CDs down to a single live CD. The packaging system is now network based. They changes the default shell to bash and changed to GNU tools as they default as well.
&lt;/p&gt;
&lt;p&gt;
They introduced a new site - &lt;a href=&quot;http://opensolaris.com&quot;&gt;opensolaris.com&lt;/a&gt;. Since Sun released the source code 3 years ago, they&apos;ve had a long evolution of getting the source out the door. They were using Teamware and doing much of the development behind the door. Early next month, they&apos;re moving to Mercurial and they&apos;ll be moving all the source outside the firewall. They&apos;ll be using Bugzilla as their bug tracking system.
&lt;/p&gt;
&lt;p&gt;
Similar to Gentoo, they&apos;ve had quite a few people in their community that don&apos;t like change. They&apos;re working on fixing this and have had good progress. Several years ago, they created a governance system before they had a community. This was a mistake and their new community-driven governance system should work much better.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;GNOME, Dave Neary&lt;/strong&gt;&lt;br/&gt;
GNOME is a desktop environment and set of utilities. It&apos;s the default on Ubuntu and Fedora. It&apos;s the face of Linux on the Desktop. It&apos;s also a platform for development. They have a vibrant ISV community that includes Adobe, VMWare and IBM. In addition to desktop, GNOME is also a mobile platform. They also act as a big tent that provides an infrastructure for projects that are part of the GNOME ecosystem. 
&lt;/p&gt;
&lt;p&gt;
The most important thing to Dave is the shared vision of universal access to anyone and everyone. Very important things to the GNOME project: usability, internationalization and localization, accessibility (Sun and IBM have done a lot of work). Accessibility is something they&apos;ve really focused on in the last year. They&apos;ve created an Outreach Project for Accessibility and have gotten funding from Mozilla, Canonical and Google. Mozilla has done a lot to fund them and help provide accessibility for Rich Internet Applications. To see if a website is accessible, try it in lynx.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Subversion, John Mark Walker&lt;/strong&gt;&lt;br/&gt;
John is the Community Manager for openCollabNet and is not a Subversion developer. Subversion 1.4 was released in September 2006. There was much anticipating for 1.5 and was released last month. The people rejoiced. 
&lt;/p&gt;
&lt;p&gt;
What&apos;s new in 1.5? Merge tracking: easier to merge changes from trunk to branch and vise versa. You can also do sparse checkouts (replaces -N). Interactive conflict resolution so you can do it from the command line client. It also add changelist support. svn:externals is no longer required to be absolute (sweet!) and you can add peg revisions in your URLs. FSFS repos never change a rev after written to disk. Clients many now perform chained copy/move operations locally. It also supports moving multiple sources for copy and move. Client operations are now significantly more responsive to canceling operations. &quot;resolve&quot; subcommand replaces &quot;resolved&quot; (deprecated). Delete (remove) now takes a --keep-local option.
&lt;/p&gt;
&lt;p&gt;
&lt;em&gt;Now it&apos;s time for the fun stuff...&lt;/em&gt;
&lt;/p&gt;
&lt;p&gt;Ken Drachnik had to leave for an emergency and is unable to give his talk on GlassFish. An audience member (Carl Fogel) volunteers to do his presentation. It&apos;s very funny, especially since he&apos;s not a Java Developer and has never heard of GlassFish. The only thing I got out of this presentation (besides lots of laughs) is that v3 will be released in June 2009.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Drizzle, Brian Aker&lt;/strong&gt;&lt;br/&gt;
Stored procedures, triggers, prepared statements and many other things have been discarded. &quot;One CPU to rule them, and in the query cache, bind them.&quot; If you have a query cache turned on in our database, turn it off or delete it.
&lt;/p&gt;
&lt;p&gt;
Drizzle is currently ~420K. The Master Plan is to rethink everything and not assume everything was bad. Also, they can reuse many other libraries w/o writing them from scratch. They don&apos;t have to ship every library because many are present on operating systems. In with the new: C99, Posix, package-lib. They&apos;re moving to a MicroKernal design and moving code to the edge. No new features will be in core. To add interfaces you have to remove code so there&apos;s an equal amount of code.
&lt;/p&gt;
&lt;p&gt;
Multi-Core support: no new locks, remove old locks. Think today (burn memory, messages scales). They can leverage Sun because they can build machines with more cores than anyone else.
&lt;/p&gt;
&lt;p&gt;
Field Types: Less primitives - now there&apos;s just one &quot;blob&quot;. Removed the 3 byte int and add UUID/IPV4(6). They dumped ACL because we authenticate in clouds. KISS.
&lt;/p&gt;
&lt;p&gt;
You can get involved with Drizzle at &lt;a href=&quot;http://launchpad.net/drizzle&quot;&gt;http://launchpad.net/drizzle&lt;/a&gt; (bzr branch lp:drizzle) and &lt;a href=&quot;http://launchpad.net/drizzle-discuss&quot;&gt;http://launchpad.net/drizzle-discuss&lt;/a&gt; (mailing list).
&lt;/p&gt;
&lt;p&gt;</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/java_cms_systems</id>
        <title type="html">Java CMS Systems</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/java_cms_systems"/>
        <published>2007-03-08T08:45:50-07:00</published>
        <updated>2007-03-08T15:50:25-07:00</updated> 
        <category term="/Java" label="Java" />
        <category term="java" scheme="http://roller.apache.org/ns/tags/" />
        <category term="cms" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">Michael Levin is at the &lt;a href=&quot;http://mindview.net/Conferences/JavaPosseRoundup&quot;&gt;JavaPosse Roundup&lt;/a&gt; this week. Today, &lt;a href=&quot;http://jroller.com/page/Sandymountster?entry=div_style_float_right_margin16&quot;&gt;they&apos;re discussing Java CMS Systems&lt;/a&gt;.  I recently had an e-mail discussion with a reader regarding Java-based CMS Systems. In hopes of getting these questions answered by Michael today, here&apos;s that thread:&lt;/p&gt;
&lt;p class=&quot;quote&quot;&gt;&lt;span style=&quot;color: #9E7700&quot;&gt;&lt;strong&gt;Original E-Mail:&lt;/strong&gt;&lt;br/&gt;
OpenCMS, Magnolia CE/EE, Atleap, Alfresco, Liferay.
&lt;br/&gt;&lt;br/&gt;
Magnolia EE, Day Communique, Hannon Hill, Refresh, Vertical Site.
&lt;br/&gt;&lt;br/&gt;
We are leaning towards Magnolia EE since we have a load balancer and two production server, but I bet we could hack in support in the community edition.
&lt;br/&gt;&lt;br/&gt;
Any comments/recommendations?
&lt;/span&gt;
&lt;span style=&quot;color: silver; display: block; margin: 5px&quot;&gt;--------&lt;/span&gt;
&lt;span style=&quot;color: #77009E&quot;&gt;&lt;strong&gt;My response:&lt;/strong&gt;&lt;br/&gt;
I&apos;d check out Alfresco&apos;s new 2.0 WCM - just released last week.  I haven&apos;t looked at many of the CMSes in a year or so, but I&apos;m willing
to bet that OpenCMS still has issues installing.  I still like Drupal too and recommend it for folks just wanting a website they can edit.
&lt;br/&gt;&lt;br/&gt;
In reality, my experience with CMS systems is outdated and you shouldn&apos;t consider me an authority. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;
&lt;/span&gt;
&lt;span style=&quot;color: silver; display: block; margin: 5px&quot;&gt;--------&lt;/span&gt;
&lt;span style=&quot;color: #9E7700&quot;&gt;
Thanks for the lead.  We actually eliminated Alfresco, b/c I thought they were more of a portal.
&lt;br/&gt;&lt;br/&gt;
The reason we were leaning towards Magnolia and Vertical Site was b/c of JSR 170 (which Alfesco claims to support).
&lt;br/&gt;&lt;br/&gt;
I wonder about the scalability of JCR, do have an opinion?
&lt;/span&gt;
&lt;span style=&quot;color: silver; display: block; margin: 5px&quot;&gt;--------&lt;/span&gt;
&lt;span style=&quot;color: #77009E&quot;&gt;I don&apos;t have an opinion because I don&apos;t have much experience with it. It&apos;s supposed to be the JDBC of CMSs, so I imagine it&apos;s pretty scalable.  However, it&apos;s pretty new, so I&apos;m sure there will be growing pains.  I know that &lt;a href=&quot;http://infoq.com&quot;&gt;Infoq.com&lt;/a&gt; uses Magnolia as their backend (and WebWork as their frontend), so obviously it scales well for them.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;What are your thoughts on Java-based CMS Systems? Comments from experienced developers appreciated more than vendor pitches. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/confluence_installed_for_appfuse_2</id>
        <title type="html">Confluence installed for AppFuse 2.0 Documentation</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/confluence_installed_for_appfuse_2"/>
        <published>2006-10-15T16:54:55-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Java" label="Java" />
        <content type="html">The last item on the &lt;a href=&quot;http://raibledesigns.com/wiki/AppFuseRoadmap.html&quot;&gt;AppFuse Roadmap&lt;/a&gt; for 2.0 M1 is setting up the documentation system. I&apos;m still undecided on whether Confluence or DocBook is a better system to use.  However, I am certain that using a wiki to document an open source project is the lowest barrier to entry. For more on this topic, see &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=integrating_compass_with_appfuse_and&quot;&gt;my post&lt;/a&gt; from a month ago.  In an ideal world, Confluence could be used as an authoring tool, and everything could be exported to DocBook for storing in SVN.  Even better, pages that are &quot;core&quot; to AppFuse could be automatically saved in Subversion, and built using Maven&apos;s DocBook (or Confluence) support.  Who knows, this is still new territory for me, and I feel like I&apos;m losing momentum just thinking about it.&lt;br/&gt;&lt;br/&gt;
So far, I&apos;ve installed Confluence 2.2.9 at &lt;a href=&quot;http://dev.appfuse.org&quot;&gt;http://dev.appfuse.org&lt;/a&gt;, but this will change in the coming weeks.  I plan on eventually moving it to appfuse.org and leaving the demos on the demo.appfuse.org server.  Hopefully there won&apos;t be too many 404s when we make the change.&lt;br/&gt;&lt;br/&gt;
Currently, I have &lt;a href=&quot;http://www.adaptavist.com&quot;&gt;Adaptavist&apos;s&lt;/a&gt; &lt;a href=&quot;http://www.adaptavist.com/display/ADAPTAVIST/Builder&quot;&gt;Builder&lt;/a&gt; installed for
managing/manipulating themes.  I&apos;ve done some work with the default theme, but I think we can do much better. One cool thing I did find was the &lt;a href=&quot;http://www.adaptavist.com/display/USERGUIDE/Page+Tree+Plugin&quot;&gt;Page Tree Plugin&lt;/a&gt; that allows for Ajaxified tree menus like &lt;a href=&quot;http://stripes.mc4j.org/&quot;&gt;Stripes&lt;/a&gt; has.
&lt;br/&gt;&lt;br/&gt;
Thanks to &lt;a href=&quot;http://www.atlassian.com&quot;&gt;Atlassian&lt;/a&gt; and &lt;a href=&quot;http://www.adaptavist.com&quot;&gt;Adaptavist&lt;/a&gt; for the free product licenses.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/heading_to_the_big_apple</id>
        <title type="html">Heading to the Big Apple</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/heading_to_the_big_apple"/>
        <published>2006-04-27T12:17:39-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Java" label="Java" />
        <content type="html">May is shaping up to be quite the travel month.  Next week I&apos;m heading to New York City to put on a 5-day seminar for a client.  Topics include: Web Frameworks, JSF, Ajax, Spring, Spring Web Flow, Hibernate, Caching and Performance, Deploying to Production, Comparing CMS Applications, eCommerce in Web Applications, Sharing with RSS and Atom, Acegi Security, Storing User Preferences, Source Control with Subversion and Coding Standards/Project Management. Yeah, a whole slew of stuff.  There&apos;s nothing like doing a customized seminar when the client gets to pick whatever topics they like. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;
&lt;br/&gt;&lt;br/&gt;
The only things I&apos;m a little light on are Comparing CMS Applications, eCommerce and Storing User Preferences.  For Comparing CMS Applications, I&apos;m going to talk about Alfresco, Drupal, Joomla, Magnolia, OpenCMS and Plone.  I&apos;ll be talking about ease of installation, ease of use, community and support, extensibility and performance.  One thing I plan to do is zing CMS providers about eating their own dogood.  As far as I can tell, neither &lt;a href=&quot;http://alfresco.com&quot;&gt;Alfresco&lt;/a&gt; nor &lt;a href=&quot;http://magnolia.info&quot;&gt;Magnolia&lt;/a&gt; use their own CMS for their websites. Of course, they might not be developing a &quot;CMS for the web&quot;, but that&apos;s what most folks tend to use CMS&apos;s for IMO. It should be interesting to see if the Java solutions have decreased their installation times. Drupal, Joomla and Plone all took under a minute to install (on OS X) the last time I tried. If you happen to work on one of these applications and want to point out a kick-ass site developed with your software, please leave a comment.
&lt;br/&gt;&lt;br/&gt;
As far as eCommerce solutions, most of the applications I&apos;ve worked on recently just hook in with PayPal.  This seems like the best solution because you eliminate the headache of credit card processing and in-house security/fraud preventation. If you&apos;ve recently developed an e-commerce enabled application, what solution did you use?  Did it work well for you?  I&apos;m also interested in solutions that were utter failures or a pain in the ass to use.&lt;br/&gt;&lt;br/&gt;
Lastly, as far as storing user preferences - I can only think of 3 ways to do it: cookies, database tables, and using the Java Preferences API.  I&apos;m sure I&apos;m missing something.  What solutions have worked well for you?
&lt;br/&gt;&lt;br/&gt;After returning from NYC, I&apos;ll be in Denver for 5 days before flying out to San Francisco for The Ajax Experience and JavaOne.  In the midst of all the travel, I hope to finish up the CSS Design Contest, release Equinox 1.7/AppFuse 1.9.2 and do some performance tests with the T2000.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/css_framework_design_contest_update</id>
        <title type="html">CSS Framework Design Contest Update</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/css_framework_design_contest_update"/>
        <published>2006-04-19T17:04:44-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/The Web" label="The Web" />
        <content type="html">Entries for the &lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=css_framework_design_contest&quot;&gt;CSS Framework Design Contest&lt;/a&gt; are continuing to roll in.  However, I don&apos;t know if the contest will finish at the end of this month.  We&apos;ve only received 5 submissions so far (1 being my own) and I&apos;d like to get at least 10 good ones for folks to choose from.  
&lt;br/&gt;&lt;br/&gt;
My &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=css_appfuse_org&quot;&gt;first attempt&lt;/a&gt; to show off the entries didn&apos;t do any justice to the submitted themes, so I&apos;ve created a new showcase application.  The new CSS Framework Themes application is available at &lt;a href=&quot;http://css.appfuse.org/themes&quot;&gt;http://css.appfuse.org/themes&lt;/a&gt;. It allows you to view the current submissions in the raw form that they were submitted. I&apos;ve come to realize that a good design is tought to make flexible (where you can use all 6 layouts), so it&apos;s probably best to just have a single layout for each.  Then again, &lt;a href=&quot;http://css.appfuse.org/themes/juisefuse&quot;&gt;juisefuse&lt;/a&gt; allows you to use all the layouts, so I guess it&apos;s up to each designer.&lt;br/&gt;&lt;br/&gt;
When I first started this contest, I envisioned people using the CSS Framework as a base, and overriding classes and styles in their own stylesheets.  However, most of the entries contain modifications to the core CSS files - so it&apos;s probably best to allow free-form modifications of the CSS.  Last night, I created my &lt;a href=&quot;http://css.appfuse.org/themes/andreas01/&quot;&gt;own entry&lt;/a&gt; based on &lt;a href=&quot;http://andreasviklund.com/&quot;&gt;Andreas Viklund&apos;s&lt;/a&gt; &lt;a href=&quot;http://www.oswd.org/design/preview/id/2199&quot;&gt;andreas01&lt;/a&gt; theme. I did this to see what pain points there are in creating these themes.  Although the experience wasn&apos;t too bad, I did find myself having to make one exception and break the &quot;don&apos;t modify the HTML&quot; rule. I had to move the top image out of the header div in order to get things positioned correctly. Oh well. I hope to convert some more of Andreas&apos;s themes this week. I also hope to incorporate some of the CSS from &lt;a href=&quot;http://wufoo.com&quot;&gt;Wufoo&apos;s&lt;/a&gt; forms into these designs. After that, I&apos;ll start trying to figure out how these can fit into AppFuse and maintain their look and feel.
&lt;br/&gt;&lt;br/&gt;
What&apos;s my pipe dream for css.appfuse.org?  I&apos;d like to make it possible for users to download and use these themes quickly and easily.  Furthermore, it&apos;d be pretty cool to develop an XSLT transformer that converts the main HTML page from each theme into decorators for AppFuse, Drupal and Roller.  I don&apos;t know if this will be possible, but it certainly sounds cool.  &lt;br/&gt;&lt;br/&gt;
&lt;strong&gt;Update:&lt;/strong&gt; I added a new &lt;a href=&quot;http://css.appfuse.org/themes/deliciouslyblue/&quot;&gt;Deliciously Blue&lt;/a&gt; theme, which includes a &lt;a href=&quot;http://css.appfuse.org/themes/deliciouslyblue/form.html&quot;&gt;form example&lt;/a&gt; based on CSS from Wufoo.com.&lt;br/&gt;&lt;br/&gt;
&lt;strong&gt;Update 2:&lt;/strong&gt; I&apos;ve converted three more of Andreas&apos;s themes: &lt;a href=&quot;http://css.appfuse.org/themes/andreas03/&quot;&gt;andreas03&lt;/a&gt;, &lt;a href=&quot;http://css.appfuse.org/themes/andreas08&quot;&gt;andreas08&lt;/a&gt; and &lt;a href=&quot;http://css.appfuse.org/themes/andreas09&quot;&gt;andreas09&lt;/a&gt;. They&apos;re not pixel perfect, but they&apos;re pretty darn close. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt; All of the themes in this contest (including the &quot;showcase&quot; application itself) are available in Subversion from the &lt;a href=&quot;http://appfuse-css.dev.java.net&quot;&gt;AppFuse CSS Project&lt;/a&gt; on java.net.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/cms_evaluation_summary</id>
        <title type="html">CMS Evaluation Summary</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/cms_evaluation_summary"/>
        <published>2006-01-30T13:30:42-07:00</published>
        <updated>2012-11-11T02:00:40-07:00</updated> 
        <category term="/Java" label="Java" />
        <content type="html">I got an &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=spring_workshops_from_virtuas#comment7&quot;&gt;interesting comment&lt;/a&gt; on one of my blog posts recently.&lt;/p&gt;
&lt;blockquote class=&quot;quote&quot;&gt;Matt, I&apos;d be curious to hear why Virtuas is using Drupal and not the same Java stack they advertise on their home page (i.e. one or more of Geronimo/Tomcat/Spring/Hibernate/MyFaces/JBoss). I realize the standard answer is &quot;because Java is for heavyweight sites and PHP is the right tool for the job&quot; but I&apos;m wondering if there was more to the decision that just that.&lt;/blockquote&gt;
&lt;p&gt;My Reply:&lt;/p&gt;
&lt;blockquote class=&quot;quote&quot;&gt;
&lt;p&gt;The reason we chose Drupal was from an evaluation that I did - where I compared a number of open source CMS solutions:&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=building_a_website_with_an&quot; rel=&quot;nofollow&quot;&gt;Building a website with an Open Source CMS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=open_source_cms_evaluation_part&quot; rel=&quot;nofollow&quot;&gt;Open Source CMS Evaluation - Part I: Installation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=open_source_cms_evaluation_part1&quot; rel=&quot;nofollow&quot;&gt;Open Source CMS Evaluation - Part II: Customization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=open_source_cms_evalation_part&quot; rel=&quot;nofollow&quot;&gt;Open Source CMS Evaluation - Part III: Implementation&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Drupal was simply the best tool for the job when we were looking for a solution.&lt;/blockquote&gt;
&lt;p&gt;</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/spring_workshops_from_virtuas</id>
        <title type="html">Spring Workshops from Virtuas</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/spring_workshops_from_virtuas"/>
        <published>2006-01-24T17:06:14-07:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Java" label="Java" />
        <content type="html">I&apos;m pleased to announce that my company, &lt;a href=&quot;http://virtuas.com&quot;&gt;Virtuas&lt;/a&gt;, has decided to start offering public workshops for many prominent open source projects.  These include &lt;a href=&quot;http://virtuas.com/spring/education&quot;&gt;Spring&lt;/a&gt;, &lt;a href=&quot;http://virtuas.com/geronimo/education&quot;&gt;Geronimo&lt;/a&gt;, &lt;a href=&quot;http://virtuas.com/tomcat/education&quot;&gt;Tomcat&lt;/a&gt;, &lt;a href=&quot;http://virtuas.com/hibernate/education&quot;&gt;Hibernate&lt;/a&gt; and &lt;a href=&quot;http://virtuas.com/myfaces/education&quot;&gt;JSF/MyFaces&lt;/a&gt;. 
&lt;br /&gt;&lt;br /&gt;
I&apos;ll be teaching the first Spring course in Denver February 21st - 24th, followed by one in Boston in mid-March.  It should be a fun class, especially since I&apos;m adding a bunch of stuff regarding Spring 2.0. Since I know you&apos;re going to ask the price -- and it&apos;s not posted on virtuas.com -- it&apos;s $2,495 per person for 1-4 people from the same
company/group/etc., $1,995 per person for five or more people. &lt;br /&gt;&lt;br /&gt;
In other Virtuas news, we&apos;ve recently signed partnership agreements with &lt;a href=&quot;http://virtuas.com/PR011106.html&quot;&gt;IBM&lt;/a&gt; and &lt;a href=&quot;http://www.marketwire.com/mw/release_html_b1?release_id=107141&quot;&gt;Covalent&lt;/a&gt;. We also re-worked our site with &lt;a href=&quot;http://andreasviklund.com/blog/webdesign/virtuas-launches-new-site/&quot;&gt;Andreas Viklund&apos;s &quot;andreas08&quot; theme&lt;/a&gt; from &lt;a href=&quot;http://www.oswd.org/design/preview/id/2427&quot;&gt;Open Source Web Design&lt;/a&gt;.  Thanks to the power of &lt;a href=&quot;http://drupal.org&quot;&gt;Drupal&lt;/a&gt;, all we had to do to change the whole site was modify one PHP template and one CSS file. Thanks to both Andreas and Drupal for vastly simplifying our new look-n-feel.&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Update:&lt;/strong&gt; It looks like Andreas&apos;s theme has been made into a &lt;a href=&quot;http://andreasviklund.com/blog/webdesign/andreas08-for-drupal/&quot;&gt;Drupal theme&lt;/a&gt;. Nice.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/the_last_day2</id>
        <title type="html">The Last Day</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/the_last_day2"/>
        <published>2006-01-04T16:54:54-07:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/General" label="General" />
        <content type="html">Today is my last day working for &lt;a href=&quot;http://starz.com&quot;&gt;Starz&lt;/a&gt; on their &lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=vongo&quot;&gt;Vongo&lt;/a&gt; project.  While it&apos;s been a fun project, it&apos;s been painful commuting to South Denver everyday.  I&apos;m pretty pumped to start riding my bike &lt;a href=&quot;http://virtuas.com&quot;&gt;downtown&lt;/a&gt; again. I rode downtown on Monday to help Max with some Drupal stuff and quickly realized the best part of Virtuas is riding my bike to work. Of course, there&apos;s many other good things about it, but that&apos;s #1 on my list. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;
&lt;br /&gt;&lt;br /&gt;
Now is probably a good time to reminisce on other last days: in &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=the_last_day1&quot;&gt;2004&lt;/a&gt; and &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=the_last_day&quot;&gt;2003&lt;/a&gt;.  I like working for Virtuas - where the last day at a client doesn&apos;t mean I have to find a new gig right away.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/drupal_s_blogging_engine_vs</id>
        <title type="html">Drupal&apos;s Blogging Engine vs. Roller</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/drupal_s_blogging_engine_vs"/>
        <published>2005-10-01T12:52:11-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Roller" label="Roller" />
        <content type="html">Now that we&apos;re basing the next Virtuas&apos; website on &lt;a href=&quot;http://drupal.org&quot;&gt;Drupal&lt;/a&gt;, we have to make a decision about which blogging engine to use.  Is anyone out there using Drupal for blogging?  Does it support multi-author blogs?  I&apos;d much rather use &lt;a href=&quot;http://rollerweblogger.org&quot;&gt;Roller&lt;/a&gt; for our blogging engine.  However, if we have two different engines powering our website - there won&apos;t be a way to search both sites.  We can make http://virtuas.com/blog look just like http://virtuas.com, but if searching one doesn&apos;t grab results from the other - it seems like it might not be worth it.  Anyone know of a way to integrate Drupal&apos;s search index with Roller&apos;s?</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/how_do_we_get_good</id>
        <title type="html">How do we get good designs for the CSS Framework?</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/how_do_we_get_good"/>
        <published>2005-09-29T05:47:37-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/The Web" label="The Web" />
        <content type="html">I love the idea of Mike Stenhouse&apos;s &lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=a_css_framework&quot;&gt;CSS Framework&lt;/a&gt;.  It&apos;s so simple: name the elements in your XHTML with a specific set of names, and then create your CSS to match that.  The only problem with this &lt;em&gt;framework&lt;/em&gt; is I haven&apos;t seen any good-looking designs on top of it.  For good-looking design examples, see the &lt;a href=&quot;http://csszengarden.com/?cssfile=/104/104.css&amp;page=0&quot;&gt;CSS Zen Garden&lt;/a&gt; or &lt;a href=&quot;http://www.oswd.org&quot;&gt;Open Source Web Design&lt;/a&gt;.  
&lt;br /&gt;&lt;br /&gt;
While the CSS Zen Garden is nice, most of the designs are not useable for web applications.  They&apos;re more of a showcase of what CSS can do, and often contain too many images for a real-world application or website.  The designs from oswd.org, on the other hand, are perfect for web applications.  However, the underlying HTML is different for each design.    
&lt;br /&gt;&lt;br /&gt;
So how do we marry the two? Maybe we should lobby some designers at oswd.org to use the CSS Framework for their designs? I think this would be a great asset to many communities - imagine what you could do with your Drupal theme if you didn&apos;t have to change your template files (only CSS).  That&apos;d be pretty cool.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/open_source_cms_evalation_part</id>
        <title type="html">Open Source CMS Evaluation - Part III: Implementation</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/open_source_cms_evalation_part"/>
        <published>2005-09-28T12:50:16-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Open Source" label="Open Source" />
        <content type="html">In my &lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=open_source_cms_evaluation_part1&quot;&gt;last post&lt;/a&gt;, I narrowed my open source CMS candidates down to Joomla and Drupal.  I was hoping to have a choice made by Monday morning, implement the design in the morning, and populate the content in the afternoon.  Two days later and I&apos;m now where I was hoping to be on Monday morning. I&apos;ve spent the last two days implementing both Joomla and Drupal.  Monday, I spent most of the day with 
Joomla.  While it was easy to apply my own theme, I became very discouraged when I discovered I didn&apos;t have &lt;em&gt;full&lt;/em&gt; control over the HTML markup produced. All of the content I produced was wrapped with a &amp;lt;table&amp;gt; - and from what I could tell, it was impossible for me to change that w/o hacking Joomla&apos;s code.  
&lt;br /&gt;&lt;br /&gt;
Based on that discovery, as well as the overwhelming number of pro-Drupal comments I received, I moved on to implementing Drupal.  Monday night and yesterday were spent with Drupal.  It&apos;s been extremely frustrating, but mostly because of all the CSS I had to write.  The major problem with Drupal is the admin interface uses the same template as the reader interface.  I did find a nice way to use an existing theme for the admin, and our own for the reader - but decided not to use it because it would give content authors the wrong impression of what their stuff looks like.
&lt;br /&gt;&lt;br /&gt;
The majority of the time I&apos;ve spent with Drupal has been modifying templates and installing modules.  For the most part, Drupal doesn&apos;t come with everything you might need.  I found the &lt;a href=&quot;http://www.civicspacelabs.org/&quot;&gt;CivicSpace&lt;/a&gt; download to be much more complete with modules I needed.  In addition, it has an installer which makes things a bit easier to setup for a web designer.  I&apos;m currently using the Article module, which works quite well, but I wish I could create multiple blocks for different categories (taxomies).  Instead, I had to hack up my own block using some SQL to select all the &quot;news&quot; content types (for a &lt;em&gt;Recent News&lt;/em&gt; block).
&lt;br /&gt;&lt;br /&gt;
My biggest problem with Drupal continues to be my lack of knowledge.  Luckily, there&apos;s a plethora of information out there and a lot of people are using it.  I&apos;ve been able to use the Drupal Forums as well as Google to solve most of my issues.  Now the hard part comes - I need to show it to the designer/marketing folks and teach them how to use it.
&lt;br /&gt;&lt;br /&gt;
The &lt;a href=&quot;http://support.bryght.com/adminguide/how-to/dynamic-web20-brochure-site-in-an-hour&quot;&gt;brochure site in an hour tutorial&lt;/a&gt; was extremely helpful for me to get started with an About page, Contact Us page, and Press Releases. However, it says to use &quot;books&quot; to create pages, and I&apos;ve seen others recommend &quot;page&quot; and &quot;story&quot;.  So which is the best one to use?  Should I advocate using &quot;page&quot; for regular site pages, and then &quot;story&quot; for our articles and whitepapers?  Or should we use &quot;book page&quot; for the main pages.  I&apos;d like to limit the number of choices if possible.
&lt;br /&gt;&lt;br /&gt;
I think the major problem with using Drupal is going to be tweaking our template. Every time I see a new custom theme (like &lt;a href=&quot;http://www.codemonkeyx.net/&quot;&gt;this one&lt;/a&gt;) I want to steal stuff.  Right now, I&apos;m using a design from &lt;a href=&quot;http://oswd.org&quot;&gt;oswd.org&lt;/a&gt; and much of the CSS from the &lt;a href=&quot;http://spreadfirefox.com&quot;&gt;spreadfirefox&lt;/a&gt; theme.
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Conclusion:&lt;/strong&gt; No CMS is perfect.  You&apos;ll have to hack it on one way or another to make it fit your needs.  Drupal seems to be used by many web designers w/ little to no programming skills.  Most folks love it and I&apos;ve received many, many positive comments about it.  I&apos;ve received hardly any positive comments about Joomla.  Zope and Plone also seemed to inspire hatred among some users.&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Lesson Learned:&lt;/strong&gt; Listen to your readers.  Other users&apos; experience is one of the most valuable indicators of a good open source project.
</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/open_source_cms_evaluation_part1</id>
        <title type="html">Open Source CMS Evaluation - Part II: Customization</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/open_source_cms_evaluation_part1"/>
        <published>2005-09-26T01:32:58-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Open Source" label="Open Source" />
        <content type="html">This is the third and final post in my quest to find the best open source
    CMS for my needs. Previous posts include &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=building_a_website_with_an&quot;&gt;Building
    a website with an Open Source CMS&lt;/a&gt; and &lt;a href=&quot;http://raibledesigns.com/page/rd?entry=open_source_cms_evaluation_part&quot;&gt;Open
    Source CMS Evaluation - Part I: Installation&lt;/a&gt;. Based on these two posts,
    reader feedback, and my installation experience, the final round of candidates
    include &lt;a href=&quot;http://joomla.org/&quot;&gt;Joomla&lt;/a&gt;, &lt;a href=&quot;http://drupal.org/&quot;&gt;Drupal&lt;/a&gt;, &lt;a href=&quot;http://www.magnolia.info/en/magnolia.html&quot;&gt;Magnolia&lt;/a&gt;,
    &lt;a href=&quot;http://www.opencms.org/opencms/en/&quot;&gt;OpenCms&lt;/a&gt; and &lt;a href=&quot;http://www.cromoteca.com/meshcms/&quot;&gt;MeshCMS&lt;/a&gt;.
    These are listed in the order that I expected the final rankings to be -
    just to let you know what my feelings were going into this final process. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;&lt;/p&gt;
&lt;p&gt;The CMS I choose will be used  to build &lt;a href=&quot;http://virtuas.com&quot;&gt;Virtuas&apos;s
        website&lt;/a&gt;,
        as well as customers of Virtuas. By using a
        CMS to produce websites, the design is separated from the content - and
    the &amp;quot;adding content&amp;quot; process can be much easier for the customer. This
    greatly simplifies the &amp;quot;creating a website&amp;quot; process for us, and
    will likely save our customers a fair amount of design costs. In
    addition, it makes it much easier for site owner&apos;s to maintain the site after
    it&apos;s been published. &lt;/p&gt;
&lt;p&gt;As for &lt;a href=&quot;http://www.virtuas.com&quot;&gt;Virtuas&apos;s site&lt;/a&gt;, it&apos;s static right
    now, and we&apos;d like to change that. We want to ability to show recent blog
    posts on the front page, as well as make it easy for Practice Leaders to
    publish articles. In addition, it should be easy for our designers to change
    the design (1-2 files) and for our marketing team to add press releases and update existing content.
    Tomorrow, I&apos;ll be presenting my choice to the rest of the team, and we hope
    to design and start publishing content this week. Our goal is to have a new
    Virtuas site up and running one week from today.&lt;/p&gt;
&lt;p&gt;My goal today was to see how easy each CMS was to customize. In addition,
    I wanted to see how easy it was to publish an article,
    as well as to aggregate our latest RSS feed titles onto the homepage. To
    test the design customizability, I tried to reproduce the current &lt;a href=&quot;http://virtuas.com/&quot;&gt;Virtuas
    homepage&lt;/a&gt;. Then I published &lt;a href=&quot;http://virtuas.com/jgenender.html&quot;&gt;Jeff&apos;s
    Geronimo Article&lt;/a&gt;, and attempted to aggregate feeds from &lt;a href=&quot;http://winslow.linuxworld.com/&quot;&gt;Maria&apos;s&lt;/a&gt; and &lt;a href=&quot;http://jroller.com/page/bsnyder&quot;&gt;Bruce&apos;s&lt;/a&gt;    blogs.
    My main reason for
    putting the Java CMS&apos;es lower than the PHP ones in my suspected order of
    finishing is because I don&apos;t they don&apos;t have the RSS Aggregation
    feature.&lt;/p&gt;
&lt;p&gt;Rather than just jumping in and using each CMS in anger, I tried to start off by
    reading the documentation for each. My main focus was on how to customize,
    but I also looked for an RSS Aggregation feature and ease-of-publishing for
    articles. I read documentation for 15-20 minutes, then dived into creating
    a custom theme and adding content. I installed each CMS
    on my PowerBook, and used Safari and Firefox on OS X, as well as Firefox on Windows XP in some cases.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MeshCMS &lt;/strong&gt; - I spent 40 minutes looking into MeshCMS before
    I knew it wasn&apos;t the one. The main problem I had with it was the &lt;a href=&quot;http://www.cromoteca.com/meshcms/help/installation/upgrade.html&quot;&gt;upgrade
    process&lt;/a&gt;. To upgrade to a new version, they recommend that you use symlinks
    to your files and store them in a separate location on the file system. While
    this may work for some, it seems a little brittle to me. I&apos;d rather use a
    solution that keeps everything stored &lt;em&gt;outside&lt;/em&gt; of the application
    by default. Creating a new theme was quite easy - but there didn&apos;t seem to
    be any support for multiple menus (i.e. global and local navigation), nor
    was there any means to customize the menu template.&lt;/p&gt;
&lt;p&gt;I did manage to blow up the whole application at one point, simply because
    I was missing a JSP tag in my template. Since I had this template selected
    for the administration as well - it hosed the whole application and spit out
    stack traces for each page. Luckily, renaming the template directory caused
    MeshCMS change to revert to the default settings and everything was fixed. The interesting
    thing about MeshCMS is it looks very similar to the SiteMesh+JSPWiki CMS
    I wrote a few weeks ago. However, mine allowed full menu creation by editing/creating
    wiki pages. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OpenCms&lt;/strong&gt; - When I installed OpenCms a couple of days ago,
    I initially did it on Windows. Everything worked fine and after waiting 18
    minutes for everything to import, I was able to browse and edit the default
    site. However, today was a different story. The version I installed on my
    Windows XP box no longer works. When I got to http://localhost:8080/opencms/,
    I get a directory listing with &amp;quot;resources&amp;quot; and &amp;quot;setup&amp;quot; on it. The same day
    I installed OpenCms on Windows, I installed it on my PowerBook. It took 38
    minutes to complete, but nevertheless, it said the process worked. Today
    I re-ran the setup and now I have the same result as on my Windows XP box.
    If the setup and installation is this fragile, I&apos;m not interested. Blame
    me and the fact that I&apos;m a redneck all you like, but the Magnolia installation is still functioning just
    fine. &lt;img src=&quot;https://raibledesigns.com/images/smileys/wink.gif&quot; class=&quot;smiley&quot; alt=&quot;;-)&quot; title=&quot;;-)&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Magnolia&lt;/strong&gt; - I spent about a half hour with Magnolia before
    I knew it wasn&apos;t for me. While the admin UI is impressive with all it&apos;s Ajax
    goodies, creating a new template is cumbersome and not designer-friendly
    at all. You have to create a &amp;quot;new node&amp;quot; and then a bunch of &amp;quot;data
    nodes&amp;quot;
    under that. The documentation (a QuickStart PDF) is 17 pages long and forgets
    to mention the &amp;quot;title&amp;quot; data node is needed before the template
    will show up properly as an option. Once you&apos;ve created a new template in the admin UI, you
    have to create the template on your file system - inside the web application.
    This may make it difficult to upgrade if you&apos;re deploying Magnolia as a WAR.
    The worst part is after creating the template, you have to &lt;em&gt;restart the
    server&lt;/em&gt;.
    WTF? That seems a bit ridiculous to me. Granted you&apos;ll likely be designing
    your master template in a development environment - but good luck installing
    Magnolia for a client and having them create a new template.&lt;/p&gt;
&lt;p&gt;One of the most interesting things about Magnolia is most of the folks who&apos;ve
    recommended it have highlighted that it&apos;s &amp;quot;built on the revolutionary Java
    Content Repository Standard JSR-170&amp;quot;. While I can admire the technical merits
    of this effort, it doesn&apos;t necessarily make this a good product. A good product,
    IMHO, is easy and intuitive to use. The admin interface for Magnolia is not
    intuitive. I like the fact that I can right-click on a page/node/etc., but
    on my Mac (with Firefox and Safari), the &lt;em&gt;real&lt;/em&gt; context menu shows
    up on top of the application menu after a second or two. I&apos;m going to pass on Magnolia
    due to the fact that its not designer friendly,
    as well as the fact that templates can&apos;t be edited in the browser. It looks
    like something that might be very interesting for developers, but it&apos;s simply
    not friendly for HTML developers. &lt;/p&gt;
&lt;blockquote&gt;
    &lt;p&gt;&lt;em&gt;At this point, it&apos;s 10:30 p.m. on Sunday night. I need to make a decision
            before I go to bed tonight and I&apos;m scheduled to meet with our designer
            at 7:00 a.m. to start implementing his new design. I haven&apos;t started
            the PHP options, and I&apos;ve had a couple new ones recommended on
            my blog while doing this evaluation today. Mal recommended &lt;a href=&quot;http://www.exponentcms.org/index.php?section=1&quot;&gt;Exponent&lt;/a&gt; and
            Jacob recommended &lt;a href=&quot;http://matrix.squiz.net/&quot;&gt;MySource Matrix&lt;/a&gt;.
            &lt;/em&gt;&lt;/p&gt;
    &lt;p&gt;&lt;em&gt;Because I&apos;m down to two choices (and I haven&apos;t tried to customize
            either one), I decided it was worth looking at both
            of these PHP solutions. Exponent installed easy enough, but MySource
            Matrix failed miserably. Joomla, Drupal and Exponent all had an easy-to-use
            web installer that *just worked*. MySource spit out a bunch of permissions
            errors (even after chmod -R 777 *) and told me I had to run .php
            files from the command line. Since the other options all installed
            easily, I decided not to continue evaluating MySource Matrix.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Exponent&lt;/strong&gt; - I didn&apos;t spend very long looking at Exponent. At
    first, I didn&apos;t think it had any documentation b/c it was a bit difficult
    to find on &lt;a href=&quot;http://www.exponentcms.org/index.php?section=3&quot;&gt;their
    site&lt;/a&gt;. Maybe it&apos;s because they don&apos;t have a background
    set on their site and my browser defaults to gray - making the gray text
    difficult to read. Even w/o documentation, I was able to navigate around
    the default Exponent site and figure out how to edit content. It&apos;s
    an easy UI to use, but again I was disappointed to find the &amp;quot;corporate&amp;quot; theme
    doesn&apos;t have a white background. Most good web designers know to set a default
    background color - and it always annoys me when someone misses this step. It&apos;s
    possible they don&apos;t set the background on purpose - like &lt;a href=&quot;http://yahoo.com&quot;&gt;Yahoo&lt;/a&gt; does.&lt;/p&gt;
&lt;p&gt;The deal-breaker with this CMS was that
    I couldn&apos;t edit any files w/in my browser to change anything (all I wanted
    was a white background). While it&apos;s theme management and templating
    looks powerful - it&apos;s another file-based system where you have to configure
    everything and then upload it. I agree that this is likely the path that
    web designers will want to use to get started - but I think it&apos;s important
    that files can be tweaked on-the-fly. Using a good FTP tool is certainly
    an option, but I&apos;d prefer theme-editing to be part of my CMS. The one thing
    I did like about this CMS was the clean URLs. Granted, they aren&apos;t
    static-looking by any means, but having a simple &lt;em&gt;?section=#&lt;/em&gt; seems
    cleaner than the multiple parameters that other systems use. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Drupal &lt;/strong&gt;- This CMS seems to have a lot of things I want/need
    as first class citizens. A blog, news feed aggregation and the ability
    to provide pretty URLs (aliases) for more cryptic CMS-type URLs. I couldn&apos;t
    get the URL aliases to work, but I suspect I was doing something wrong and
    didn&apos;t give it enough attention. I didn&apos;t spend a whole lot of time with
    this CMS, but rather just browsed around the admin interface and read a bit
    about how to create themes. I
    installed the &lt;a href=&quot;http://drupal.org/project/phptemplate&quot;&gt;PHPTemplate&lt;/a&gt; engine,
    but never installed any themes. When I found out I couldn&apos;t edit any
    of the uploaded templates contents, I started to get discouraged by Drupal. One
    thing I found disappointing, with both Drupal and Joomla, is they seemed
    to hard-code my server name into many of their URLs. When I installed
    these applications on my PowerBook, I used &amp;quot;localhost&amp;quot; for the server name. When testing out things from my Windows box, I couldn&apos;t
   even login to Drupal b/c it kept redirecting me to &amp;quot;localhost&amp;quot;. Joomla
   had a similar problem with localhost, except that it only screwed up stylesheet
   paths. I was still able to administer the application. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Joomla&lt;/strong&gt; - My time with Drupal was short-lived, mainly because
    I was itching to start playing with Joomla - which I&apos;ve heard a lot of good
    things about in the past week. Furthermore, it&apos;s got a &lt;em&gt;really &lt;/em&gt;good-looking  administration
    UI. It&apos;s the type of UI that a designer would look at and appreciate. When
    trying to edit pages from my Windows box - everything worked, but I couldn&apos;t
    save the page. No JavaScript errors or anything, there was simply no
    reaction. Editing pages and content from my PowerBook solved the problem. I
    was able to easily create a simple theme that looked like &lt;a href=&quot;http://virtuas.com&quot;&gt;virtuas.com&lt;/a&gt; and
    upload it. The theme isn&apos;t perfect, but it was easy enough to create using
    the Velvet theme from &lt;a href=&quot;http://joomlashack.com/&quot;&gt;Joomlashack.com&lt;/a&gt; as
    a template. The weird thing about Joomla, at least with the default install,
    is there&apos;s no notion of &lt;em&gt;pages&lt;/em&gt;. Everything is some sort of
    news item. In the pages I created, I was also unable to remove all the authoring
    notation and other junk that I don&apos;t want to show. The admin UI had
    options to remove the stuff, but even after &amp;quot;applying&amp;quot; the changes, they
    still showed up in the reader view.&lt;/p&gt;
&lt;p&gt;It&apos;s now 1:30 a.m. on Monday morning and the last three CMS&apos;s definitely didn&apos;t
    get the attention they deserved. Nevertheless, I think they&apos;re the
    best of the bunch. Not only were they much easier (and quicker) to
    install than the Java options, but their UIs are also good-looking and easy
    to use. Drupal
    and Joomla both seem like excellent choices. Drupal
    seems to be more of what I&apos;m looking for since it has all the features I
    want, and allows aliasing of URLs to make it appear like a static site. However,
    Joomla is a lot more eye-catching and that alone makes me want to use it. Neither
    of these CMS&apos;es seem to have a full-featured blogging engine, at least not
    one that&apos;s as good as &lt;a href=&quot;http://rollerweblogger.org&quot;&gt;Roller&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conclusion: &lt;/strong&gt;I&apos;m going to recommend we use &lt;strong&gt;Joomla&lt;/strong&gt;,
    and look into doing some URL Rewriting to pretty up it&apos;s URLs. I doubt
    there&apos;s a whole lot we can do, but I&apos;d like to figure out a way to make them
    a bit more search engine friendly. Drupal seems like an excellent choice
    as well, but the fact that I can&apos;t edit templates from the UI kinda sucks. 
&lt;br /&gt;&lt;br /&gt;
Thanks
    for listening y&apos;all - all your comments and feedback during this evaluation have
    been great.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/open_source_cms_evaluation_part</id>
        <title type="html">Open Source CMS Evaluation - Part I: Installation</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/open_source_cms_evaluation_part"/>
        <published>2005-09-23T17:39:04-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Open Source" label="Open Source" />
        <content type="html">Today I began my journey in evaluating Open Source CMS applications.  The motivation for this adventure can be found in my post titled &quot;&lt;a href=&quot;http://raibledesigns.com/page/rd?anchor=building_a_website_with_an&quot;&gt;Building a website with an Open Source CMS&lt;/a&gt;&quot;.  Basically, I&apos;d like to find a good solution to build small-to-medium size websites.  I want full-control over the design and features, and it shouldn&apos;t be too hard to configure, install or administer.  I received many suggestions on my initial post, and thanks to these comments, I&apos;m considering the following CMS solutions:
&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.alfresco.org/&quot;&gt;Alfresco&lt;/a&gt; (Java)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://cocoondev.org/daisy/&quot;&gt;Daisy&lt;/a&gt; (Java)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.magnolia.info/en/magnolia.html&quot;&gt;Magnolia&lt;/a&gt; (Java)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://bricolage.cc&quot;&gt;Bricolage&lt;/a&gt; (Perl)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.cromoteca.com/meshcms/&quot;&gt;MeshCMS&lt;/a&gt; (Java)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://atleap.dev.java.net/&quot;&gt;AtLeap&lt;/a&gt; (Java)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://joomla.org/&quot;&gt;Mambo/Joomla&lt;/a&gt; (PHP)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://drupal.org/&quot;&gt;Drupal&lt;/a&gt; (PHP)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The reason &lt;a href=&quot;http://www.opencms.org/opencms/en/&quot;&gt;OpenCms&lt;/a&gt; didn&apos;t make this list is because of Tim Howland&apos;s &lt;a href=&quot;http://www.watchdogsystems.com/opencms/opencms/demos/index.jsp&quot;&gt;first demo&lt;/a&gt; (he left the link in a comment).  As soon as he dropped into a shell, I gave up.  I also tried OpenCMS a couple of years ago and couldn&apos;t get it to work.  I still have a bad taste in my mouth from that experience.
&lt;br /&gt;&lt;br /&gt;Of this list, I was able to eliminate 3 options quite quickly: Bricolage, MeshCMS and AtLeap.  Bricolage b/c their site was down for &lt;em&gt;days&lt;/em&gt; when I first started looking at CMSs.  In addition, it&apos;s written in Perl - of which I&apos;ve never written a single line - and I don&apos;t feel like I&apos;d be well suited to customize a Perl product.  As for MeshCMS and AtLeap, both of these were eliminated b/c of the lack of mailing list traffic. This represents a small community IMO and I&apos;d hate to start using a product that&apos;s not well supported or well documented.  This is unfortunate b/c I could probably customize these products easier than the rest.  Nevertheless, it&apos;s my &lt;em&gt;customers&lt;/em&gt; that are important, not me.
&lt;br /&gt;&lt;br /&gt;
This leaves me with three Java solutions (Alfresco, Daisy, Magnolia) and two PHP solutions (Joomla, Drupal).  I&apos;m not too keen on including Alfresco b/c I&apos;ve never heard of it, but readers of my last post recommended it, as well as my colleague &lt;a href=&quot;http://bill.dudney.net/roller/page/bill/Weblog&quot;&gt;Bill Dudney&lt;/a&gt; (another friend who forgot how to blog).  At first glance, there are a couple of major differences between the Java and PHP solutions.  The Java ones definitely take the cake on download size:
&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;Daisy 1.3.1: 59 MB&lt;/li&gt;
&lt;li&gt;Magnolia 2.1: 13.4 MB&lt;/li&gt;
&lt;li&gt;Alfresco 0.6 (with Tomcat): 30.3 MB&lt;/li&gt;
&lt;li&gt;Joomla 1.0.1: 1.7 MB&lt;/li&gt;
&lt;li&gt;Drupal 4.6.3: 447 KB&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Yes, large downloads is the nature of Java applications - but it&apos;s interesting to see the wide discrepancy b/c the 3 Java options listed here.  In addition, it&apos;s a little disappointing that I can&apos;t download Alfresco standalone - why does it *&lt;a href=&quot;http://www.alfresco.org/download.html&quot;&gt;have&lt;/a&gt;* to come with Tomcat or JBoss? Looking through the Tomcat directories and files - there doesn&apos;t seem to be any Alfresco-specific settings or files.  Why can&apos;t I just download the WAR?&lt;br /&gt;&lt;br /&gt;
My goal in this session was to install these different CMSs and see which were the easiest to install - as well as which had the features I need to continue evaluated them.  What I found was that &lt;strong&gt;Daisy is out of the running&lt;/strong&gt;.  This is primarily because it&apos;s a &lt;em&gt;wiki&lt;/em&gt;, not a CMS. No wonder the JSPWiki guy was impressed with Daisy a few weeks back.  Furthermore, the &lt;a href=&quot;http://cocoondev.org/daisydocs-1_3/13.html&quot;&gt;number of things you have to do&lt;/a&gt; to get Daisy installed is &lt;em&gt;very&lt;/em&gt; long.  
&lt;br /&gt;&lt;br /&gt;
Magnolia, on the other hand, was &lt;em&gt;very&lt;/em&gt; easy to install.  Drop two WAR files into Tomcat and 10 minutes later you have a CMS.  Yeah, that&apos;s a little scary - it took &lt;em&gt;10 minutes&lt;/em&gt; (647740 ms to be exact) to startup Tomcat after installing Magnolia.  While I appreciate the easy installation, I&apos;m still interested to see what kind of data store Magnolia is using.  Is it using an embedded database or what?  I didn&apos;t have time to look, but rather played around with the admin console a bit.  I was &lt;em&gt;very&lt;/em&gt; impressed with the admin console - even though I didn&apos;t figure out how to edit the homepage.  It appears to be using Ajax everywhere. Right-clicking to edit a page even brings up an application menu (rather than a browser menu).  Magnolia is impressive at first glance and will be included in Part II of my evaluation.
&lt;br /&gt;&lt;br /&gt;
Alfresco, with a 0.6 release, was almost off my radar.  The version number makes it seem like a very immature product - and the fact that it requires JDK 5 makes it seem even more immature.  Upon startup, it spit out a number of errors - but they seem to be well documented in its &quot;README_tomcat_linux.txt&quot; file.  I used OS X and despite the errors - everything appeared to be working OK.  However, when I pulled up http://localhost:8080/alfresco, I immediately understood why Bill likes it.  It looks like it&apos;s using JSF, and I&apos;m willing to bet it&apos;s using &lt;a href=&quot;http://myfaces.apache.org&quot;&gt;MyFaces&lt;/a&gt; (he&apos;s a committer on the project). The disappointing thing I noticed after pulling up the initial page is that it&apos;s a login page.  I&apos;d expect to see a &lt;em&gt;reader view&lt;/em&gt; initially rather than an &lt;em&gt;admin view&lt;/em&gt;. After logging in, the interface seems very nice and easy to work with.  However, after 30 seconds of clicking on stuff, I can&apos;t figure out how to get the reader view to show up - so I give up.  I&apos;m going to let this CMS graduate to Part II, but only because I didn&apos;t spend much time with it - and also because the UI looks quite polished.
&lt;br /&gt;&lt;br /&gt;
I installed and played around with Daisy, Magnolia and Alfresco all in a 3-hour period today.  First of all, I&apos;d like to give props to all the authors of these OS projects as each was installable according to its instructions and I didn&apos;t have to google for a single setting.  I installed Joomla and Drupal last week - both in under 10 minutes.  Joomla was definitely more impressive - mainly because it&apos;s &lt;a href=&quot;http://demo.joomla.org/&quot;&gt;default homepage&lt;/a&gt; (note: this can change every hour) looks pretty cool. Drupal, on the other hand, is a bit more &lt;em&gt;plain jane&lt;/em&gt;.  This is not a bad thing necessarily - as it might be easier to design with a clean slate rather than remove-features, then-design.  I did have to install PHP4 on my Mac to run both of these packages, but &lt;a href=&quot;http://serverlogistics.com/downloads.php&quot;&gt;Server Logistics&lt;/a&gt; made that super easy.  I also tried to install Joomla 1.0 on my Windows box (which has Apache 4.0.7 and PHP 4.3.3 from &lt;a href=&quot;http://openlogic.com/page.php?pname=software/overview&quot;&gt;BlueGlue&lt;/a&gt;), but it failed halfway through the install with errors that my user/pass for the database were wrong. Not a big deal, but frustrating since it works fine on the Mac (and yes, the user/pass I&apos;m using are correct).
&lt;br /&gt;&lt;br /&gt; 
Watch this space.  Part II will address customizing each CMS to use an already-created theme, as well as playing around with each&apos;s features.  I&apos;d prefer a package that has built-in support for multi-author blogs - so that might make Magnolia and Alfresco look bad.  However, I&apos;m not going to hold it against them since I&apos;m a &lt;a href=&quot;http://www.rollerweblogger.org/page/project&quot;&gt;Roller&lt;/a&gt; fan and committer.  I don&apos;t mind using a 2nd application for blogging - especially if the built-in package is less than full-featured.
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Conclusion:&lt;/strong&gt; Alfresco, Magnolia, Joomla and Drupal are the easiest open source CMS applications to install (of the ones I looked at). Daisy was easy to install according to its instructions (of which there were many), but it&apos;s more of a Wiki than a CMS.
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Update on Saturday at 1:00 p.m.&lt;/strong&gt; - Based on reader&apos;s feedback to this post, I went ahead and installed three more: &lt;a href=&quot;http://plone.org/&quot;&gt;Plone&lt;/a&gt;, &lt;a href=&quot;http://ez.no&quot;&gt;eZ publish&lt;/a&gt; (gotta love the domain name) and &lt;a href=&quot;http://www.opencms.org&quot;&gt;OpenCMS&lt;/a&gt;.  All the previous CMS applications I installed on OS X, and I installed these 3 on Windows XP. I installed OpenCMS first, and while the setup was easy, it took &lt;em&gt;18 minutes&lt;/em&gt; to finish its importing of data.  My Windows machine is easily 2x as fast as my PowerBook, so my guess is this would&apos;ve been quite painful on the ol&apos; Mac.  Regardless, it&apos;s a one time wait-fee, so I can&apos;t really ding them for that.  I played around with the Admin UI for about 5 minutes and found it &lt;em&gt;extremely&lt;/em&gt; easy to use - as well as intuitive.  I dig how you can view the content and edit it very easily.  I never had to read any documentation to figure out how to work this system.&lt;br /&gt;&lt;br /&gt;
Next up was eZ publish.  It took a bit of fiddling to get the installation to work.  I had PHP 4.3.3 installed with Apache 2.0.47, and I upgraded to PHP 4.4 before trying anything.  While setting up eZ publish, it told me it didn&apos;t work with 4.4, so I backed down to 4.3.3, after which it told me I needed &lt;em&gt;at least&lt;/em&gt; 4.3.4.  Thankfully, PHP is easy to install and upgrade on Windows and I got it all working fairly quickly.  Of the three (and all the CMS&apos;s in fact), eZ publish has the nicest installer.  The whole application and process gave me the feeling that it was the product I was looking for.  It&apos;s designed to help you setup a website, and allows you to choose templates, features, etc. along the way.  At the end, it stalls for a couple minutes - probably b/c it&apos;s creating everything and populating the database.  The first thing I didn&apos;t like was the URLs (/index.php/feature). I wonder if that can be changed to be more path-based?  Having an extension followed by additional slashes just doesn&apos;t seem right to me.  From there, I logged in as an administrator and started playing around with things a bit.  The Weblog feature seems very inadequate and doesn&apos;t even seem to support RSS.  In addition, I couldn&apos;t figure out how to edit any of the templates in my browser.  But the worst part was the admin UI was &lt;em&gt;sssllloooowwww&lt;/em&gt;.  It could have been b/c I had other stuff running, but I don&apos;t think so.  eZ publish seems like a good system to recommend to friends who want quick and easy websites, but I don&apos;t think it&apos;s one for me.
&lt;br /&gt;&lt;br /&gt;
The last CMS I installed was Plone.  It was easy to install on Windows, but only b/c it has an all-in-one installer.  I found it a bit strange that it doesn&apos;t install in a web server, but rather contains everything as part of the package.  This includes Python, its own web server, and its own database (I&apos;m assuming).  It&apos;s an easy install, but I like the idea of installing a CMS into an existing web server rather than having a CMS with an embedded web server.  The admin UI is simple enough to use, but it&apos;s very boxy and seems like it would be difficult to customize into a corporate or small business website.  Please let me know if you feel this to be untrue (pointing to existing &lt;em&gt;nice-looking&lt;/em&gt; installations would help).  I didn&apos;t like the fact that it highlights &lt;em&gt;members&lt;/em&gt; quite prominently, but that can probably be fixed with some good template-tweaking.  The most disappointing thing I found was that I was unable to edit &quot;skins&quot; within the admin console.  You have to download a separate package, customize it yourself, and then install it.  What a pain, especially since I&apos;d really like to be able to 1) modify template, 2) save and 3) view - just like this site allows me to do.  For this reason, as well as the embedded server feature, I&apos;m going to have to pass on Plone as well. 
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Conclusion 2:&lt;/strong&gt; Alfresco, Magnolia, Joomla, Drupal and OpenCMS are the CMS applications I will continue to evaluate this weekend.  I have to make a decision by Monday morning so I can start building a site with it.  If any of these CMS&apos;es don&apos;t allow me to customize its templates from a browser, please let me know so I can take it off my list.
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;Update on Sunday at 9:30 a.m.&lt;/strong&gt; - I&apos;m going to drop Alfresco and add MeshCMS for &lt;a href=&quot;http://raibledesigns.com/comments/rd/sunsets/open_source_cms_evaluation_part#comment21&quot;&gt;reasons stated here&lt;/a&gt;.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/building_a_website_with_an</id>
        <title type="html">Building a website with an Open Source CMS</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/building_a_website_with_an"/>
        <published>2005-09-12T11:48:14-06:00</published>
        <updated>2007-02-10T20:07:57-07:00</updated> 
        <category term="/Open Source" label="Open Source" />
        <content type="html">I think the open source community has done an excellent job of figuring out how to create frameworks for developing web applications.  But what about &lt;em&gt;websites&lt;/em&gt;.  You know, the web presence that every company wants - for minimal cost.  For most companies, it&apos;s nothing more than 5-10 pages that tells a bit about the company, show some management folks and tells you how to get to their offices.&lt;br /&gt;&lt;br /&gt;
I&apos;ve developed many websites over the years, many that were static, but more that were dynamic. The unfortunate thing about all of them is they required someone technical to update them.  Often, the client had to contact me if they wanted anything new on the site.  I&apos;ve often thought there was a better solution - and I think I&apos;m at a point where I know what customers want, and I know how to provide it.  The solution is a Content Management Solution (CMS). One of the biggest problems with static websites is they&apos;re not dynamic enough.  A CMS can alleviate this problem by reducing the bottleneck that a traditional &quot;webmaster&quot; creates.
&lt;br /&gt;&lt;br /&gt;
In my mind, there are a couple of things that make a good CMS: 1) it&apos;s open source (to minimize costs to the client) and 2) it&apos;s easy to customize.  On the customization front, my demands are a bit more rigorous - mainly because I know what many folks want in a website.  Here are my main criteria for a good open source CMS  - when it&apos;s used to power a regular ol&apos; client-updateable website:
&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;&lt;strong&gt;Design customization:&lt;/strong&gt; I should be able to customize all the (X)HTML that&apos;s generated using one or two files (like SiteMesh allows). It should be possible to change the look and feel of *everything* by modifying some CSS.  It should also be possible to use Mike Stenhouse&apos;s &lt;a href=&quot;http://www.contentwithstyle.co.uk/Articles/17/a-css-framework&quot;&gt;CSS Framework&lt;/a&gt; to simplify layout choices for clients. Ideally, a web designer or regular ol&apos; HTML person could do the customization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Static-looking URLs:&lt;/strong&gt; The site should look like a static site.  The URLs should be all lowercase and end with .html.  It should be possible to modify all the URLs to look as if all pages are static.  Apache&apos;s mod_rewrite and the URL Rewrite Filter are great tools for making this happen, but it&apos;d be nice if the administration of the application allowed for setting these rules.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;It shouldn&apos;t look like a CMS:&lt;/strong&gt; No login links, no registration links, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ability to easily add dynamic content:&lt;/strong&gt; It should be easy to add dynamic content - such as RSS Feed headlines to pages.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Menu Customization:&lt;/strong&gt; In the application, it should be possible to create menus (both main and local navigation) and configure a page to highlight a menu when a particular page is shown.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Versioning of pages:&lt;/strong&gt; In case someone messes something up, it should be easy enough to revert back to a previous version.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Easy to use:&lt;/strong&gt; It should be possible to train a marketing person (with little technical knowledge) how to use the system in 10-15 minutes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For technical companies (such as &lt;a href=&quot;http://virtuas.com&quot;&gt;Virtuas&lt;/a&gt;), there are a few additional requirements I&apos;d like to see:&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;&lt;strong&gt;Articles with syntax highlighting:&lt;/strong&gt; It should be easy to publish articles with code that&apos;s colorized.  The &lt;a href=&quot;http://www.java2html.de/&quot;&gt;Java2HtmlPlugin for JSPWiki&lt;/a&gt; is a good example of this.  I currently don&apos;t know of any for XHTML, XML or scripting languages like Ruby or Python.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;File Upload:&lt;/strong&gt; For uploading white papers and other technical publications.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
So I&apos;ve started looking at open source CMS&apos;s that fill my requirements.  Last weekend, I wrote a solution that fills all of these requirements using SiteMesh, JSPWiki, CSS Framework, Acegi Security and the URL Rewrite Filter. It only took me about 6 hours to complete, but after completing it - I started wondering if I really wanted to start another open source project and maintain it.  The answer is no, I don&apos;t want to create something new - I want to use something that&apos;s already out there.  However, since I do have something that satisfies all my requirements, I will use it if I can&apos;t tweak an existing OS CMS enough.
&lt;br /&gt;&lt;br /&gt;
Here are a list of CMS&apos;s that I&apos;ll be looking at in the next week or so.  If you&apos;re associated with any of these projects, please leave a comment and let me know how many of my requirements you satisfy.&lt;/p&gt;
&lt;ul class=&quot;glassList&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://cocoondev.org/daisy/&quot;&gt;Daisy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.magnolia.info/en/magnolia.html&quot;&gt;Magnolia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://bricolage.cc&quot;&gt;Bricolage&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://phpwebsite.appstate.edu&quot;&gt;phpWebsite&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://joomla.org/&quot;&gt;Mambo/Joomla&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
I&apos;m a bit hesitant on Daisy b/c it requires XSLT knowledge for design customization. Magnolia has long URLs and doesn&apos;t appear like a static site - and the PHP ones often have .php in their URLs.  It should be an interesting investigation to see if these (seemingly) heavyweight solutions can solve a few simple requirements.</content>
    </entry>
    <entry>
        <id>https://raibledesigns.com/rd/entry/php_vs_java_which_is</id>
        <title type="html">PHP vs. Java - which is better?</title>
        <author><name>Matt Raible</name></author>
        <link rel="alternate" type="text/html" href="https://raibledesigns.com/rd/entry/php_vs_java_which_is"/>
        <published>2003-08-22T15:52:33-06:00</published>
        <updated>2007-02-10T20:07:56-07:00</updated> 
        <category term="/Java" label="Java" />
        <content type="html">I have a former client that has a customer.  This customer asked them - &quot;so when are you migrating from Java to PHP?&quot;  So evidently this person has the impression that the next wave of web applications will be written in PHP.  My former client has asked me to provide an answer for their customer.  If I translate it, I think they mean to ask &quot;what is different between Java and PHP and why should we use Java over PHP.&quot;  Here are my &lt;em&gt;opinions&lt;/em&gt; - please add yours as you see fit.  I must admit I don&apos;t know a whole lot about PHP, except that it&apos;s widely popular among the Linux/Apache/MySQL crowd and that it&apos;s similar to ASP in it&apos;s lack of a MVC architecture (yes, I know about the &lt;a href=&quot;http://www.phpmvc.net/&quot;&gt;PHP MVC&lt;/a&gt; project).
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I think Java is more of an industry standard, whereas PHP seems to be popular among hackers and hobbyists.&lt;/li&gt;
&lt;li&gt;Java provides better separation of layers - key for testability.  PHP has all the code embedded in the page, so you have to run it through a browser to test if database connections work (for instance).&lt;/li&gt;
&lt;li&gt;Java is more scalable.&lt;/li&gt;
&lt;li&gt;More folks know Java and it&apos;s easier to qualify someone&apos;s Java skills.  How do you test someone knows PHP?  Is there a certification?&lt;/li&gt;
&lt;li&gt;More for-profit organizations use it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&apos;re a Java or a PHP-lover, I&apos;d love to hear your opionions (facts are always better).  I&apos;m going to point my client to this post, so keep it clean.

</content>
    </entry>
</feed>

