<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ACLARK.NET, LLC Blog</title>
	<atom:link href="http://blog.aclark.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.aclark.net</link>
	<description>Python, Plone, and Zenoss software professionals</description>
	<lastBuildDate>Fri, 27 Aug 2010 15:11:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Leave a penny, take a dime!</title>
		<link>http://blog.aclark.net/2010/08/27/leave-a-penny-take-a-dime/</link>
		<comments>http://blog.aclark.net/2010/08/27/leave-a-penny-take-a-dime/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 15:11:26 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=375</guid>
		<description><![CDATA[With apologies to Erik Rose and PACKT publishing, who really should be the next &#8220;winners&#8221; in my blog entry queue, please take a minute to read the following (I am overdue with a promised review of Erik&#8217;s Plone 3 for &#8230; <a href="http://blog.aclark.net/2010/08/27/leave-a-penny-take-a-dime/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>With apologies to Erik Rose and PACKT publishing, who really should be the next &#8220;winners&#8221; in my blog entry queue, please take a minute to read the following (I am overdue with a promised review of Erik&#8217;s <a href="https://www.packtpub.com/plone-3-for-education/book">Plone 3 for Education</a>!)</p>
<h2>Helping people help each other</h2>
<p>I find myself in the unique position of being able to help raise money for four organizations I care a lot about:</p>
<ul>
<li><a href="http://python.org/psf">Python Software Foundation</a></li>
<li><a href="http://foundation.zope.org">Zope Foundation</a></li>
<li><a href="http://plone.org/foundation">Plone Foundation</a></li>
<li><a href="http://www.djangoproject.com/foundation/">Django Software Foundation</a></li>
</ul>
<h2>Proven track record</h2>
<p>In 2008, I raised (with the help of many others) approximately $13,000 USD for the Plone Foundation via Plone Conference 2008. In 2010, I raised over $2,000 for the Zope/Python Users Group of DC via a unique sponsorship program. I would like to continue doing this work, but I need your help!</p>
<h2>The plan</h2>
<p>Before I ask for the help, let me take a minute to explain &#8220;the plan&#8221;. I would like to operate an organization whose primary purpose is to perform the following:</p>
<ol>
<li>Educate people about Python software on a monthly basis via meetings featuring talks about Python software.</li>
<li>Contribute money to the various Python software foundations on an annual basis.</li>
</ol>
<p>This is the primary, not sole purpose. If we get those two things right we can do other things to expand on both #1 and #2. But I can&#8217;t do it alone.</p>
<h2>The help</h2>
<p>If you like this idea, you can help me right now (if you haven&#8217;t already) by helping me help someone very important to me. Confused? Read this: <a href="http://aclark.chipin.com/flowers-for-amy-part-ii">http://aclark.chipin.com/flowers-for-amy-part-ii</a></p>
<h2>Wrap up</h2>
<p>In short (and please forgive brevity), I think we are on to something here in DC, with both our consistent approach to running our user group activites, and attempts to expand our efforts for the greater good. We have received a lot of positive feedback and encouragement, and I&#8217;d like to keep going, but I have to convince everyone involved that there are people out there that care about these efforts. Hence, the chip-in.</p>
<p>If all the &#8220;Plone people&#8221; I know would contribute just a dollar, I think we would be in pretty good shape.</p>
<p>I hope you will consider helping!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/08/27/leave-a-penny-take-a-dime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Apache modules for XDV</title>
		<link>http://blog.aclark.net/2010/07/12/the-apache-modules-for-xdv/</link>
		<comments>http://blog.aclark.net/2010/07/12/the-apache-modules-for-xdv/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 12:25:11 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=260</guid>
		<description><![CDATA[I was recently tasked with consolidating our various business services (website, software repository, mailing lists, ldap, etc.) on to a single virtual machine (ostensibly to save money, although it didn&#8217;t quite work out that way). The Apache modules for XDV &#8230; <a href="http://blog.aclark.net/2010/07/12/the-apache-modules-for-xdv/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.aclark.net/wp-content/uploads/2010/07/consolidation.jpg"><img class="size-full wp-image-309 alignright" title="http://beakersblog.files.wordpress.com/2010/02/consolidation.jpg" src="http://blog.aclark.net/wp-content/uploads/2010/07/consolidation.jpg" alt="http://beakersblog.files.wordpress.com/2010/02/consolidation.jpg" width="300" height="300" /></a></p>
<p>I was recently tasked with consolidating our various <strong>business services</strong> (website, software repository, mailing lists, ldap, etc.) on to a single virtual machine (ostensibly to save money, although it didn&#8217;t quite work out that way). The Apache modules for XDV presented themselves as an attractive technique to use, in helping me achieve my goals.</p>
<h2>Background</h2>
<p>Previously, I had been blissfully running http://aclark.net with NGINX, Plone 4 trunk, and XDV on a small virtual machine and absolutely loving it.</p>
<p>Additionally, I had separate virtual machines for my WordPress blog (blog.aclark.net) and Subversion software repository (svn.aclark.net). The isolation of these services made them easy to manage and still relatively cheap to run them all.</p>
<p>And in fact, I have come to rely heavily on the ability to (1.) rapidly  create a virtual machine, (2.) install a bunch of vendor packages  that Just Work™, and (3.) build out whatever was left i.e. whatever could not  be easily installed via OS vendor packages. This usually translates  loosely into &#8220;I use Buildout for my Plone sites, and an OS vendor package installer for  everything else&#8221;.</p>
<p>That said, even though I already knew the hazards of trying to cram too many services on to a  single &#8220;shared&#8221; host, and didn&#8217;t really want to do that dance again, it seemed reasonable at the time to at least try and consolidate them on to a single virtual machine (it sounds crazy in hindsight).</p>
<h3>First choice: NGINX</h3>
<p>Like I said earlier, the forked version of NGINX available on the  <a href="http://code.google.com/p/html-xslt/">HTML-XSLT website</a> is an  absolute pleasure to use. But when I pondered consolidating  services I knew it would not be easy, and maybe even impossible to run  WordPress behind NGINX.</p>
<h3>Second choice: Apache</h3>
<p>So I thought to myself, &#8220;I know, I&#8217;ll just switch  to the Apache modules for XDV&#8221; and that will solve my PHP/Plone  &#8220;integration&#8221; problems for the time being. (Another way to solve them  would be to use the <a href="http://pypi.python.org/pypi/dv.xdvserver">XDV middleware</a> along with <a href="http://pypi.python.org/pypi/Zope2/2.13.0a1">Zope 2.13</a>&#8216;s  WSGI support; I will be trying that next.)</p>
<p>But not so fast.</p>
<h2>Problems</h2>
<p>Of course, things don&#8217;t always go as planned.</p>
<h3>First problem</h3>
<p>The Apache modules for XDV do not work exactly &#8220;as advertised&#8221; on any of the &#8220;modern&#8221; OS platforms I tried (Debian, various Ubuntus, and Arch Linux). They compile fine against the operating system&#8217;s Apache, but do not run properly. See <a href="http://www.coactivate.org/projects/deliverance/lists/deliverance-discussion/archive/2010/06/1276982495896/forum_view">this thread</a> on the Deliverance mailing list (and I challenge anyone reading this to correct me! <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> )</p>
<p>&#8220;Fine,&#8221; I thought, I&#8217;ll just create a buildout to deploy everything. I <a href="http://blog.aclark.net/2010/03/30/blood-sweat-tears-and-a-new-plone-book/">wrote a book</a> about deploying Plone websites with Buildout. This should be easy, right?</p>
<p>Wrong.</p>
<h3>Second problem</h3>
<p>It&#8217;s hard to create such a buildout for a variety of reasons, but most noticeably in my mind is the &#8220;library soup&#8221; you may encounter on any modern system. For example, I started off by trying to include all the dependencies in the buildout. But I ended up leaving things out, like libxml2 and libxslt relying instead on the operating system vendor packages. Because even though I tried desperately to tell every other dependency about the included libxml2 and libxslt2, I still ended up with an annoying &#8220;missing symbols&#8221; error at the end (meaning I likely missed a compiler flag along the way).</p>
<p>These errors can be very frustrating, and even worse: <strong>sporadic</strong>. Sometimes you may inadvertently add or remove a system dependency during the build process. So you could be relying on a system package and not even know it until later when it is too late (i.e. when you are enjoying some unplanned and unexpected down time).</p>
<p>So there I went again. It took several days I didn&#8217;t really have, and   the results were not what I expected, but I&#8217;m still somewhat happy with   them. Now, I want to share this buildout particularly with folks   considering using the Apache modules for XDV (<a href="http://code.google.com/p/html-xslt/">http://code.google.com/p/html-xslt/</a>).   Because while it would be much easier if the Apache modules Just   Worked™ with OS vendor packages, in the event that they don&#8217;t (which is   what I experienced) folks may find this buildout helpful. (That, and Jon Stahl requested it on Facebook <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> ).</p>
<h2>Conclusion</h2>
<p>Anyway, I&#8217;m quite happy with the buildout and I am sharing it in hopes that it will move the Apache/XDV story forward.</p>
<p>In addition to compiling Apache with mod_depends and mod_transform, it includes Subversion, Trac, mod_wsgi, PHP and WordPress. As I mentioned earlier, it is not really my preference to cram all this stuff in to one buildout, but as long as it is reliable and consistent, I don&#8217;t mind it too much. It also handles the theme compilation for a variety of services, which is accomplished via a command recipe that executes calls to <em>bin/xdvcompiler</em>.</p>
<p>Incidentally, I have no particular allegiance to, or dislike of Apache:  more like a love/hate relationship; it can be very useful in a variety  of situations, while at the same time confounding. But regardless, I  would like to see the Apache XDV modules be able to deliver the same  rock solid performance as the NGINX fork.</p>
<p>Kudos to Laurence Rowe (et al.) for the Apache modules! I hope this blog entry will facilitate a push to get people using them with their <em>operating system vendor&#8217;s Apache packages</em>, which may inspire Laurence to continue developing them, and most importantly to fix bugs <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>Normally, I like to factor out the reusable bits first, but this  buildout is presented in it&#8217;s entirety as I am using it (minus some  customer bits), for whatever that is worth. Here is a look at the &#8220;main&#8221; buildout.cfg file, most of which should be self-explanatory. Click around this site to see the results:</p>
<pre>[buildout]
#extends = http://svn.aclark.net/svn/public/buildout/apache/trunk/buildout.cfg
extends = apache.cfg
parts =
 bootstrap
 xdv
 apache
 apreq2
 apache-config
 apache-config-aclark
 apache-config-admin
 apache-config-svn
 apache-config-trac
 apache-config-ssl
 apache-config-mailman
 php
 php-conf
 mod-depends
 mod-transform
 python
 distribute
 trac
 theme-aclark
 theme-public
 theme-support
 theme-blog
 mod-wsgi
 subversion
 subversion-python
 supervisor

[apache]
configure-options +=
 --with-included-apr
 --with-ldap
 --enable-authnz-ldap
 --enable-ldap
 --enable-ssl
 --enable-dav
 --enable-dav-fs
 --enable-dav-lock

[mod-depends]
recipe = hexagonit.recipe.cmmi
url = http://html-xslt.googlecode.com/files/mod-depends-html-xslt.tgz
configure-options = --with-apxs=${apache:location}/bin/apxs

[mod-transform]
recipe = hexagonit.recipe.cmmi
url = http://html-xslt.googlecode.com/files/mod-transform-html-xslt.tgz
configure-options =
 --with-apxs=${apache:location}/bin/apxs
 --with-apr=${apache:location}/bin/apr-1-config
 --with-apr-util=${apache:location}/bin/apu-1-config
environment-section = environment

[environment]
PATH = %(PATH)s:${apreq2:location}/bin
LIBS = -lxml2 -lxslt

[apreq2]
recipe = hexagonit.recipe.cmmi
url = http://www.bizdirusa.com/mirrors/apache/httpd/libapreq/libapreq2-2.12.tar.gz
configure-options = --with-apache2-apxs=${apache:location}/bin/apxs

[libxml2]
recipe = hexagonit.recipe.cmmi
url = ftp://xmlsoft.org/libxml2/libxml2-2.7.7.tar.gz
configure-options =
 --with-python=no

[libxslt]
recipe = hexagonit.recipe.cmmi
url = ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz
configure-options =
 --with-python=no

[php]
recipe = hexagonit.recipe.cmmi
url = http://us2.php.net/get/php-5.3.2.tar.gz/from/this/mirror
configure-options = --prefix=${buildout:directory}/parts/apache/php
--with-apxs2=${buildout:directory}/parts/apache/bin/apxs
--with-config-file-path=${buildout:directory}/etc/php.ini
--enable-mbstring --with-mysql=/usr/bin

[php-conf]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/php.ini.in
output = ${buildout:directory}/etc/php.ini

[apache-config-aclark]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/aclark.in
output = ${buildout:directory}/etc/aclark

[apache-config-admin]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/admin.in
output = ${buildout:directory}/etc/admin

[apache-config-svn]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/svn.in
output = ${buildout:directory}/etc/svn

[apache-config-trac]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/trac.in
output = ${buildout:directory}/etc/trac

[apache-config-ssl]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/ssl.in
output = ${buildout:directory}/etc/ssl

[apache-config-mailman]
recipe = collective.recipe.template
input = ${buildout:directory}/templates/mailman.in
output = ${buildout:directory}/etc/mailman

[ports]
production = 80

[subversion]
recipe = hexagonit.recipe.cmmi
url = http://subversion.tigris.org/downloads/subversion-1.6.12.tar.gz
configure-options = --with-apxs=${apache:location}/bin/apxs
make-targets =
 install
 swig-py
 install-swig-py

[mod-wsgi]
recipe = hexagonit.recipe.cmmi
url = http://modwsgi.googlecode.com/files/mod_wsgi-3.2.tar.gz
configure-options =
 --with-apxs=${apache:location}/bin/apxs
 --with-python=${buildout:directory}/parts/python/bin/python

[subversion-python]
recipe = plone.recipe.command
libdir = ${python:location}/lib/python2.6/site-packages
command =
 rm -rf ${subversion-python:libdir}/svn
 rm -rf ${subversion-python:libdir}/libsvn
 cp -prv ${subversion:location}/lib/svn-python/libsvn ${subversion-python:libdir}
 cp -prv ${subversion:location}/lib/svn-python/svn ${subversion-python:libdir}
update-command = ${subversion-python:command}

[python]
recipe = hexagonit.recipe.cmmi
url = http://www.python.org/ftp/python/2.6.5/Python-2.6.5.tgz
configure-options = --enable-shared

[python-exe]
executable = ${buildout:directory}/parts/python/bin/python

[distribute]
recipe = plone.recipe.command
command =
 wget http://python-distribute.org/distribute_setup.py
 ${python-exe:executable} distribute_setup.py

[xdv]
recipe = zc.recipe.egg

[trac]
recipe = plone.recipe.command
command =
 ${buildout:directory}/parts/python/bin/easy_install Trac
 ${buildout:directory}/parts/python/bin/easy_install TracSubversionLocation

[theme-public]
recipe = plone.recipe.command
command =
 ${buildout:bin-directory}/xdvcompiler \
 /srv/trac/public/theme/rules.xml \
 /srv/trac/public/theme/index.html \
 --output=${buildout:directory}/etc/trac-public.xsl
update-command = ${:command}

[theme-support]
recipe = plone.recipe.command
command =
 ${buildout:bin-directory}/xdvcompiler \
 /srv/trac/support/theme/rules.xml \
 /srv/trac/support/theme/index.html \
 --output=${buildout:directory}/etc/trac-support.xsl
update-command = ${:command}

[theme-aclark]
recipe = plone.recipe.command
command =
 ${buildout:bin-directory}/xdvcompiler \
 /srv/aclark/theme/rules.xml \
 /srv/aclark/theme/index.html \
 --output=${buildout:directory}/etc/theme-aclark.xsl
update-command = ${:command}

[theme-blog]
recipe = plone.recipe.command
command =
 ${buildout:bin-directory}/xdvcompiler \
 /srv/blog/theme/rules.xml \
 /srv/blog/theme/index.html \
 --output=${buildout:directory}/etc/theme-blog.xsl
update-command = ${:command}
</pre>
<p>You can check out the rest of the buildout <a href="http://svn.aclark.net/trac/public/browser/buildout/aclark/apache-xdv/trunk">here</a> (themed with XDV <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ). And if you enjoy this post, please feel free to pick up a copy of <a href="http://aclark.net">Plone 3.3 Site Administration</a> from PACKT Publishing, due out any day now (I am expecting to review pre-finals this week some time).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/07/12/the-apache-modules-for-xdv/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Blood, sweat, tears… and a new Plone book!</title>
		<link>http://blog.aclark.net/2010/03/30/blood-sweat-tears-and-a-new-plone-book/</link>
		<comments>http://blog.aclark.net/2010/03/30/blood-sweat-tears-and-a-new-plone-book/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 22:15:01 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=190</guid>
		<description><![CDATA[Well, no blood yet. But certainly sweat and tears! If Plone Conference 2006 was my inspiration for Plone Conference 2008, then Professional Plone Development was my inspiration for this book: Plone 3.3 Site Administration. For the past 14 months or &#8230; <a href="http://blog.aclark.net/2010/03/30/blood-sweat-tears-and-a-new-plone-book/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well, no blood yet. But certainly sweat and tears! If <a href="http://plone.org/events/conferences/seattle-2006">Plone Conference 2006</a> was my inspiration for <a href="http://plone.org/2008">Plone Conference 2008</a>, then <a href="https://www.packtpub.com/Professional-Plone-web-applications-CMS/book">Professional Plone Development</a> was my inspiration for this book: <a href="https://www.packtpub.com/plone-3-3-site-administration/book">Plone 3.3 Site Administration</a>.</p>
<p><a href="http://blog.aclark.net/wp-content/uploads/2010/03/plone-site-admin.jpg"><img class="alignright size-full wp-image-285" title="plone-site-admin" src="http://blog.aclark.net/wp-content/uploads/2010/03/plone-site-admin.jpg" alt="" width="243" height="300" /></a>For the past 14 months or so, I have been writing a book aimed at end users of Plone; folks that have little knowledge of how to do much more than add content. It is intended to make them feel more comfortable performing various site administrator tasks. Topics like theming, maintenance, and optimization are covered.</p>
<p>But wait, there&#8217;s more!</p>
<h2>#1</h2>
<p>This book aims to &#8220;lower the Plone bar for users of Python&#8221;. What do I mean by that? Basically this: I love Python almost as much as I love Plone. It lets me translate my thoughts directly into code. I fantasize that with little more than a Python interpreter, one can forge a working Plone site within minutes. But it is not just a fantasy, it is (more or less) the status quo. (Maybe even <a href="http://en.wikipedia.org/wiki/MacGyver">MacGyver</a> used Python?)</p>
<p>So, this book begins at the beginning: by making sure folks are comfortable installing and using Python on there operating system of choice (or using the pre-installed Python). If you read <em>Professional Plone Development</em>, you may recall Martin Aspeli saying at the beginning of Chapter 3:</p>
<blockquote><p>We will assume that Python 2.4 gets invoked when you run python on the command line.</p></blockquote>
<p>This book does not make that assumption and tries to cover everything you may need to know after installing your operating system up to that point.</p>
<p>In <strong>Chapter 1</strong>, we cover installing and running Python on three popular operating systems: Mac OS X 10.6 (my main squeeze), Windows 7, and Ubuntu 9.10 (Debian is my main production server squeeze). Other operating systems are welcome; your mileage may vary.</p>
<h2>#2</h2>
<p>This book is largely a response to the whole &#8220;Oh no! I have to use Buildout to install Plone and its add-ons!&#8221; sentiment that has been prevalent since Buildout was first introduced to Plone several years ago. I don&#8217;t know if Buildout was the &#8220;right&#8221; way to go, but I do know that I love using it and I would like to help others feel the same way.</p>
<p>The bottom line is this: Plone made a conscious decision to &#8220;become more Pythonic&#8221; by using eggs. With that choice came more complexity from potential conflicts between eggs. Buildout is one solution to that problem. Unfortunately, it introduces other problems like cryptic error messages and a certain <strong>too-many-moving-parts</strong>-ness.</p>
<h2>An aside…</h2>
<p>Let me correct myself: I am fairly certain Buildout was the right way to go at the time. What I am not sure about is where to go from here. It would be nice to get back to a place where folks could just drop packages in to a directory (I don&#8217;t literally mean going back to old-style products, but perhaps we could provide that type of functionality again somehow). But I don&#8217;t have an answer for that. In the meantime, let&#8217;s make everyone more comfortable with using Buildout.</p>
<h2>About the rest of the book…</h2>
<p>The book teaches you to find your way around Buildout and Plone. Whether you choose to follow along and build your site from scratch using only Buildout (and a paper clip) or if you use one of the Buildout-based installers (like the Unified Installer), this book aims to make you more competent and comfortable performing a variety of Buildout-related tasks.</p>
<p>In <strong>Chapters 2-7</strong>, we present various buildout configuration files that correspond to specific tasks that are related to various subjects, e.g. theming, maintenance, and optimization. The reader is expected to &#8220;know how to write a buildout.cfg file&#8221; by the end. No one that reads the book is allowed in the #plone IRC channel afterward to ask about buildout (you can answer buildout questions though). Kidding… I kid…</p>
<p>In the final <strong>Chapter 8</strong>, we cover new technologies like XDV and repoze.zope2 which may become more mainstream once you decide to start using them (although the latter seems more like a toy to keep us busy until the real fix arrives: <a href="http://article.gmane.org/gmane.comp.web.zope.plone.devel/23887">full WSGI support in Zope 2</a>).</p>
<h2>When will it arrive?</h2>
<p>PACKT originally announced the book will arrive in March and I have been working non-stop since mid-March to make sure it gets  out the door as quickly as possible; I expect it to be available <strong>Real Soon Now™</strong>. I apologize to those of you who have pre-ordered and are now waiting for it!</p>
<p>So get ready! I plan to have over 200 pages of draft material submitted by the end of this month. I will continue to work with PACKT to address any concerns that arise during editing. They have promised to try to ship the book by May, so we will see how it goes. I encourage you to <a href="https://www.packtpub.com/plone-3-3-site-administration/book">pre-order now</a> as that will go a long way to inspire them to work just that much harder  to get it done and out to you, ASAP!</p>
<h2>Can I write a book?</h2>
<p>Probably. For those curious about the process (as I very much was), here is a bit about how it went for me:</p>
<ol>
<li>A few years ago, Martin Aspeli had the idea for Practical Plone 3 and put out a call to writers that I responded to; I ended up contributing 2 chapters. This taught me that it was indeed a lot of work, and I got exposed to the editing process.</li>
<li>A couple years ago, PACKT approached me (and several others) about the idea for Plone Site Administration and I thought I had a good story to tell based on my experiences, so I wrote a detailed outline and they accepted it.</li>
<li>Though I had written for Practical Plone 3, I struggled to find my voice. At the same time I had a tremendous amount of consulting work to do to make a living. I sneaked in time to write drafts and eventually found my voice. To be honest, the most productive work has been done in the last 3 months.</li>
</ol>
<p>Perhaps the biggest lesson I learned was this: stop thinking and start writing. I tend to over analyze things and spent a lot of time thinking about &#8220;how it would go&#8221; rather than just writing it. Writing is the key. Think less, write more (at which point your thoughts tends to flow more naturally anyway).</p>
<h2>Should I write a book?</h2>
<p>Possibly. I am sensitive to the phenomenon of &#8220;Plone book diarrhea&#8221; and I do think that there can be such a thing as too many Plone books. But I don&#8217;t think we are there yet. To me, the more books published about Plone (by PACKT or any publisher) the better. I like to see what each individual author brings to the story, even if the stories they are telling tend to overlap sometimes. So for me the answer to that question both before and after writing my book is <strong>yes</strong>. I know I am a better writer having written it, and I certainly know more about Python, Zope, and Plone and many other technologies.</p>
<h2>In either case, you should definitely take my class.</h2>
<p>If you are interested in learning more about Python and tools like Distribute, Pip, Buildout, etc. and you want to feel more comfortable managing your Plone site, you will not want to miss the <a href="http://plone-site-admin.eventbrite.com">one day class I am teaching at Plone Symposium East 2010</a>!</p>
<p>The book will hopefully be out by then, but the class will go on either way.</p>
<p>Hope to see you there, and I hope you enjoy the book.</p>
<h2>P.S. Looking for Plone experts? Hire ACLARK.NET, LLC.</h2>
<p>Thank you, everyone, for the responses to <a href="http://blog.aclark.net/?p=170">my previous blog entry</a>. I have had some great conversations with some very interesting folks and I appreciate everyone&#8217;s interest. However, I wanted to encourage everyone once more to <a href="mailto:aclark@aclark.net?subject=&quot;Hire Alex Clark&quot;">get in touch.</a> And also, to feel free to reach whenever you come across this blog entry and are in need of Plone help. We are always looking for a challenge.</p>
<p><a href="http://aclark.net/contact-info"> </a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/03/30/blood-sweat-tears-and-a-new-plone-book/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>I need something to do</title>
		<link>http://blog.aclark.net/2010/03/22/i-need-something-to-do/</link>
		<comments>http://blog.aclark.net/2010/03/22/i-need-something-to-do/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 21:06:04 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=170</guid>
		<description><![CDATA[I would like to think I have done my share for Plone over the past few years. In return, I know that Plone has done its share for me. I have learned a lot, made a good living, and met &#8230; <a href="http://blog.aclark.net/2010/03/22/i-need-something-to-do/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I would like to think I have done <a href="http://plone.org/2008">my</a> <a href="http://aclark.net/plone-site-admin">share</a> for Plone over the past few years. In return, I know that Plone has done its share for me. I have learned a lot, made a good living, and met a lot of amazing folks who have really inspired me to be the best I can be.</p>
<p>But it is time for a change.</p>
<div id="attachment_287" class="wp-caption alignright" style="width: 502px"><a href="http://blog.aclark.net/wp-content/uploads/2010/03/fg_0885.jpg"><img class="size-full wp-image-287" title="fg_0885" src="http://blog.aclark.net/wp-content/uploads/2010/03/fg_0885.jpg" alt="Image credit: http://screenmusings.org/ForrestGump/pages/fg_0885.htm" width="492" height="203" /></a><p class="wp-caption-text">Image credit: http://screenmusings.org/ForrestGump/pages/fg_0885.htm</p></div>
<p>If my life were the movie <a href="http://www.imdb.com/title/tt0109830/">Forrest Gump</a>, this would be the part where Forrest stops running, stands in the highway for a minute… then turns around and goes home to Greenbow Alabama (which as it turns out is a fictional town, who knew?)</p>
<p><a href="http://gointosail.wordpress.com/2009/03/19/the-end/"><em>(Apparently this person had the same epiphany!)</em></a></p>
<p>Not a drastic change mind you, just a re-focus.</p>
<p>To that end, I would like to reach out to the community I know and love (Plone!) and see if anyone has anything for me to do. Please <a href="mailto:aclark@aclark.net?subject=&quot;Hire Alex Clark&quot;">contact me</a> if you are interested, and please tell all your friends too! You never know who knows who and who is looking for what.</p>
<p>Let me tell you a little bit about what I have done professionally and what I would like to do now, followed by some requirements I hope can be met.</p>
<p>What I have done:</p>
<ul>
<li>I received a <strong>Computer Science degree</strong> in May 1998 after about 10 years of undergrad education (transferred, changed majors, etc.)</li>
<li>I&#8217;ve done a lot of <strong>system administration and network engineering</strong>, mostly for ISPs including AOLnet (back in the day).</li>
<li>I have done a lot of <strong>Plone</strong>.
<ul>
<li>I started doing Plone at my last full-time system administrator job, and became so obsessed with it that I had to <strong>quit to pursue </strong>it<strong> full time</strong>, mostly thanks to the support of my wife Amy, and Paul Boos and Nate Aune who handed me my first contracts!</li>
<li>I have <strong>organized monthly meetings </strong>for ZPUGDC for the last 4 years or so, taking over for Joel Burton when he moved to California. We are now in the process of becoming a 501c3 so we can expand our focus and serve the community in bigger and better ways. ZPUGDC is not a full time job, but it as a passion (to be a resource for all things Python in DC).</li>
<li>I have owned and operated<strong> ACLARK.NET, LLC </strong>for the past six years. All in all this has been an amazing experience and I have no plans to stop. We are now at the point where we can compete with all the &#8220;big firms&#8221; and we intend to do so. But I need time to answer some RFQs…</li>
<li>I <strong>organized</strong> <a href="http://plone.org/2008">Plone Conference 2008</a> and <a href="http://aclark.net/plone-site-admin">wrote a book</a>.</li>
<li>I <strong>upgraded plone.org to Plone 3</strong>, and now lead the plone.org <strong>infrastructure team member</strong>, taking over for Wichert Akkerman (more or less) when he left. This is something I particularly enjoy. No wait, I hate it. Just kidding. It is something I like, and plan to focus on it more in the future to make sure it gets done right. It is very frustrating to want to do something but not have  time to do it. I&#8217;m sure all you Plone consultants know what I mean.</li>
</ul>
</li>
<li>I have done some <strong>Python</strong> programming and evangelism:
<ul>
<li>I have paid particular attention to making ZPUGDC <strong>more Python-centric</strong>, by welcoming all Python programmers in the area not just Plonistas. This has worked out very well and our monthly attendance has gone from 5-6 to 15-20. Each month, we go around the room and talk about &#8220;what we are doing with Python&#8221;. It is <em>always</em> interesting.</li>
<li><strong>I write code</strong>. I am particularly proud that working for myself has afforded me my first paid programming job (programming for system administration doesn&#8217;t really count IMO). There is a ton to learn: Networking frameworks like Twisted, Web application frameworks like Zope, Django, Turbo Gears, Pylons, BFG, etc. Continuous integration with Hudson (OK, that is Java but you can use it on your Python code <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> ), Documentation with Sphinx. And so on.</li>
</ul>
</li>
</ul>
<p>What I would like to do:</p>
<ul>
<li><strong>Open Source Software</strong>: I really like open source software. It started in the mid 1990s when I realized that there was this thing called the Internet and that people had been writing code for years and making it available for general use to anyone interested. That just floored me. I can still remember the thrill of borrowing a UNIX text book from my professor the summer before I started CS classes. At the time, it seemed like UNIX and open source walked hand in hand and I became obsessed with both. I realize now there is much more to that story, but that is how the seeds were planted. Anyway, open source is for me and I am for open source. I am not sure what that means in terms of job opportunities, but maybe I could be an evangelist like Mark Hinkle, and evangelize Your Software like he evangelizes Zenoss. Just a thought.</li>
<li><strong>Plone, Python, Zope, Zenoss</strong>: I really like these open source projects, in particular. Any paid position that involves almost any aspect of these projects would make me happy. I have pimped myself out to Zenoss and I eventually expect to hang out my Zenoss shingle and start doing add-ons, customizations, etc. for Zenoss users. But I am not quite there yet. I know Plone, and can handle most development and deployment tasks. I am particularly interested in large-scale deployments (e.g. City of Austin type clients, only with a better outcome <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> ).</li>
<li><strong>Busy work</strong>. It sounds silly, but repetitive tasks fit my brain. Automating large scale deployments. Configuration management. System updates. These things I can do, and help you with too.</li>
<li><strong>Learn</strong>: If there is one thing I&#8217;ve learned after learning so much over the years, it is that I hardly know anything. I hope to be a part of team that offers a significant growth opportunity. It&#8217;s time to raise the bar.</li>
</ul>
<p>What I require to work for you:</p>
<ul>
<li><strong>Six month contract or longer</strong>. Whatever I sign on to do, it has to last six months or more (preferably until the end of 2010). This is the time frame I am particularly concerned about (for a variety of personal reasons). I can start April 1 or after. Repeat: it is definitely OK if it lasts longer than six months.</li>
<li><strong>Travel</strong>. I can travel almost anywhere in the world, as long as you pay for it <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . But seriously, working from home is a requirement, but meetings (monthly? bi-monthly?) in your city should not be a problem.</li>
<li><strong>Fun and flexibility</strong>. I do Plone for a living because Plone is fun. I work very hard to make sure your needs are met, and I ask for a lot of flexibility in return. Deadlines are not a problem, but the ability to act independently to meet the deadline is.</li>
<li><strong>Paid Plone work</strong>. Ideally someone will hire me to do all the things I already love to do like maintaining plone.org, sprinting on various tasks, perhaps joining the Plone 4.1 Framework Team. Anything and everything I can do to make the Plone project better and stronger. This of course does not have to be the main focus of the work, but it would be nice if some time could be allocated officially towards these tasks.</li>
<li><strong>Part time</strong>. Ideally I&#8217;d like to put in about 20 hours per week on some project, and spend the other 20 hours on ACLARK.NET, ZPUGDC, INC.</li>
</ul>
<p>Above all, I am flexible. This post is about me, but I am certainly willing to listen to what you, prospective employer, has to offer. If there is a good fit, I am confident we can make it work.</p>
<p>I look forward to hearing from you!</p>
<p>Oh, I almost forgot, my updated resume is here: <a href="http://aclark.net/team/aclark/resume">http://aclark.net/team/aclark/resume</a>. Or if you prefer PDF: <a href="http://aclark.net/team/aclark/resume-pdf">http://aclark.net/team/aclark/resume-pdf</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/03/22/i-need-something-to-do/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Buildout to deploy a Plone 2.1 site to the cloud</title>
		<link>http://blog.aclark.net/2010/03/15/using-buildout-to-deploy-a-plone-2-1-site-to-the-cloud/</link>
		<comments>http://blog.aclark.net/2010/03/15/using-buildout-to-deploy-a-plone-2-1-site-to-the-cloud/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 01:03:14 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=64</guid>
		<description><![CDATA[Believe it or not, there are still Plone 2.1 sites in production. (And 1.0 sites too, for that matter. Just look for the tell-tale &#8216;/help&#8217; sign, e.g. http://www.zope.org/help, if you suspect Plone 1). I know, because I just deployed one &#8230; <a href="http://blog.aclark.net/2010/03/15/using-buildout-to-deploy-a-plone-2-1-site-to-the-cloud/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Believe it or not, there are still Plone 2.1 sites in production. (And 1.0 sites too, for that matter. Just look for the tell-tale &#8216;/help&#8217; sign, e.g. <a href="http://www.zope.org/help">http://www.zope.org/help</a>, if you suspect Plone 1).</p>
<p>I know, because I just <a href="http://harryroseman.com">deployed one</a> (a cool artist&#8217;s site if you have a couple hours to kill…). But I didn&#8217;t do it the &#8220;old way&#8221; with Zope 2 instances created by hand on clunky physical servers, I used <a href="http://pypi.python.org/pypi/zc.buildout">Buildout</a> and the <a href="http://rackspacecloud.com">Cloud</a>.</p>
<h3>Aside #1</h3>
<p>As an aside: it was really bothering me lately that you couldn&#8217;t (easily) find older Plone releases at <a href="http://sourceforge.net/projects/plone/">SourceForge</a>. This is by design to avoid confusion, but still confusing. So when I needed the most recent 2.1.x tarball I decided to scratch my itch and fix the &#8220;problem&#8221;. I started gathering the <a href="http://downloads.sourceforge.net/project/plone/OldFiles/Plone-2.1.4.tar.gz">hard to find</a> releases and putting them <a href="http://dist.plone.org/archive/">here</a>. OK… so I only gathered one release (2.1.4), but I swear I had good intentions. If you&#8217;d like to see any additional releases &#8220;moved&#8221; to dist.plone.org, please let me know in the comments.</p>
<h3>Aside #2</h3>
<p>Another aside: I should mention here the advent of a tool that promises to simplify deployment of Python-based web applications to the cloud (or supported service, which technically does not have to be &#8220;cloud-based&#8221;) via the use of APIs (in particular, the <a href="http://rackspacecloud.com">Rackspace Cloud</a> API, which is the only one supported so far): <a href="http://cloudsilverlining.org">Silver Lining</a>! The idea of using this tool got me so excited, I spent some time experimenting with setting up a new host with it (and purchasing their service). But when I realized it was not quite ready for production (i.e. &#8220;<a href="http://cloudsilverlining.org/#who-should-use-silver-lining">if you want to use Silver Lining, Silver Lining is not for you</a>&#8221; <img src='http://blog.aclark.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ), I ended up using the Rackspace Cloud <strong>web interface</strong>.</p>
<p>I was so impressed with it:</p>
<p style="text-align: center;"><a href="http://blog.aclark.net/wp-content/uploads/2010/03/rackspacecloudui.png"><img class="size-full wp-image-291 aligncenter" title="rackspacecloudui" src="http://blog.aclark.net/wp-content/uploads/2010/03/rackspacecloudui.png" alt="" width="688" height="373" /></a></p>
<p style="text-align: left;">I literally moved all of my (granted, relatively small number of client sites) to their service within a matter of 1-2 months. Now, I know what you are thinking, and I do intend to explore other services (in fact, I have tried <a href="http://www.slicehost.com/">Slicehost</a> and it was OK), but this service made my life so much easier I wanted to mention some of its key features:</p>
<ul>
<li>&#8220;On the fly&#8221; requisitioning. You can add/remove hosts anytime and you only pay for the time they are up.</li>
<li>&#8220;On the fly&#8221; resizing of hosts. In my testing and real world experience, the resizing (e.g. move from a host with 256MB RAM and 10GB disk to 500MB RAM and 20GB disk) was painless (literally only cost a few minutes of downtime).</li>
<li>The potential for all of this to be done remotely via a command line tool like Silver Lining.</li>
</ul>
<h3>Aside #3</h3>
<p>A third and final aside: the status quo of WSGI support for Plone. Since <a href="http://cloudsilverlining.org/#the-application">Zope 2 is not supported</a> by Silver Lining, the key to deploying Plone sites with it is currently to use <a href="http://repoze.org/quickstart.html#repoze.zope2">repoze.zope2</a>. <a href="http://jazkarta.com">Nate Aune</a> has recently made some progress with this, and more work is scheduled for<a href="http://weblion.psu.edu/events/plone-symposium-east-2010"> Plone Symposium East</a>. My latest swipe at WSGI-Plone is here: <a href="http://svn.aclark.net/svn/public/buildout/plone/branches/3.x-wsgi/">http://svn.aclark.net/svn/public/buildout/plone/branches/3.x-wsgi/</a></p>
<h3>The actual point</h3>
<p>And finally, to the point of this blog entry! I have created a generic Plone 2.1 buildout for anyone interested. You can find it here:<a href="http://svn.aclark.net/svn/public/buildout/plone/branches/2.1.x/"> http://svn.aclark.net/svn/public/buildout/plone/branches/2.1.x/</a>. Using it is simple, as described in the <a href="http://svn.aclark.net/svn/public/buildout/plone/branches/2.1.x/README.txt">README.txt</a>:</p>
<pre> $ svn export http://svn.aclark.net/svn/public/buildout/plone/branches/2.1.x/ plone
 $ cd plone
 $ python2.4 bootstrap.py
 $ bin/buildout
 $ bin/instance fg
</pre>
<p>Since Plone 2.1 community support has expired for this release, and since Plone 2.1 shipped with Python 2.3 (if I recall correctly), this is definitely &#8220;unsupported use of Plone&#8221;. But when you need it, you need it. I have yet to experience any issues related to the Python version, for whatever that is worth (possibly due to the fact that Plone 2.1 originally shipped with Python 2.3 and Zope 2.7, then Zope 2.8 came along which worked with Python 2.4. Just a guess).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/03/15/using-buildout-to-deploy-a-plone-2-1-site-to-the-cloud/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>No, really, you can (just) use Buildout to install Plone.</title>
		<link>http://blog.aclark.net/2010/01/07/no-really-you-can-just-use-buildout-to-install-plone/</link>
		<comments>http://blog.aclark.net/2010/01/07/no-really-you-can-just-use-buildout-to-install-plone/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 17:39:14 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=31</guid>
		<description><![CDATA[This is a follow up to my Getting Excited about Plone as Eggs post, because I can&#8217;t keep updating that one forever. Generally speaking, the recommended (and supported) way to install Plone is via the installers, e.g. the Unified Installer. &#8230; <a href="http://blog.aclark.net/2010/01/07/no-really-you-can-just-use-buildout-to-install-plone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This is a follow up to my <a href="http://old.aclark.net/team/aclark/blog/plone-as-eggs">Getting Excited about Plone as Eggs</a> post, because I can&#8217;t keep updating that one forever.</p>
<p>Generally speaking, the recommended (and supported) way to install Plone is via the installers, e.g. the <a href="http://launchpad.net/plone/3.3/3.3.3/+download/Plone-3.3.3-UnifiedInstaller.tgz">Unified Installer</a>. Obviously, if you want things to Just Work™ you should be using the latest stable release, which is why I linked to the 3.3.3 unified installer (although there is no Windows installer for 3.3.3 yet, which is why it&#8217;s not released on plone.org).</p>
<p>That said, since both Plone and Zope 2 have been packaged as eggs  (Plone became an egg in version 3.2 and Zope 2 became an egg as of Zope 2.12 which is the version of Zope 2 that Plone 4 will use) it has become &#8220;mostly trivial&#8221; to write a buildout.cfg to install Plone with. That means that you don&#8217;t even need paster to do it. You can just fire up an editor and type:</p>
<pre style="padding-left: 30px;">[buildout]

parts =
  instance

[instance]
recipe = plone.recipe.zope2instance
user = admin:admin
eggs =
  Plone
</pre>
<p>Amazing!</p>
<p>Of course there is the nasty bit about PIL, which I get around now-a-days by adding a very specific find-link, e.g.:</p>
<pre style="padding-left: 30px;">[buildout]

parts =
  instance

<span style="color: #ff0000;">find-links = http://dist.plone.org/thirdparty/PILwoTk-1.1.6.4.tar.gz</span>

[instance]
recipe = plone.recipe.zope2instance
user = admin:admin
eggs =
<span style="color: #ff0000;">  PILwoTk</span>
  Plone
</pre>
<p>What you should have at this point is a working Plone, but not necessarily a repeatable buildout. The reason being we have not pinned any egg versions yet, so we are effectively asking for whatever the latest version of Plone is on PyPI. Fun for playing, not fun for production. Fortunately the nice Plone people have created a bunch of version pins for us, so we just need to use them:</p>
<pre style="padding-left: 30px;">[buildout]

<span style="color: #ff0000;">extends =
    http://dist.plone.org/release/4.0a3/versions.cfg

versions = versions</span>

parts =
  instance

find-links = http://dist.plone.org/thirdparty/PILwoTk-1.1.6.4.tar.gz

[instance]
recipe = plone.recipe.zope2instance
user = admin:admin
eggs =
  PILwoTk
  Plone
</pre>
<p>If you are completely new to buildout and you are thinking to yourself right now &#8220;what in the world is this guy talking about?&#8221; then you will likely want to install buildout first so you can join in the fun. Fortunately, the nice Python people have made that easy with a package called <a href="http://pypi.python.org/pypi/distribute">Distribute</a>.</p>
<p>Following their instructions, you can do this:</p>
<pre style="padding-left: 30px;">$ curl -O http://python-distribute.org/distribute_setup.py
$ python distribute_setup.py
</pre>
<p>Then:</p>
<pre style="padding-left: 30px;">$ easy_install zc.buildout
$ mkdir plone
$ cd plone
$ buildout init
</pre>
<p>After which you will have a buildout.cfg file, and you can follow along with the above steps. Happy?</p>
<p>The best part about all of this is that (on a fast internet connection) it should only be a matter of minutes before you are able to do this:</p>
<pre style="padding-left: 30px;">$ bin/instance fg
</pre>
<p>and be staring at:</p>
<p style="text-align: center;"><a href="http://blog.aclark.net/wp-content/uploads/2010/01/Plone4screenshot.png"><img class="size-full wp-image-297 aligncenter" title="Plone4screenshot" src="http://blog.aclark.net/wp-content/uploads/2010/01/Plone4screenshot.png" alt="" width="671" height="462" /></a></p>
<p>Of course, if you are running in the foreground (recommended for debugging) you should see something like this:</p>
<pre style="padding-left: 30px;">aclark@Alex-Clarks-MacBook-Pro:~/Developer/public-plone/ &gt; bin/instance fg
/Users/aclark/Developer/public-plone/parts/instance/bin/runzope -X debug-mode=on
2010-01-07 12:07:56 INFO ZServer HTTP server started at Thu Jan  7 12:07:56 2010
 Hostname: 0.0.0.0
 Port: 8080
2010-01-07 12:08:14 INFO Zope Ready to handle requests
</pre>
<p>If you&#8217;d like to get a little less noisy and skip debug mode but still run in the foreground, you can use April 2008&#8242;s famous addition to plone.recipe.zope2instance:</p>
<p style="padding-left: 30px;">
<pre style="padding-left: 30px;">aclark@Alex-Clarks-MacBook-Pro:~/Developer/public-plone/ &gt; bin/instance console
</pre>
<p>Sweet, blissful, silent running Plone.</p>
<p>Happy Plone 4&#8242;ing all!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/01/07/no-really-you-can-just-use-buildout-to-install-plone/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Yup, this blog is now powered by WordPress.</title>
		<link>http://blog.aclark.net/2010/01/06/yup-this-blog-is-now-powered-by-wordpress/</link>
		<comments>http://blog.aclark.net/2010/01/06/yup-this-blog-is-now-powered-by-wordpress/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 03:18:06 +0000</pubDate>
		<dc:creator>aclark</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blog.aclark.net/?p=7</guid>
		<description><![CDATA[(Or, &#8220;How I learned to stop worrying and use the right tool for the job.&#8221;) My first blog entry was well over two years ago. I&#8217;ve learned enough Plone since then to know that I hardly know anything! Toward the &#8230; <a href="http://blog.aclark.net/2010/01/06/yup-this-blog-is-now-powered-by-wordpress/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>(Or, &#8220;How I learned to stop worrying and use the right tool for the job.&#8221;)</strong></p>
<p>My first blog entry was <a href="http://old.aclark.net/team/aclark/blog/first-post">well over two years ago</a>. I&#8217;ve learned enough Plone since then to know that I hardly know anything! Toward the end of 2009, I begin to realize that I was doing way too much, and not getting anything done as a result. So I began offloading services wherever I could to free or low cost service providers; I can&#8217;t tell you how much happier I have been since then.</p>
<p>Interestingly, after waffling over the use of these services for years, when push came to shove I had no problem choosing the right tool for the job. It didn&#8217;t matter so much what selection I made. The fact that I offloaded the responsibility was the most important thing.</p>
<p>Which brings me back to the subject at hand. I love <a href="http://plone.org">Plone</a>. I think it is great software. I want to make it better. In order to do that I need to broaden my horizons and use the right tool for the job, and hopefully bring those experiences back to Plone!</p>
<p>Hence, introducing my new WordPress-powered blog <strong>about</strong> Plone. I&#8217;m still using Plone for <a href="http://aclark.net">aclark.net</a> (of course). I just don&#8217;t want to &#8220;manage&#8221; the blog software anymore. I want it done for me so I can focus on other things. Since WordPress is so obviously the leading &#8220;best&#8221; weblog software, it was an easy decision to make.</p>
<p>(Of course, this blog was shipped using <a href="http://svn.aclark.net/trac/public/browser/buildout/lamp/trunk">Python software</a>.)</p>
<p>Lastly, I&#8217;ll say this. I want to be more prolific in 2010, and I&#8217;m hoping that using the right tool for the job will help me achieve that. It has worked wonders so far.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.aclark.net/2010/01/06/yup-this-blog-is-now-powered-by-wordpress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
