<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Stuff &amp; Content</title><link>http://www.stuffandcontent.com/</link><description>Stuff &amp;amp; Content about javascript, AJAX, PHP, eZ publish, CSS, XHTML, Content management and web development.</description><language>en</language><managingEditor>noreply@blogger.com (Bruce Morrison)</managingEditor><lastBuildDate>Wed, 28 Oct 2009 16:43:39 PDT</lastBuildDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">55</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/SuffandNonsense" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item><title>Review - eZ Publish 4: Enterprise Web Sites Step-by-Step</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/HlZ7rmrbPFU/review-ez-publish-4-enterprise-web.html</link><category>ezpublish</category><category>book review</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Fri, 23 Oct 2009 03:45:58 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-6852494901584034230</guid><description>&lt;img id="ltwb" src="http://docs.google.com/a/stuffandcontent.com/File?id=dzccrsd_12f57jz5wc_b" style="float: right; height: 123px; margin-left: 1em; margin-right: 0pt; width: 100px;" /&gt;It's been a while since there's been a &lt;a href="http://www.ez.no/" id="awf9" title="eZ Publish"&gt;eZ Publish&lt;/a&gt; release from &lt;a href="http://www.packtpub.com/?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_00106" id="zo8s" title="Packt Publishing"&gt;Packt Publishing&lt;/a&gt; but the long awaited &lt;a href="http://www.packtpub.com/ez-publish-4-enterprise-web-sites-step-by-step?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_001069" id="j282" title="eZ Publish 4: Enterprise Web Sites Step-by-Step"&gt;eZ Publish 4: Enterprise Web Sites Step-by-Step&lt;/a&gt; has finally hit the shelves.&amp;nbsp; Written by &lt;a href="http://www.packtpub.com/author_view_profile/id/301" id="uh-:" title="Francesco Fullone"&gt;Francesco Fullone&lt;/a&gt; and &lt;a href="http://www.packtpub.com/author_view_profile/id/300" id="fegl" title="Francesco Trucchia"&gt;Francesco Trucchia&lt;/a&gt; it spans 292 pages and details building a site using eZ Publish 4 from server preparation, eZ Publish installation, implementation and deployment. A imaginary magazine site is used to illustrate examples throughout the book.&amp;nbsp; A number of topics are covered that will help those new to eZ Publish get up and running.&lt;br /&gt;
&lt;br /&gt;
The book is based on eZ publish 4.0.1 and while the current version of eZ publish is 4.2.0 the content is still relevant and there are several notes that refer to features and changes in newer versions. &lt;br /&gt;
&lt;br /&gt;
Packt has provided &lt;b&gt;Chapter 6 - Creating a Design&lt;/b&gt; as a &lt;a href="http://www.packtpub.com/files/1640-ez-publish-4-sample-chapter-6-creating-a-design.pdf" id="sqc5" title="free sample download (PDF)"&gt;&lt;b&gt;free&lt;/b&gt; sample download (PDF)&lt;/a&gt;. A &lt;a href="http://www.packtpub.com/ez-publish-4-enterprise-web-sites-step-by-step?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_001069#indetail" id="xcl8" title="chapter overview"&gt;chapter overview&lt;/a&gt; is available on the &lt;a href="http://www.packtpub.com/ez-publish-4-enterprise-web-sites-step-by-step?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_001069" id="lcz1" title="book site"&gt;book site&lt;/a&gt; as well as a &lt;a href="http://www.packtpub.com/view_popup/page/ez-publish-4-enterprise-web-sites-step-by-step-table-of-contents" id="yq.d" title="full table of contents"&gt;full table of contents&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
This is a review of the PDF version of the book provided by &lt;a href="http://www.packtpub.com/?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_00106" id="rue7" title="Packt Publishing"&gt;Packt Publishing.&lt;/a&gt; &lt;br /&gt;
&lt;h2&gt;Text and structure&lt;br /&gt;
&lt;/h2&gt;&lt;a href="http://www.packtpub.com/ez-publish-4-enterprise-web-sites-step-by-step?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_001069" id="m6nr" title="eZ Publish 4: Enterprise Web Sites Step-by-Step"&gt;eZ Publish 4: Enterprise Web Sites Step-by-Step&lt;/a&gt; is not an enjoyable book, in fact I found it quite painful.&amp;nbsp; The text does not read well and would appear only to have been given the briefest of edits.&amp;nbsp; Some examples of this are:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;&amp;nbsp;The Achilles' heel of eZ Publish is the template system subframework that cannot, and should not, be overrated, and that is used as a true programming language.&lt;br /&gt;
&lt;/blockquote&gt;and&lt;br /&gt;
&lt;blockquote&gt;When we translate a content object, its main URL will change accordingly. But we should only need to create aliases for a single language. For example, we should create an alias for the contact page in the staff section of the site only for the Italian version.&lt;br /&gt;
&lt;/blockquote&gt;Unfortunately these are not isolated examples.&amp;nbsp; I found myself having to re-read passages several times to understand what was being said.&lt;br /&gt;
&lt;br /&gt;
The text overuses words like "moreover" (33 instances), is not consistent in it's use of terminology and formatting.&amp;nbsp; The authors make use of the "we" as if they are coming on the journey with the reader instead of instructing them.&amp;nbsp; There is a explanatory "Note" on breadcrumbs that appears twice. I would expected that these types of issues would have been picked up in the editing process.&amp;nbsp; The problem is that the number and severity of issues distract the reader from the knowledge the authors are tyring to convey.&lt;br /&gt;
&lt;br /&gt;
Some chapters just do not deliver what the chapter titles imply. Chapter 5, titled "Creating an Extension" details how to create an empty extension (directory structure, files). The details of creating the actual content of the extension is found in subsequent chapters.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The structure of the book is also problematic. At the end of Cchapter 5 the authors take the reader through creating a packaged extension, while at this stage of the book we only have an empty extension.&amp;nbsp; I don't understand why this information was not moved towards the end of the book.&amp;nbsp; Another example of this is that the first screenshot of the admin interface login screen appears in Chapter 7, where the first point the user will have come across the screen is in Chapter 3.&lt;br /&gt;
&lt;br /&gt;
The requirements of the magazine site that is being used as an example are peppered throughout the book.&amp;nbsp; Giving the users a chapter that detailed the requirements, site-map, write frames and mockups up front would better mimic a real world development process help in explaining how this is to be achieved in the chapters where the site is implemented.&lt;br /&gt;
&lt;h2&gt;Image Quality&lt;/h2&gt;The screen shots in the book are not clear and difficult to read. The majority are not annotated with explanation of the image left to the accompanying text.&amp;nbsp; Images that are annotated only have highlighted regions (circled in red) and are not labeled.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
There are a number of images that are acknowledged in the accompanying text to come from the the "official eZ System documentation" &lt;i&gt;[sic]&lt;/i&gt; according to the footer on the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_x/concepts_and_basics/content_management/the_content_object" id="z4uz" title="page in which they appear"&gt;page in which they appear&lt;/a&gt;, are licenced under the &lt;a href="http://www.gnu.org/copyleft/fdl.html" id="cwb-" title="GNU Free Documentation Licence"&gt;GNU Free Documentation Licence&lt;/a&gt;.&amp;nbsp; The copyright page in the book makes no mention of these images.&amp;nbsp; I'm not sure if eZ Systems granted permission for their use but I would have expected some official acknowledgement on the copyright page.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The use of these images (regardless of acknowledgement) is disappointing as the book doesn't present anything new. If the reader has read the official documentation may feel ripped off on recognising them. There aren't many images aside from screen shots in the book and more diagrams would have helped better explain some the the underlying structures that are essential to understand. &lt;br /&gt;
&lt;h2&gt;Technical Aspects&lt;br /&gt;
&lt;/h2&gt;Technically the book is OK with a couple of places where best practices are not followed.&amp;nbsp; One example is using a numerical attribute id instead of an attribute identifier string when fetching related objects (the latter is more easily understood and more portable).&amp;nbsp; Some statements are quite strong (saying that $node.children &lt;b&gt;must&lt;/b&gt; be used instead of using a fetch to retrieve the children of the current node) and may be true in some circumstances but would not be considered a rule that &lt;b&gt;must&lt;/b&gt; be followed always.&lt;br /&gt;
&lt;br /&gt;
Some interesting concepts of using separate siteaccesses for development, staging and production are raised but I would have liked to see some more detail on the development workflows around these.&lt;br /&gt;
&lt;br /&gt;
The examples used throughout the book rely on command line access to a Unix based system specifically Debian &amp;amp; Red Hat Linux.&amp;nbsp; If you are not familiar with Unix then you may have trouble following some examples especially if any unexpected errors occur.&amp;nbsp; I suspect that Windows users would struggle.&lt;br /&gt;
&lt;br /&gt;
The last chapter (12) on Deployment focuses on using the 3rd party &lt;a href="http://projects.ez.no/ez_deploy" id="j6wh" title="eZ Deploy"&gt;eZ Deploy&lt;/a&gt; extension.&amp;nbsp; This seems to be a strange inclusion for this book as I would have expected details of using FTP or rSync naively to be detailed in this chapter.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
The Deployment chapter includes the use of &lt;a href="http://seleniumhq.org/" id="jhut" title="Selenium"&gt;Selenium&lt;/a&gt; and &lt;a href="http://www.phpunit.de/" id="rdhi" title="PHPUnit"&gt;PHPUnit&lt;/a&gt; for functional testing but doesn't detail testing of the functionality that has been built in the example.&amp;nbsp; This is where the inclusion of a a "Requirements" chapter could have been used as the basis for quality assurance with example tests being written to demonstrate how specific requirements can be tested with these tools.&lt;br /&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;In conclusion there is some good technical information in &lt;a href="http://www.packtpub.com/ez-publish-4-enterprise-web-sites-step-by-step?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_001069" id="lt_d" title="eZ Publish 4: Enterprise Web Sites Step-by-Step"&gt;eZ Publish 4: Enterprise Web Sites Step-by-Step&lt;/a&gt; but the language and structure make it difficult to follow. New users to eZ Publish may end up more confused than when they started, while as a reference the book isn't ideal as the chapter titles don't always deliver what is expected.&lt;br /&gt;
&lt;br /&gt;
It should be pointed out that the issues with the book do not lie with the authors but with the editors at &lt;a href="http://www.packtpub.com/?utm_source=stuffandcontent.com&amp;amp;utm_medium=bookrev&amp;amp;utm_content=blog&amp;amp;utm_campaign=mdb_00106" id="m67y" title="Packt"&gt;Packt&lt;/a&gt;.&amp;nbsp; I'm a little baffled that the book was published as it is and would believe if told that I've received a early draft.&amp;nbsp; I'm not sure that I'd be very pleased if I'd paid for a copy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-6852494901584034230?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vGYFe7nGL9iTUCdn9Wz4S11eR0E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vGYFe7nGL9iTUCdn9Wz4S11eR0E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vGYFe7nGL9iTUCdn9Wz4S11eR0E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vGYFe7nGL9iTUCdn9Wz4S11eR0E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/HlZ7rmrbPFU" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-23T20:45:58.642+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/10/review-ez-publish-4-enterprise-web.html</feedburner:origLink></item><item><title>eZ Publish Admin to get some loving</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/3OoVSmlionQ/ez-publish-admin-interface-overhaul.html</link><category>rant</category><category>usability</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 13 Oct 2009 02:22:43 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-6864927398457668930</guid><description>&lt;img id="ofvj" style="width: 223px; height: 240px; float: right; margin-left: 1em; margin-right: 0pt;" src="http://docs.google.com/a/stuffandcontent.com/File?id=dzccrsd_7cfq9bxc2_b" /&gt;&lt;br /&gt;The current eZ Publish admin interface first appeared almost 5 years ago in version 3.5 ( released Dec 2004 ).  At the time it was a massive improvement from the previous version.  Since it's release there have been many advances in web technologies, javascript libraries and browser support.&lt;br /&gt;&lt;br /&gt;When the eZ publish &lt;a title="roadmap" href="http://ez.no/ezpublish/roadmap" id="f.l8"&gt;roadmap&lt;/a&gt; was updated in July this year it indicated that version eZ Publish 4.3 (due 30 March 2010) will include a redesign of the admin interface. From the roadmap:&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;eZ Publish Admin interface&lt;br /&gt;&lt;/p&gt;Redesign of the current User Interface including :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;More Ajax based usability features&lt;/li&gt;&lt;li&gt;Revamped look and feel&lt;/li&gt;&lt;li&gt;Improved management of Object States&lt;/li&gt;&lt;li&gt;Dashboard&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;A &lt;a title="good discussion of the admin interface" href="http://ez.no/developer/forum/suggestions/2_years_ago" id="y-zm"&gt;good discussion of the admin interface&lt;/a&gt; occurred in the forums originating in Jan 2009 and was reinvigorated after the roadmap announcement.  The thread is a rather long one and winds it's way around a number of topics (JavaScript libraries, projects/contributions site, admin interface) but is well worth reading.  The issue of JavaScript libraries has largely been addressed in the &lt;a title="ezjscore project" href="http://projects.ez.no/ezjscore" id="jvaa"&gt;ezjscore project&lt;/a&gt; (which will be bundled as part of eZ 4.3) but other issues of seems largely up in the air.&lt;br /&gt;&lt;br /&gt;&lt;span class="fn"&gt;Last week &lt;a title="Morten Zetlitz" href="http://twitter.com/wwater" id="w6u4"&gt;Morten Zetlitz&lt;/a&gt; tweeted from the Nordic eZ Partner Meeting &lt;/span&gt;"&lt;span class="status-body"&gt;&lt;a title="Itchy fingers after eZ Systems promises a new admin UI by 2010. We need something like Drupal has, an eZ UX initiative." href="http://twitter.com/wwater/status/4713629611" id="q:bg"&gt;Itchy fingers after eZ Systems promises a new admin UI by 2010. We need something like Drupal has, an eZ UX initiative.&lt;/a&gt;&lt;span class="entry-content"&gt;" The project he is referring to is the &lt;/span&gt;&lt;/span&gt;&lt;a title="Drupal 7 UX Project" href="http://www.d7ux.org/" id="hb-l"&gt;Drupal 7 UX Project&lt;/a&gt; which is a concerted effort to improve usability. The project has the following principles:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Make the most frequent tasks easy and less frequent tasks achievable &lt;/li&gt;&lt;li&gt;Design for the 80%&lt;/li&gt;&lt;li&gt;Privilege the Content Creator&lt;/li&gt;&lt;li&gt;Make the default settings smart&lt;/li&gt;&lt;/ol&gt;I agree with Morten in that a &lt;b&gt;eZ Publish UX Project&lt;/b&gt; would be a great idea. Unlike the Drupal project an eZ Publish one should focus on more than the Content Creator. The eZ publish admin interface is the place where the majority of content creation, user management and site configuration takes place.  It's used by a number of people playing a number of roles to&lt;br /&gt;perform many varied tasks. It's been around for quite some time so there is quite a bit of experience and interface knowledge out there. Fundamental changes need to be made with caution to avoid incurring retraining for existing users.&lt;br /&gt;&lt;br /&gt;I see a  &lt;b&gt;eZ Publish UX Project &lt;/b&gt;fleshing out the roadmap list &amp;amp; requirements from the forums to provide an interface style guide as well as providing a user centered information architecture.&lt;br /&gt;&lt;br /&gt;One of the UX people involved in the project, &lt;a title="Leisa Reichelt" href="http://www.disambiguity.com/" id="j7m-"&gt;Leisa Reichelt&lt;/a&gt; has some &lt;a title="insightful observations" href="http://www.disambiguity.com/designing-for-the-wrong-target-audience/" id="mi2_"&gt;insightful observations&lt;/a&gt; of the Drupal process, but I suspect that given that eZ Publish is a very different project that these may not apply, in fact it's likely to have a different set of issues all together.&lt;br /&gt;&lt;br /&gt;If you like the idea of an &lt;b&gt;eZ Publish UX Project&lt;/b&gt; drop me an &lt;a title="email" href="mailto:blog@stuffandcontent.com" id="ufk0"&gt;email&lt;/a&gt; or comment on the blog.&lt;br /&gt;&lt;br /&gt;&lt;a title="Tony Wood" href="http://twitter.com/tonywood" id="dr.-"&gt;Tony Wood&lt;/a&gt; from &lt;a title="Vision with Technology" href="http://www.visionwt.com/" id="q7fu"&gt;Vision with Technology&lt;/a&gt; has set up a &lt;a title="survey" href="https://www.surveymonkey.com/s.aspx?sm=XdceP232zMtVeQApNduLrg_3d_3d" id="pz83"&gt;survey&lt;/a&gt; to collect information which will be presented to eZ as feedback.  I encourage you to fill out the &lt;a title="survey" href="https://www.surveymonkey.com/s.aspx?sm=XdceP232zMtVeQApNduLrg_3d_3d" id="pw95"&gt;survey&lt;/a&gt;, but also post to your ideas to the forum or your blogs and comment here.&lt;br /&gt;&lt;br /&gt;This post has turned out to be more about background information and a call to action than I'd first intended.  I've got a bunch of notes on ideas for the Admin interface that I'll turn into a blog post which I'll hopefully get up in the next couple of days.&lt;br /&gt;&lt;br /&gt;Photo Credit: &lt;a title="http://www.flickr.com/photos/captkodak/373622275/" href="http://www.flickr.com/photos/captkodak/373622275/" id="l7z3"&gt;http://www.flickr.com/photos/captkodak/373622275/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-6864927398457668930?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XtTM9BmEaETg6F7QSKZGWGmp88U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XtTM9BmEaETg6F7QSKZGWGmp88U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XtTM9BmEaETg6F7QSKZGWGmp88U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XtTM9BmEaETg6F7QSKZGWGmp88U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/3OoVSmlionQ" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-13T19:22:43.633+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/10/ez-publish-admin-interface-overhaul.html</feedburner:origLink></item><item><title>Adding negative filters to eZ Find</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/JBcseGeyFHE/adding-negative-filters-to-ez-find.html</link><category>ez publish</category><category>search</category><category>eZ Find</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Mon, 05 Oct 2009 01:05:26 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4435297413022744888</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;I've been doing some work with &lt;a href="http://ez.no/ezfind/"&gt;eZ Find&lt;/a&gt; recently and have come across an issue that has also &lt;a href="http://ez.no/developer/forum/extensions/ez_find/negative_queries"&gt;troubled others&lt;/a&gt;.  While eZ Find includes some &lt;a href="http://ez.no/doc/extensions/ez_find/2_1/customization/template_fetch_functions#Filter"&gt;powerful filtering options &lt;/a&gt;there's no support for negative filters.&lt;br /&gt;&lt;br /&gt;This can easily remedied by adding "NOT" as an allowed Boolean Operator and adding specific handling of NOT to the final query construction to &lt;span style="font-family:monospace;"&gt;ezfind/classes/ezfezpsolrquerybuilder.php&lt;/span&gt;. This small change allows NOT to be used in the same manor as the existing AND and OR operators.&lt;br /&gt;&lt;br /&gt;An &lt;a href="http://issues.ez.no/IssueView.php?Id=15617&amp;amp;activeItem=1"&gt;enhancement request&lt;/a&gt; has been lodged that includes the following patch.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;diff --git a/classes/ezfezpsolrquerybuilder.php b/classes/ezfezpsolrquerybuilder.php&lt;br /&gt;index 3c997dc..f30813c 100755&lt;br /&gt;--- a/classes/ezfezpsolrquerybuilder.php&lt;br /&gt;+++ b/classes/ezfezpsolrquerybuilder.php&lt;br /&gt;@@ -852,7 +852,10 @@ class ezfeZPSolrQueryBuilder&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;-        return implode( " $booleanOperator ", $filterQueryList );&lt;br /&gt;+        if (  $booleanOperator == 'NOT' )&lt;br /&gt;+            return ' NOT ( ' . implode(   " OR ", $filterQueryList ) .')';&lt;br /&gt;+        else&lt;br /&gt;+            return implode(  " $booleanOperator ", $filterQueryList );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;@@ -1590,5 +1593,7 @@ ezfeZPSolrQueryBuilder::$FindINI = eZINI::instance( 'ezfind.ini' );&lt;br /&gt;ezfeZPSolrQueryBuilder::$allowedBooleanOperators = array( 'AND',&lt;br /&gt;                                                      'and',&lt;br /&gt;                                                      'OR',&lt;br /&gt;-                                                          'or' );&lt;br /&gt;+                                                          'or',&lt;br /&gt;+                                                          'NOT',&lt;br /&gt;+                                                          'not' );&lt;br /&gt;?&amp;gt;&lt;/code&gt;&lt;br /&gt;To fetch results where the &lt;b&gt;myattr&lt;/b&gt; attribute of &lt;b&gt;myclass&lt;/b&gt; is not equal to 0 you can write:&lt;br /&gt;&lt;code&gt;{def $results = fetch('ezfind', 'search', hash(&lt;br /&gt;                            'query', $query,&lt;br /&gt;                            'filter', array('not', '&lt;b&gt;myclass&lt;/b&gt;/&lt;b&gt;myattr&lt;/b&gt;:0')&lt;br /&gt;))}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;This query will return any content that where &lt;b&gt;myclass&lt;/b&gt;/&lt;b&gt;myattr != 0&lt;/b&gt;. This will include objects from other classes, so to limit the results to object of myclass you need to add a class_id filter:&lt;br /&gt;&lt;code&gt;{def $results = fetch('ezfind', 'search', hash(&lt;br /&gt;                            'query', $query,&lt;br /&gt;                            'filter', array('not', '&lt;b&gt;myclass&lt;/b&gt;/&lt;b&gt;myattr&lt;/b&gt;:0'),&lt;br /&gt;                                'class_id', '&lt;b&gt;myclass&lt;/b&gt;')&lt;br /&gt;))}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Great to see the &lt;a href="http://ez.no/developer/forum/extensions/ez_find/negative_queries"&gt;documentation for eZ Find 2.1&lt;/a&gt; make it into HTML format!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4435297413022744888?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4ORiMEomZjMfALY55_Vz7TNcpBY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4ORiMEomZjMfALY55_Vz7TNcpBY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4ORiMEomZjMfALY55_Vz7TNcpBY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4ORiMEomZjMfALY55_Vz7TNcpBY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/JBcseGeyFHE" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-05T18:05:26.828+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/10/adding-negative-filters-to-ez-find.html</feedburner:origLink></item><item><title>Nominate eZ Publish for 2009 Packt Open Source CMS Awards</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/o42vT1rsdpw/nominate-ez-publish-for-2009-packt-open.html</link><category>Open Source</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Wed, 09 Sep 2009 01:00:03 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4898517718567410865</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;div style="float: right;" class="zemanta-image"&gt;&lt;a title="Non-free, could qualify as fair use" href="http://en.wikipedia.org/wiki/Image:PacktLogo.jpg"&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/en/2/2a/PacktLogo.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;small&gt;Image via &lt;a href="http://en.wikipedia.org/wiki/Image:PacktLogo.jpg"&gt;Wikipedia&lt;/a&gt;&lt;/small&gt;&lt;/div&gt;Time is running out to nominate eZ Publish for this years &lt;a href="http://www.packtpub.com/award"&gt;Packt Open Source CMS Awards&lt;/a&gt;.  Help to get &lt;a href="http://ez.no/ezpublish"&gt;eZ Publish&lt;/a&gt; into the final five by clicking on the links below and supplying your name and email! (The links auto select eZ Publish)&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.packtpub.com/nominate-overall-open-source-cms-award-winner?cms=ez+publish"&gt;Nominate eZ Publish for Best Overall Open Source CMS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.packtpub.com/nominate-best-open-source-php-cms?cms=ez+publish"&gt;Nominate eZ Publish for Best PHP Open Source CMS&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://www.packtpub.com/nominate-best-open-source-php-cms?cms=ez+publish"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4898517718567410865?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EEWa7epISDZATfby5keNJxmB738/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EEWa7epISDZATfby5keNJxmB738/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/EEWa7epISDZATfby5keNJxmB738/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EEWa7epISDZATfby5keNJxmB738/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/o42vT1rsdpw" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-09T18:00:03.716+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/09/nominate-ez-publish-for-2009-packt-open.html</feedburner:origLink></item><item><title>eZ Publish 4.2 to include Star Rating module</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/tOeQScM5NYk/ez-publish-42-to-include-star-rating.html</link><category>ez publish</category><category>star rating</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Thu, 27 Aug 2009 01:00:01 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4426653501840015776</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Prior to this years eZ conference I was approached by eZ systems to allow for my &lt;a href="http://www.stuffandcontent.com/2008/02/new-rating-extension-for-ez-publish.html"&gt;Star Rating module&lt;/a&gt; to be included in the eZ Publish distribution. All and all it was a pretty painless process that simply required the signing of the &lt;a href="http://ez.no/ezfind/contributing/cla"&gt;Contributor Licence Agreement (CLA)&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The CLA is an interesting legal document as it doesn't specify the particular piece of software that it refers to.  I was informed that this is by design as it's intended to be a general agreement where specifics are communicated seperately.&lt;br /&gt;&lt;br /&gt;eZ Systems have created a new project for &lt;a href="http://projects.ez.no/ezstarrating"&gt;eZ Star Rating&lt;/a&gt; on the eZ Projects site where a number of improvments have been made, including:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Given it the eZ treatment, better comments, cleaned up code formatting&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Removed references for full 4.x compatability&lt;/li&gt;&lt;li&gt;Changed from &lt;a href="http://projects.ez.no/ezxajax"&gt;xajax&lt;/a&gt; to &lt;a href="http://projects.ez.no/ezjscore"&gt;ezjscore&lt;/a&gt; + yui3 for ajax calls&lt;/li&gt;&lt;li&gt;Merged rating code from &lt;a href="http://projects.ez.no/ezcore"&gt;ezcore&lt;/a&gt; / ezyui&lt;/li&gt;&lt;li&gt;Code cleanup (cs &amp;amp; phpdoc and code name conventions)&lt;/li&gt;&lt;li&gt;Added fetch operators&lt;/li&gt;&lt;li&gt;Added postgresql support&lt;/li&gt;&lt;li&gt;Added internationalisation&lt;/li&gt;&lt;/ul&gt;The upshot is that the&lt;a href="http://www.stuffandcontent.com/2008/02/new-rating-extension-for-ez-publish.html"&gt; Star Rating module&lt;/a&gt; will remain under the &lt;a href="http://www.gnu.org/licenses/gpl-2.0.html"&gt;GPL&lt;/a&gt;, I retain copyright of the original work and it's now installed as part of&lt;a href="http://ez.no/ezflow"&gt; eZ Flow&lt;/a&gt;  in eZ publish 4.2 (of cource it can still be used on it's own). You can check it out in &lt;a href="http://ez.no/developer/news/ez_publish_4_2_0alpha1_released"&gt;eZ Publish 4.2.0alpha1&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://projects.ez.no/ezstarrating"&gt;eZ Projects site&lt;/a&gt; states&lt;br /&gt;&lt;blockquote&gt;NOTE: THIS IS TEMPORARY PROJECT. WILL BE MERGE WITH http://projects.ez.no/starrating&lt;br /&gt;&lt;/blockquote&gt;I haven't had any communication with eZ Systems regarding this matter and I can't see the point in doing a merge. I don't intend to make any further changes to the original so from eZ Publish 4.2 onwards (there appears to be a reliance on &lt;a href="http://projects.ez.no/ezstarrating/subversion/25"&gt;core changes that are in eZ publish 4.2&lt;/a&gt;)  use the &lt;a href="http://projects.ez.no/ezstarrating"&gt;eZ publish version&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4426653501840015776?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/w2RBnBrOzSGdLqh_TUiMIx42vxU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w2RBnBrOzSGdLqh_TUiMIx42vxU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/w2RBnBrOzSGdLqh_TUiMIx42vxU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w2RBnBrOzSGdLqh_TUiMIx42vxU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/tOeQScM5NYk" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-27T18:00:01.770+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/08/ez-publish-42-to-include-star-rating.html</feedburner:origLink></item><item><title>eZ Publish 4.2 User module to get workflow triggers</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/wbc0W5b0pdE/ez-publish-42-user-module-to-get.html</link><category>tips</category><category>ez publish</category><category>workflow</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 25 Aug 2009 23:46:12 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-534273086056896161</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;The upcoming eZ Publish 4.2 (&lt;a href="http://ez.no/ezpublish/roadmap"&gt;due September 29th&lt;/a&gt;) will add a bunch of workflow triggers to the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user"&gt;user module&lt;/a&gt;. Workflows will be able to be attached to the following views:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/activate"&gt;Activation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/password"&gt;Change Password&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/forgotpassword"&gt;Forgot Password&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/preferences"&gt;Preferences&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/setting"&gt;Set Preferences&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;This allows for custom workflow events to be run before and after each of these operations, resulting in a  massive increase in the flexibility when interacting with users.&lt;br /&gt;&lt;br /&gt;Some potential uses that come to mind:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Emailing users upon activation&lt;/li&gt;&lt;li&gt;Creating user specific content upon activation&lt;/li&gt;&lt;li&gt;Emailing users when they change their password&lt;/li&gt;&lt;/ul&gt;An effect of these changes is that  code for these actions is isolated into a &lt;a href="http://pubsvn.ez.no/websvn2/filedetails.php?repname=nextgen&amp;amp;path=%2Ftrunk%2Fkernel%2Fuser%2Fezuseroperationcollection.php&amp;amp;rev=23884"&gt;class&lt;/a&gt; allowing  calls  to be easily made from elsewhere. Prior to these changes to activate a user outside of the user/activate view you would have replicate code contained in the view. This will also make it easier to test.&lt;br /&gt;&lt;br /&gt;I would have loved to see triggers added for &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/login"&gt;login&lt;/a&gt; and &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/reference/modules/user/views/logout"&gt;logout&lt;/a&gt; but I suspect that would be a more involved exercise.&lt;br /&gt;&lt;br /&gt;Unfortunately this enhancement did not make it into &lt;a href="http://ez.no/developer/news/ez_publish_4_2_0alpha1_released"&gt;eZ Publish 4.2.0alpha1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;SVN changes: &lt;a href="http://pubsvn.ez.no/websvn2/revision.php?repname=nextgen&amp;amp;path=%2F&amp;amp;rev=23884"&gt;http://pubsvn.ez.no/websvn2/revision.php?repname=nextgen&amp;amp;path=%2F&amp;amp;rev=23884&lt;/a&gt;&lt;br /&gt;Changes were based on the enhancement request &lt;a href="http://issues.ez.no/IssueView.php?Id=14882"&gt;http://issues.ez.no/IssueView.php?Id=14882&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-534273086056896161?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QY24oqa_Q5LhrAcskYsu4w1r_2Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QY24oqa_Q5LhrAcskYsu4w1r_2Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QY24oqa_Q5LhrAcskYsu4w1r_2Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QY24oqa_Q5LhrAcskYsu4w1r_2Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/wbc0W5b0pdE" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-26T16:46:12.147+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/08/ez-publish-42-user-module-to-get.html</feedburner:origLink></item><item><title>PHPList extension upgraded for eZ Publish 4.x</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/WMyyDX0dtjk/phplist-extension-upgraded-for-ez.html</link><category>ezpublish</category><category>phplist</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 04 Aug 2009 00:05:26 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4918617929884259432</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;img src="http://www.phplist.com/images/phplist-logo.png" style="max-width: 800px; float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" /&gt; Thanks to sponsorship by &lt;a href="http://www.dbinformatics.com.au/"&gt;DB Informatics&lt;/a&gt; the &lt;a href="http://projects.ez.no/phplist"&gt;PHPList subscription synchronise extension&lt;/a&gt; has been upgraded to work with PHP5 and eZ Publish 4.x&lt;br /&gt;&lt;br /&gt;This extension allows for the addition of a &lt;span style="font-style: italic;"&gt;Subscribe to list&lt;/span&gt; attribute to be added to the User content class.  Users are able to subscribe or unsubscribe from &lt;a href="http://www.phplist.com/"&gt;PHPList&lt;/a&gt; mailing list by editing their profile.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4918617929884259432?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oPHQFDfOKTH0dgrPJdQiEETPaDw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oPHQFDfOKTH0dgrPJdQiEETPaDw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oPHQFDfOKTH0dgrPJdQiEETPaDw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oPHQFDfOKTH0dgrPJdQiEETPaDw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/WMyyDX0dtjk" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-04T17:05:26.714+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2009/08/phplist-extension-upgraded-for-ez.html</feedburner:origLink></item><item><title>New reCAPTCHA release for eZ Publish</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/Pp7XC0ru--4/new-recaptcha-release-for-ez-publish.html</link><category>ez conference</category><category>ez publish</category><category>reCAPTCHA</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Wed, 22 Apr 2009 22:25:18 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-6466855276262718225</guid><description>Thanks to &lt;a href="http://serwatka.net/"&gt;Łukasz Serwatka&lt;/a&gt; for pointing out some &lt;a href="http://projects.ez.no/recaptcha/forum/general/js_issue_with_ie7"&gt;issues with JavaScript in IE7&lt;/a&gt;.  I've applied the patch and released new versions for both &lt;a href="http://ez.no/developer/contribs/applications/recaptcha_ez3"&gt;eZ 3.x&lt;/a&gt; &amp;amp; &lt;a href="http://ez.no/developer/contribs/applications/recaptcha_ez4"&gt;eZ 4.x&lt;/a&gt; both on the contributions section of the main ez.no site and at &lt;a href="http://projects.ez.no/recaptcha"&gt;projects.ez.no&lt;/a&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ez.no/var/ezno/storage/images/company/news/ez_awards_2008_prize_winners/2_award_winner_web__1/1604791-1-eng-GB/2_award_winner_web_medium.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 150px; height: 149px;" src="http://ez.no/var/ezno/storage/images/company/news/ez_awards_2008_prize_winners/2_award_winner_web__1/1604791-1-eng-GB/2_award_winner_web_medium.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;It's pretty old news now but the reCAPTCHA extension won the "Contribution of the year" at this years &lt;a href="http://ez.no/company/news/ez_awards_2008_prize_winners"&gt;eZ Awards&lt;/a&gt;!  A little embarrassing to tell the truth, given that the extension simply exposes the &lt;a href="http://recaptcha.net/"&gt;reCAPTCHA system&lt;/a&gt; which does all the hard work.&lt;br /&gt;&lt;br /&gt;If you use the extension please drop a comment on the blog and link to your site.  It's great to win awards but even better to see the extension in action.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-6466855276262718225?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/S4wIhQeMBB4lcHwM8k8jvN_ktWc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S4wIhQeMBB4lcHwM8k8jvN_ktWc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/S4wIhQeMBB4lcHwM8k8jvN_ktWc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S4wIhQeMBB4lcHwM8k8jvN_ktWc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/Pp7XC0ru--4" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-23T15:25:18.663+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/12/new-recaptcha-release-for-ez-publish.html</feedburner:origLink></item><item><title>eZtip: Character Encoding in Templates</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/tKAN57C-oaU/eztip-character-encoding-in-templates.html</link><category>ez publish</category><category>eztips</category><category>translations</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Mon, 08 Dec 2008 05:36:44 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-3606614528408908255</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a title="Idea (by annais)" href="http://flickr.com/photos/annais/9335897/"&gt;&lt;img alt="Idea (by annais)" title="Idea (by annais)" src="http://farm1.static.flickr.com/8/9335897_f55c8f30c5_m.jpg" style="float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" height="240" width="182" /&gt;&lt;/a&gt;Recently I was working on a multilingual site and had to add some static text in a number of languages. I added the supplied text and then viewed the resulting page.  Having previously lost many hours of my life to dealing with character encoding issues I momentarily regretted I'd gotten out of bed when confronted with mess that was before me.&lt;br /&gt;&lt;br /&gt;Quickly regaining my composure I realised that eZ Publish must be doing the transformation and with a bit of digging I discovered that by default templates are seen by the system as being in iso-8859-1 and are converted into utf-8 for display.&lt;br /&gt;In my case eZ Publish was doing what it was told and converting the already utf-8 characters in utf-8.&lt;br /&gt;&lt;br /&gt;There are 2 options for telling eZ publish the character encoding of a template.  Firstly you can configure eZ publish that all templates are utf-8 by editing template.ini.append.php in overrides for the entire site or your specific siteaccess to limit  the effect.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;[CharsetSettings]&lt;br /&gt;# The charset to use if no charset is specified in the template&lt;br /&gt;DefaultTemplateCharset=utf-8&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The other option is to specifically indicate a template as being encoded using utf-8.  This involves adding the following line to the top of the template.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;{*?template charset=utf-8?*}&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;In end I utilised the latter method. As I was making a small change to a large site that I was not familiar with, the specific method allowed for the change to be limited the effected template only.&lt;br /&gt;&lt;br /&gt;I must admit I was surprised that these defaults are in place, given that eZ moved to a Unicode default some time ago. From the comments on &lt;a href="http://issues.ez.no/IssueView.php?Id=12269&amp;amp;activeItem=6&amp;amp;rv%5B%5D=811&amp;amp;rm=1&amp;amp;column=8&amp;amp;sortOrder=4http://issues.ez.no/IssueView.php?Id=13835&amp;amp;ProjectId=3"&gt;this issue &lt;/a&gt;it would appear that concerns about backward compatibility are the reason that the default remains iso-8859-1 while the output is set to utf-8. I do wonder what effect this has on performance though.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-3606614528408908255?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OQUK4Quy4Jp11aUBTwGuYHp2g4s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OQUK4Quy4Jp11aUBTwGuYHp2g4s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OQUK4Quy4Jp11aUBTwGuYHp2g4s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OQUK4Quy4Jp11aUBTwGuYHp2g4s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/tKAN57C-oaU" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-08T23:36:44.375+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/12/eztip-character-encoding-in-templates.html</feedburner:origLink></item><item><title>Read about French eZ Developer day with Google Readers inline Translations</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/2uNiVUWwbc4/read-about-french-ez-developer-day-with.html</link><category>conference</category><category>ez publish</category><category>translations</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 11 Nov 2008 16:31:09 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-7623651646221720873</guid><description>There is a wonderful &lt;a href="http://translate.google.com.au/translate?hl=en&amp;amp;sl=fr&amp;amp;u=http://ezpublish-france.fr/"&gt;French eZ publish community&lt;/a&gt; and many of the members blog.  In the past keeping up to date with these has been a quite painful and involved passing the link through an online translator.&lt;br /&gt;&lt;br /&gt;Yesterday I read an &lt;a href="http://googlereader.blogspot.com/2008/11/is-your-web-truly-world-wide.html"&gt;announcement&lt;/a&gt; that Google have added automated translations to their online RSS reader product, &lt;a href="http://www.google.com/reader"&gt;Google Reader&lt;/a&gt;.  Now reading these blogs is as simple as adding the feed and selecting "Translate into my language" from the feed settings options.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_DP-Lebx3cmk/SRoiNrXrvsI/AAAAAAAAAB0/Lhxc5Dmc2Qk/s1600-h/GoogleReaderTranslations.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 271px;" src="http://2.bp.blogspot.com/_DP-Lebx3cmk/SRoiNrXrvsI/AAAAAAAAAB0/Lhxc5Dmc2Qk/s400/GoogleReaderTranslations.png" alt="" id="BLOGGER_PHOTO_ID_5267560332538920642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I discovered this great new feature at the same time that I read &lt;a href="http://pwet.fr/"&gt;Damien Pobels&lt;/a&gt; post pointing out summaries of the eZ Developer day recently held in Paris:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://209.85.171.104/translate_c?hl=en&amp;amp;sl=fr&amp;amp;tl=en&amp;amp;u=http://blog.gauthier-garnier.fr/post/eZ-developer-day-a-Paris-7-novembre-2008&amp;amp;usg=ALkJrhgOAUoqgIodzMDL2Ql6z7B-J5pL4w"&gt;eZ developer day in Paris (November 7, 2008)&lt;/a&gt; by Gauthier &lt;a href="http://209.85.171.104/translate_c?hl=en&amp;amp;sl=fr&amp;amp;tl=en&amp;amp;u=http://blog.gauthier-garnier.fr/&amp;amp;usg=ALkJrhgazAVGjvvXb7No_LqDrSVevjSRDA"&gt;Garnier&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://209.85.171.104/translate_c?hl=en&amp;amp;sl=fr&amp;amp;tl=en&amp;amp;u=http://www.nfrey.com/ezpublish/ez-developer-day-7-11-08/&amp;amp;usg=ALkJrhj_m6uHrIQB7mo4op7KczNkj_434w"&gt;Ezpublish Developer Day in Paris (November 7, 2008)&lt;/a&gt; by Nicolas &lt;a href="http://209.85.171.104/translate_c?hl=en&amp;amp;sl=fr&amp;amp;tl=en&amp;amp;u=http://www.nfrey.com/&amp;amp;usg=ALkJrhi4Hv4HiWJ91hc_zXK5XOhfzRd36Q"&gt;Frey&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Gauthiers post mentions that there is an International eZ Publish Developer day to be held in Barcelona on January 29, 2009.  Can't find anything on the eZ site though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-7623651646221720873?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZZnDSHgn6boUug2dzurNpASviyI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZZnDSHgn6boUug2dzurNpASviyI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZZnDSHgn6boUug2dzurNpASviyI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZZnDSHgn6boUug2dzurNpASviyI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/2uNiVUWwbc4" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-12T10:31:09.324+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_DP-Lebx3cmk/SRoiNrXrvsI/AAAAAAAAAB0/Lhxc5Dmc2Qk/s72-c/GoogleReaderTranslations.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/11/read-about-french-ez-developer-day-with.html</feedburner:origLink></item><item><title>eZtip: Errors can be misleading...what happens when the DB is dead</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/Q4S2rd4WR8g/eztip-errors-can-be-misleadingwhat.html</link><category>tips</category><category>ez publish</category><category>eztips</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 11 Nov 2008 00:19:43 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-7122917601766493588</guid><description>I recently received an email from an eZ community member stating after an abnormal  system reboot that their working eZ Publish install was reduced to responding with "Error / kernel (1) Access denied"&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_DP-Lebx3cmk/SRjjueS7B6I/AAAAAAAAABs/crIeD3RyBUk/s1600-h/kernel_error_1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 176px;" src="http://3.bp.blogspot.com/_DP-Lebx3cmk/SRjjueS7B6I/AAAAAAAAABs/crIeD3RyBUk/s320/kernel_error_1.png" alt="" id="BLOGGER_PHOTO_ID_5267210151755712418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;My suspicion was that there was an issue with the database. More than likely it had not successfully started when the system was brought up again.&lt;br /&gt;&lt;br /&gt;I tested this theory by stopping the database in my local development environment and accessing the associated eZ Publish site.  Manually editing the settings/siteaccess/eng/site.ini/append.php to turn on debugging confirms the problem and gives an insight into what is happening:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color:orange;"&gt;Warning:&lt;/span&gt; PHP&lt;/b&gt;&lt;br /&gt;&lt;pre&gt;mysqli_connect() [&amp;lt;a href='function.mysqli-connect'&lt;br /&gt;&amp;gt;function.mysqli-connect&amp;lt;/a&amp;gt;]:&lt;br /&gt;(HY000/2002): Can't connect to local MySQL server through socket&lt;br /&gt;'/var/run/mysqld/mysqld.sock' (2)&lt;br /&gt;in /var/www/ezpublish-4.0.0-ezwebmin/lib/ezdb/classes/ezmysqlidb.php&lt;br /&gt;on line 132&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color:red;"&gt;Error:&lt;/span&gt; eZMySQLiDB&lt;/b&gt;&lt;br /&gt;&lt;pre&gt;Connection error: Couldn't connect to database.&lt;br /&gt;Please try again later or inform the system administrator.&lt;br /&gt;Can't connect to local MySQL server through socket&lt;br /&gt;'/var/run/mysqld/mysqld.sock' (2)&lt;/pre&gt;One of the main concepts of eZ publish is that there is always a user associated with an access.  If a specific user is not logged in then the special "anonymous user" is utilised. The anonymous user exists and must be retrieved from the database so that the roles that are associated with it can be access and the permissions system can determine if the user has access to the requested resource.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color:orange;"&gt;Warning:&lt;/span&gt;&lt;/b&gt;&lt;pre&gt;User not found, returning anonymous&lt;/pre&gt;&lt;b&gt;&lt;span style="color:orange;"&gt;Warning:&lt;/span&gt;&lt;/b&gt;&lt;pre&gt;Anonymous user not found, returning NoUser&lt;/pre&gt;Because the database is not accessible the Anonymous user cannot be retrieved so the system creates a "dummy" eZUser object (NoUser) and returns that. (This behavior can bee seen in the eZUser:instance method in kernel/classes/datatypes/ezuser/ezuser.php)&lt;br /&gt;&lt;br /&gt;As NoUser does not exist and has no role information associated with it, not that any could be retrieved, the system responds with the access denied message.&lt;br /&gt;&lt;br /&gt;Now I'm sure that at some point eZ Publish raised an error on database connectivity issues instead of attempting to continue.  Having a poke through the source code I found kernel/error/errors.php contains:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;/*!&lt;br /&gt;No database connection&lt;br /&gt;*/&lt;br /&gt;define( 'EZ_ERROR_KERNEL_NO_DB_CONNECTION', 50 );&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Interestingly this constant doesn't appear anywhere else within the source.  I wonder why it is no longer used?&lt;br /&gt;&lt;br /&gt;As eZ Publish is pretty much useless when database access is not present the system should raise a specific DB error error when access cannot be established.  (Of course this could be overridden for each siteaccess). At the very least this would give the site owners a better indication of where to start looking for solutions.&lt;br /&gt;&lt;br /&gt;I've raised an issue &lt;a href="http://issues.ez.no/IssueView.php?Id=13931&amp;amp;activeItem=1"&gt;here&lt;/a&gt;. I can't think of any reasons why this isn't a good idea.&lt;br /&gt;&lt;br /&gt;Update: The Admin siteaccess &lt;span style="font-weight: bold;"&gt;does&lt;/span&gt; display a the following error when the DB is not accessible:&lt;br /&gt;&lt;strong&gt;kernel::50&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;No database connection could be made, the system might not behave properly.&lt;/li&gt;&lt;/ul&gt;Hat tip to &lt;a href="http://andrewduck.name/"&gt;@andrewduck&lt;/a&gt;. Will have to investigate...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-7122917601766493588?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BByUqit1V744KpKAbb5aQEhonrk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BByUqit1V744KpKAbb5aQEhonrk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BByUqit1V744KpKAbb5aQEhonrk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BByUqit1V744KpKAbb5aQEhonrk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/Q4S2rd4WR8g" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-11T18:19:43.083+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_DP-Lebx3cmk/SRjjueS7B6I/AAAAAAAAABs/crIeD3RyBUk/s72-c/kernel_error_1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/11/eztip-errors-can-be-misleadingwhat.html</feedburner:origLink></item><item><title>eZtip: Get the current siteaccess from template</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/rWjhppaZBLQ/eztip-get-current-siteaccess-from.html</link><category>tips</category><category>ez publish</category><category>eztips</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 28 Oct 2008 19:59:11 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-2507400357531163106</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;I'm currently working on a multilingual site and had to use the name of the siteaccess in the template code. Easy I thought...well it took quite a while to find.&lt;br /&gt;&lt;br /&gt;From &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/templates/the_pagelayout/variables_in_pagelayout"&gt;http://ez.no/doc/ez_publish/technical_manual/4_0/templates/the_pagelayout/variables_in_pagelayout&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;table class="renderedtable" cellpadding="2" cellspacing="0"&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Variable&lt;/th&gt;&lt;th&gt;Type&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;$access_type&lt;/td&gt;&lt;td&gt;array&lt;/td&gt;&lt;td&gt;The name of the siteaccess (as "name") and the ID number (as "type") of the &lt;a href="http://www.blogger.com/doc/ez_publish/technical_manual/4_0/concepts_and_basics/configuration/access_methods"&gt;access method&lt;/a&gt; that was used (1=URL, 2=Host, 3=Port).&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Adding &lt;code&gt;{$access_type|attribute(show,2)}&lt;/code&gt; to the pagelayout.tpl template will give the following:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;name string 'ezwebin_site'&lt;br /&gt;type integer 2&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The siteaccess used to serve the current page is accessible via &lt;code&gt;$access_type.name&lt;/code&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-2507400357531163106?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zTIwhkbfAs4dUnndxoNLnCyFPdE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zTIwhkbfAs4dUnndxoNLnCyFPdE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zTIwhkbfAs4dUnndxoNLnCyFPdE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zTIwhkbfAs4dUnndxoNLnCyFPdE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/rWjhppaZBLQ" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-29T12:59:11.229+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/10/eztip-get-current-siteaccess-from.html</feedburner:origLink></item><item><title>French version of "10 Tips for New eZ Publish Developers"</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/Qhhr1t3oWHo/french-version-of-10-tips-for-new-ez.html</link><category>tips</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Tue, 14 Oct 2008 18:39:31 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-3726887240675262822</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Some days I absolutely love the internet and the possibilities it enables.  Today I got a real buzz when I leaned that &lt;a href="http://www.clochix.net/"&gt;Clochix&lt;/a&gt; has created a &lt;a href="http://www.clochix.net/post/2008/10/11/Conseils-pour-debuter-avec-eZ-Publish"&gt;French version&lt;/a&gt; of my previous post, "&lt;a href="http://suffandnonsense.blogspot.com/2008/10/10-tips-for-new-ez-publish-developers.html"&gt;10 Tips for New eZ Publish Developers&lt;/a&gt;".  It doesn't appear to be a straight &lt;a href="http://translate.google.com/translate?u=http%3A%2F%2Fwww.clochix.net%2Fpost%2F2008%2F10%2F11%2FConseils-pour-debuter-avec-eZ-Publish&amp;amp;hl=en&amp;amp;ie=UTF-8&amp;amp;sl=fr&amp;amp;tl=en"&gt;translation&lt;/a&gt; and contains additional thoughts on most of the points. &lt;br /&gt;&lt;br /&gt;What Clochix does point out is that many of the tips could apply to most applications, and he's 100% correct on this.  Many of them are common sense. Trouble is that time and time again I've see projects (and not just eZ projects ) that don't "follow the rules". Sometimes it's good not to assume that people know and to state the basics!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-3726887240675262822?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DPLZmJ3BIPmfPHYP7Phz-2owV3A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DPLZmJ3BIPmfPHYP7Phz-2owV3A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DPLZmJ3BIPmfPHYP7Phz-2owV3A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DPLZmJ3BIPmfPHYP7Phz-2owV3A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/Qhhr1t3oWHo" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-15T11:39:31.919+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/10/french-version-of-10-tips-for-new-ez.html</feedburner:origLink></item><item><title>10 Tips for New eZ Publish Developers</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/kwaRChTsGAc/10-tips-for-new-ez-publish-developers.html</link><category>tips</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Thu, 09 Oct 2008 06:52:06 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-17234100176451307</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a title="1/365 [dazed &amp;amp; confused] (by PhotoJonny)" href="http://flickr.com/photos/photojonny/2268845904/"&gt;&lt;img alt="1/365 [dazed &amp;amp; confused] (by PhotoJonny)" title="1/365 [dazed &amp;amp; confused] (by PhotoJonny)" src="http://farm3.static.flickr.com/2285/2268845904_e6b1bb0a3a_m.jpg" style="float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" width="240" height="188" /&gt;&lt;/a&gt;We've all been there, starting out with a new product and not knowing where to begin.  Below are my top 10 tips for new eZ publish developers.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;Read the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/installation"&gt;install documents&lt;/a&gt;&lt;/b&gt; and make sure your system meets the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/installation/normal_installation/requirements_for_doing_a_normal_installation"&gt;requirements&lt;/a&gt; before beginning. eZ Publish has some hefty needs in terms of  memory limits and timeouts that may not be set at recommended levels in some PHP setups.  Not having these values set to acceptable levels will impact on a successful install.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Don't modify the core distribution&lt;/b&gt;. Just don't, no matter how tempting it is. There is no need to modify any files that come as part of the eZ Publish distribution.  This will save you losing any changes when you upgrade.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Understand the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/concepts_and_basics"&gt;basics&lt;/a&gt;&lt;/b&gt;. eZ Publish doesn't store content in straight database tables like other Content Management Systems. Read the documentation and understand the &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/concepts_and_basics/content_management/the_content_object"&gt;content model&lt;/a&gt;. eZ Publish is all about &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/concepts_and_basics/content_management/the_content_object"&gt;content objects&lt;/a&gt; arranged in a &lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/concepts_and_basics/content_management/the_content_node_tree"&gt;tree&lt;/a&gt;, not data stored in tables.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Debugging holds the answers&lt;/b&gt;. If something is not working as expected turn on debugging and check the output.  Most times the answer or a pointer to what is wrong will be found in the debug output. Check the Web Server error logs for issues as well. If this still doesn't help, &lt;span style="font-weight: bold;"&gt;clear the caches&lt;/span&gt; and try again.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Use the Community&lt;/b&gt;. If you still have trouble, use the &lt;a href="http://ez.no/developer/forum"&gt;forums&lt;/a&gt;.  There is a great &lt;a href="http://ez.no/developer"&gt;developer community&lt;/a&gt; around eZ publish and they are usually happy to help.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Provide enough information&lt;/b&gt;. Include as much information as possible in your forum post. Include a detailed explanation of what you are attempting to achieve, what is or isn't happening,  code samples, specifics of your setup and debug information.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Don't "force" it&lt;/b&gt;. If something seems overly difficult it usually means that you aren't approaching it in an optimal way. As with most things there are several ways to achieve the same outcome, some better than others. Ask the community for help (see above).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Comment your code&lt;/b&gt;.  Before you start to write any code (&lt;a href="http://ez.no/doc/ez_publish/technical_manual/4_0/templates/the_template_language/comments"&gt;templates&lt;/a&gt;, PHP, settings) describe what you are going to achieve in a comment.  This will not only help you focus on what is required but serve as documentation for anyone who has to work with your code in the future. Remember this may be you in 6 months time.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Write readable code&lt;/b&gt;. Follow a coding standard. eZ have a number for various aspects of the system: &lt;a href="http://ez.no/ezpublish/documentation/development/standards/template"&gt;Templates&lt;/a&gt;, &lt;a href="http://ez.no/ezpublish/documentation/development/standards/php"&gt;PHP&lt;/a&gt; &amp;amp; &lt;a href="http://ez.no/ezpublish/documentation/development/standards/sql"&gt;SQL&lt;/a&gt;. There used to be a PDF eznetwork_development_guidelines.pdf up on the eZ site that contains all this info and more but it longer exists - eZ people can this go back? If you are interested email me/comment for a copy.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Plan ahead&lt;/b&gt;. Document what you are going to do before starting.  This doesn't have to be elaborate or time consuming but will save you time in the long run as well as providing a guide to how the site was put together.  I've found that the absolute basics are a sitemap, and a list of content types, their views and how they are applied in the site.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;What do you wish someone had told you when you first started using &lt;a href="http://ez.no/"&gt;eZ Publish&lt;/a&gt;?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-17234100176451307?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OTOVu2hh0FJMya7Sr4HCRcUB5p0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OTOVu2hh0FJMya7Sr4HCRcUB5p0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OTOVu2hh0FJMya7Sr4HCRcUB5p0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OTOVu2hh0FJMya7Sr4HCRcUB5p0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/kwaRChTsGAc" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-09T23:52:06.622+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/10/10-tips-for-new-ez-publish-developers.html</feedburner:origLink></item><item><title>Web Directions South 08 - Day 1</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/4yROjfBgJdo/web-directions-south-08-day-1.html</link><category>javascript</category><category>accessibility</category><category>conference</category><category>wds08</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Thu, 09 Oct 2008 16:44:49 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4799985780528825326</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a href="http://south08.webdirections.org/"&gt;&lt;img src="http://south08.webdirections.org/images/logo.gif" style="max-width: 800px; float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" /&gt;&lt;/a&gt;I'm been meaning to attend a &lt;a href="http://www.webdirections.org/"&gt;Web Directions&lt;/a&gt; Conference since they started  but it always clashed with other commitments.&lt;br /&gt;&lt;br /&gt;This year I made the trip to Sydney for &lt;a href="http://south08.webdirections.org/"&gt;Web Directions South 08&lt;/a&gt; and it was well worth it. Web Directions always provides a great &lt;a href="http://south08.webdirections.org/?page_id=88"&gt;program&lt;/a&gt; of both international and local speakers as well as a fantastic bunch of attendees.&lt;br /&gt;&lt;br /&gt;As with most conferences there were a number of parallel sessions and often the choice of which to attend is difficult.  On the first day I attended mostly technical sessions, which in retrospect was probably a mistake.&lt;br /&gt;&lt;br /&gt;This is a run down on the sessions I attended on day one.&lt;br /&gt;&lt;h2&gt;New media - new business&lt;/h2&gt;&lt;a href="http://www.lynnedjohnson.com/"&gt;Lynne D Johnson&lt;/a&gt; presented the opening keynote which covered how various generations interact with of new technologies and what this means for traditional media providers.  The content of the session was perhaps aimed at a less "online" savvy crowd but got interesting when examples and case studies came out.  Some interesting ideas where raised regarding the mix of social networks as a means of getting the audience to engage traditional media.&lt;br /&gt;&lt;br /&gt;&lt;a title="Lynne's keynote (by Halans)" href="http://flickr.com/photos/halans/2886436486/"&gt;&lt;img alt="Lynne's keynote (by Halans)" title="Lynne's keynote (by Halans)" src="http://farm4.static.flickr.com/3044/2886436486_ac2f8ed35c_m.jpg" style="float: left; margin-top: 10px; margin-bottom: 10px; margin-right: 10px;" width="240" height="180" /&gt;&lt;/a&gt; Lynne presented a bunch of stats and one interesting fact came out for me and that was: The younger demographic assume what they put online is public unless specifically made private while older generation is the opposite.&lt;br /&gt;&lt;br /&gt;The session finished up talking about the future of traditional media and concluded that there would be a decline in the demand and production of newspapers, books and magazines due to increasing online consumption.  However print would not die out but become a niche market, with smaller print runs and increasing in cost.&lt;br /&gt;&lt;br /&gt;The session has some interesting points but mostly missed the mark with the Web Directions crowd.  Would have loved to hear more of Lynnes' experience as &lt;a href="http://www.fastcompany.com/user/lynne-d-johnson"&gt;Community Director&lt;/a&gt; at  &lt;a href="http://www.fastcompany.com/"&gt;FastCompany.com&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;Start Using Web Vector Graphics Today&lt;a title="Webjam 8 - Bar Broadway - Sydney (by Charlie Brewer)" href="http://flickr.com/photos/charliebrewer/2897880699/"&gt;&lt;img alt="Webjam 8 - Bar Broadway - Sydney (by Charlie Brewer)" title="Webjam 8 - Bar Broadway - Sydney (by Charlie Brewer)" src="http://farm3.static.flickr.com/2416/2897880699_6ded211ea8_m.jpg" style="float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" width="240" height="160" /&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a href="http://dmitry.baranovskiy.com/"&gt;Dmitry Baranovskiys&lt;/a&gt; session started out giving an overview of the various web vector graphics technologies that are currently available in browsers, &lt;a href="http://www.w3.org/Graphics/SVG/"&gt;SVG&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Canvas_%28HTML_element%29"&gt;Canvas&lt;/a&gt; &amp;amp; &lt;a href="http://en.wikipedia.org/wiki/VML"&gt;VML&lt;/a&gt; and then introduced his &lt;strong&gt; &lt;a href="http://raphaeljs.com/"&gt;Raphaël&lt;/a&gt;&lt;/strong&gt; JavaScript library.&lt;br /&gt;&lt;br /&gt;Raphaël is quite impressive as it allows you to create cross-browser vector graphic using JavaScript. Current supported browsers are Firefox 3.0+, Safari 3.0+, Opera 9.5+ and Internet Explorer 6.0+ as well as the &lt;a href="http://dmitry.baranovskiy.com/post/50627889"&gt;iPhone &amp;amp; iTouch&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Raphaël has been on my list of things to check out for some time and this engaging talk pushed it up the list.&lt;br /&gt;&lt;h2&gt;From disordered to managed usability in an Agile environment&lt;/h2&gt;Teale Shapcott gave a presentation about Agile methodologies utilised at &lt;a href="http://suncorp.com.au/"&gt;Suncorp&lt;/a&gt; and the benefits (and challenges) of introducing usability into the production cycle.  This was a great talk, providing many "real world" issues and solutions.&lt;br /&gt;&lt;br /&gt;Teale is presenting what looks to be a similar talk at the &lt;a href="http://brisbanewebdesign.org/"&gt;Brisbane Web Design&lt;/a&gt; &lt;a href="http://webdesign.meetup.com/429/"&gt;Meetup&lt;/a&gt; on &lt;a href="http://webdesign.meetup.com/429/calendar/8879100/"&gt;October 9&lt;/a&gt;.  Well worth attending even if you saw the WDS08 presentation!&lt;br /&gt;&lt;h2&gt;Javascript libraries - Putting the cross in cross-browser compatible&lt;br /&gt;&lt;/h2&gt;&lt;a title="Web Directions South (by CannedTuna)" href="http://flickr.com/photos/cannedtuna/2898206984/"&gt;&lt;img alt="Web Directions South (by CannedTuna)" title="Web Directions South (by CannedTuna)" src="http://farm4.static.flickr.com/3238/2898206984_3d92fe30eb_m.jpg" style="float: right; margin-top: 10px; margin-bottom: 10px; margin-left: 10px;" width="240" height="160" /&gt;&lt;/a&gt;This session was a "compare and contrast" of a number of popular JavaScript libraries, as well as raw JavaScript.  The session was chaired by Craig Sharkie, with &lt;a href="http://south08.webdirections.org/?cat=1#post-83"&gt;Earle Castledine&lt;/a&gt; representing &lt;a href="http://jquery.com/"&gt;jQuery&lt;/a&gt;, &lt;a href="http://south08.webdirections.org/?cat=1#post-87"&gt;Ben Askins&lt;/a&gt; &lt;a href="http://www.prototypejs.org/"&gt;Prototype&lt;/a&gt;/&lt;a href="http://script.aculo.us/"&gt;Scriptaculous&lt;/a&gt;, &lt;a href="http://south08.webdirections.org/?cat=1#post-85"&gt;Jason Crane&lt;/a&gt; &lt;span class="caps"&gt;&lt;a href="http://developer.yahoo.com/yui/"&gt;YUI&lt;/a&gt;,&lt;/span&gt; and &lt;a href="http://south08.webdirections.org/?cat=1#post-84"&gt;Cameron Adams&lt;/a&gt; writing JavaScript from scratch.  Each panel member introduced their library and then presented solutions to problems that had been posed by Craig.&lt;br /&gt;&lt;br /&gt;It became quite clear very quickly that:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Using a library saves for a bunch of time.  One problem took more than a day to do from scratch while all the library users achieved most solutions in less than 15 mins.&lt;/li&gt;&lt;li&gt;Libraries work across most platforms, achieving this in raw code is hard.&lt;/li&gt;&lt;li&gt;Most panel members actually use jQuery.&lt;/li&gt;&lt;/ul&gt;Nothing shocking there!&lt;br /&gt;&lt;br /&gt;Although the panelists were quite entertaining the session got a bit repetitive (2 hours worth), with the library panelists presenting their minimal solutions (most one liners) and wading through the raw JavaScript version.&lt;br /&gt;&lt;br /&gt;The session ended up with each panelist presenting a "free" exercise using their assigned library. The highlight of which was the remarkable &lt;a href="http://themaninblue.com/"&gt;Man in Blue's&lt;/a&gt; raw JavaScript sequencer.&lt;br /&gt;&lt;h2&gt;Predicting the Past: Emotional Design and a Vision for Microsoft Surface&lt;/h2&gt; &lt;a href="http://www.microsoft.com/design/People/Detail.aspx?key=august"&gt;&lt;/a&gt;&lt;a title="WDS08 (by Halans)" href="http://flickr.com/photos/halans/2886925357/"&gt;&lt;img alt="WDS08 (by Halans)" title="WDS08 (by Halans)" src="http://farm4.static.flickr.com/3016/2886925357_234889ae5a_m.jpg" style="float: left; margin-top: 10px; margin-bottom: 10px; margin-right: 10px;" width="160" height="240" /&gt;&lt;/a&gt;August de los Reyes presented the closing keynote for day one and had some very interesting points on the part that emotion plays in design.  However the talk was interspersed with a 2+minute Seinfeld clip (made a good point but was too long) as well as several Microsoft "marketing" clips, that seemed a little out of place.  They presented a vague "&lt;a href="http://en.wikipedia.org/wiki/Minority_Report_%28film%29"&gt;Minority Report&lt;/a&gt;" future and left me feeling that I was being marketed to.  This really detracted from the excellent research and ideas that August was talking about.&lt;br /&gt;&lt;br /&gt;I found it hard to link the promise portrayed in the videos to what I saw in the &lt;a href="http://www.microsoft.com/surface/index.html"&gt;Surface&lt;/a&gt; table at the Microsoft stand, especially in this day of portable connectivity.  The Surface interface is impressive, I guess the table top arcade style casing makes it seem like something of that era and not of the future.&lt;br /&gt;&lt;h2&gt;Day One Wrap&lt;br /&gt;&lt;/h2&gt;The thing I love about conferences is that you get to meet a bunch of great people and hear plenty of exciting ideas.  Web Directions is no exception.&lt;br /&gt;&lt;br /&gt;In hind site I probably would have skipped Dmitry's vector Graphic talk for &lt;a href="http://south08.webdirections.org/?cat=1#post-60"&gt;Derek Featherstones &lt;/a&gt;&lt;a href="http://south08.webdirections.org/?page_id=7#post-60"&gt;Accessability beyond compliance&lt;/a&gt; talk.  I also would have given the JavaScript comparism talk a miss and attended &lt;a href="http://south08.webdirections.org/?cat=1#post-73"&gt;Hurol Inans&lt;/a&gt; session "&lt;a href="http://south08.webdirections.org/?page_id=7#post-73"&gt;Informing experience architecture with quantitative insights&lt;/a&gt;"&lt;br /&gt;&lt;br /&gt;After the closing there were drinks and nibbles and then it was on to &lt;a href="http://webjam.com.au/webjam8"&gt;WebJam8&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Day 2 to follow....&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4799985780528825326?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6rwCN9LyiEmqcYjJslVezfPwRDg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6rwCN9LyiEmqcYjJslVezfPwRDg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6rwCN9LyiEmqcYjJslVezfPwRDg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6rwCN9LyiEmqcYjJslVezfPwRDg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/4yROjfBgJdo" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-10T09:44:49.478+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/10/web-directions-south-08-day-1.html</feedburner:origLink></item><item><title>How to you handle Revision Control for eZ Publish Projects?</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/HWV0ymQh0VA/how-to-you-handle-revision-control-in.html</link><category>distributed revision control</category><category>revision control</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Wed, 01 Oct 2008 23:13:09 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-3755853199653341238</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;div style="float: right;"&gt;&lt;a title="Ch-ch-changes (by TW Collins)" href="http://flickr.com/photos/twcollins/867628074/"&gt;&lt;img alt="Ch-ch-changes (by TW Collins)" title="Ch-ch-changes (by TW Collins)" src="http://farm2.static.flickr.com/1409/867628074_87d74897a0_m.jpg" width="160" height="240" /&gt;&lt;/a&gt;&lt;/div&gt;Revision control systems (RCS) play an essential part of any software development process.  One reason for using a RCS is to enable applications to be rolled back and deployed from a known point in time.  Due to the nature of eZ publish it's difficult to capture all changes in the RCS and this often leads to the requirement of manual adjustments when changes are deployed.&lt;br /&gt;&lt;br /&gt;An eZ publish project is made up of a number of elements that are stored either on the file system or in the database. The database not only stores the site's content but also a number of &lt;em&gt;"configuration&lt;/em&gt;" items, such as roles &amp;amp; policies, content class &amp;amp; workflow definitions, RSS feed configurations and URL translations (I'm sure there are more).&lt;br /&gt;&lt;br /&gt;Another scenario where this feature will pose an issue is if you use a node override to utilise a specific template for a particular node.  In this case the entry in override.ini relies on a specific node_id to link the template to the node. It's unlikely that the node_id of the development system will match the live system and the deployment will fail.  Roles and policies will also suffer from this issue as they are reliant on content e.g. applied to a specific node subtree or applied to a user group.&lt;br /&gt;&lt;br /&gt;These configuration items play an important role in a correctly functioning eZ Publish site. The reliance of configuration information stored in the database makes it difficult to capture this information in revision control in a way it can be automatically deployed or rolled back from the RCS.&lt;br /&gt;&lt;br /&gt;Earlier this year Jérôme Renard published an great article entitled &lt;a href="http://ez.no/developer/articles/using_subversion_with_ez_publish"&gt;Using Subversion with eZ Publish&lt;/a&gt; that &lt;a href="http://ez.no/developer/articles/using_subversion_with_ez_publish/common_problems_and_solutions"&gt;touched on this point&lt;/a&gt;, suggesting that some tables can be exported from the database and the resulting dump included in the RCS.  While this would work ,it relies on the developer remembering to do it when changes are committed.  It aslo means that the specific configuration changes are not captured in the RSC with any associated file changes. i.e. It's not easy to look at the diff from the previous commit and see what changed.&lt;br /&gt;&lt;br /&gt;I suspect that eZ Publish is not the only platform effected by this issue.  While not the exact problem, &lt;a href="http://www.rubyonrails.org/"&gt;Ruby on Rails&lt;/a&gt; solves a similar issue though use of &lt;a href="http://wiki.rubyonrails.org/rails/pages/UnderstandingMigrations"&gt;migrations&lt;/a&gt; where database changes for both the update and reverse it are stored in files and applied programatically.&lt;br /&gt;&lt;br /&gt;How to you address this issue this for your eZ Publish projects?  Database dumps?  The eZ package system? Home grown scripts? Something else?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-3755853199653341238?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/UzVJmcmarxWeJofOH4zT-rRn_9A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UzVJmcmarxWeJofOH4zT-rRn_9A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/UzVJmcmarxWeJofOH4zT-rRn_9A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UzVJmcmarxWeJofOH4zT-rRn_9A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/HWV0ymQh0VA" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-02T16:13:09.877+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/10/how-to-you-handle-revision-control-in.html</feedburner:origLink></item><item><title>FriendFeed Room for eZ Publish</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/VmBJlC9S1ok/friendfeed-room-for-ez-publish.html</link><category>ez publish</category><category>friendfeed</category><category>twitter</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Thu, 02 Oct 2008 19:05:53 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-2159126314492585216</guid><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://friendfeed.com/"&gt;&lt;img style="margin: 0pt 10px 5px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_DP-Lebx3cmk/SNg_o4jkMxI/AAAAAAAAABk/I14O2sC5k-8/s320/friendfeed-logo.gif" alt="" id="BLOGGER_PHOTO_ID_5249015337309188882" border="0" /&gt;&lt;/a&gt;I've been playing with &lt;a href="http://friendfeed.com/"&gt;FriendFeed&lt;/a&gt; for a little while and today setup an &lt;a href="http://friendfeed.com/rooms/ez-publish"&gt;eZ Publish room&lt;/a&gt;.  FriendFeed is a &lt;a href="http://en.wikipedia.org/wiki/Aggregator"&gt;content aggregator&lt;/a&gt; that is primarily targeted at "friends", but several projects have been using it at a convergence point for information.&lt;br /&gt;&lt;br /&gt;In their own words:&lt;br /&gt;&lt;blockquote&gt;FriendFeed enables you to keep up-to-date on the web pages, photos, videos and music that your friends and family are sharing. It offers a unique way to discover and discuss information among friends.&lt;br /&gt;&lt;/blockquote&gt;I've primed the &lt;a href="http://friendfeed.com/rooms/ez-publish"&gt;room&lt;/a&gt; with RSS feeds from &lt;a href="http://planetezpublish.org/"&gt;eZ Planet&lt;/a&gt;, the &lt;a href="http://ez.no/"&gt;eZ.no site&lt;/a&gt;,  &lt;a href="http://projects.ez.no/"&gt;eZ Projects&lt;/a&gt; and a &lt;a href="http://search.twitter.com/search?q=ezpublish+OR+eZ+Publish+OR+ezp"&gt;twitter search for "ezpublish" like terms.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Feel free to &lt;a href="https://friendfeed.com/account/create"&gt;join&lt;/a&gt; and &lt;a href="http://friendfeed.com/share/bookmarklet"&gt;contribute&lt;/a&gt;, or simply add the &lt;a href="http://friendfeed.com/rooms/ez-publish?format=atom"&gt;RSS feed of the room&lt;/a&gt; to your reader and follow a bunch of eZ news from the one feed.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-2159126314492585216?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JX-opJFqeqixuSgy6NpDcEgxPCQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JX-opJFqeqixuSgy6NpDcEgxPCQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JX-opJFqeqixuSgy6NpDcEgxPCQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JX-opJFqeqixuSgy6NpDcEgxPCQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/VmBJlC9S1ok" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-03T12:05:53.825+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_DP-Lebx3cmk/SNg_o4jkMxI/AAAAAAAAABk/I14O2sC5k-8/s72-c/friendfeed-logo.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/09/friendfeed-room-for-ez-publish.html</feedburner:origLink></item><item><title>OpenID for eZPublish</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/gs50eASTEXA/openid-for-ezpublish_19.html</link><category>openid</category><category>ezpublish</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Fri, 19 Sep 2008 01:05:32 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4745947382392065758</guid><description>&lt;div style="text-align: center;"&gt;&lt;img style="max-width: 800px; margin-top: 10px; margin-bottom: 10px; margin-right: 10px;" src="http://www.openid.net/openid-logo.png" /&gt;&lt;/div&gt;Earlier this year I was investigating &lt;a href="http://openid.net/"&gt;OpenID&lt;/a&gt; and decided to attempt to integrate it into &lt;a href="http://ez.no/"&gt;eZ Publish&lt;/a&gt;. I got most of the way before I realised that the amount of existing code I had to replicate meant that the maintenance of the extension would be a nightmare.&lt;br /&gt;&lt;br /&gt;After discussions at the &lt;a href="http://ez.no/developer/news/ez_publish_community_developer_day_june_18th_2008"&gt;eZ Developer Day&lt;/a&gt; I decided to upload the source to &lt;a href="http://projects.ez.no/openid"&gt;projects.ez.no&lt;/a&gt; and invite anyone interested check it out.  If you want to contribute feel free to &lt;a href="http://projects.ez.no/openid/team/members"&gt;add yourself to the group.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The extension uses the &lt;a href="http://www.openidenabled.com/php-openid/"&gt;PHP OpenID Library&lt;/a&gt; by &lt;a href="http://janrain.com/"&gt;JanRain&lt;/a&gt;. The version of the library used in the extension is 2.1.1.  In future I plan at evaluating the use of the &lt;a href="http://www.ezcomponents.org/"&gt;eZ Components&lt;/a&gt; &lt;a href="http://www.ezcomponents.org/docs/tutorials/Authentication#openid"&gt;OpenID Authentication module&lt;/a&gt;.&lt;br /&gt;&lt;h2&gt;Features&lt;br /&gt;&lt;/h2&gt;The extension provides the following features:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Login using OpenID&lt;/li&gt;&lt;li&gt;Register Using OpenID&lt;/li&gt;&lt;li&gt;OpenID URL management&lt;/li&gt;&lt;/ul&gt; Both the OpenID Login and User Registration work in parallel to the existing systems, allowing users to login &amp;amp; register in a regular manor.  The templates have been created for the admin &amp;amp; ezwebmin interface.  The login screen will show the original as well as the OpenID login.&lt;br /&gt;&lt;br /&gt;Clicking on the OpenID Register button will authenticate the user via the entered OpenID URL, retrieve some details from the OpenID profile and present the user with the registration form.  Once the registration is processed the authenticated OpenID URL will be associated with the account.  The user registration process has had the least testing.&lt;br /&gt;&lt;br /&gt;The OpenID account management allows users to add and remove OpenID URLs that are associated with their account.  The interface is available via a tab in the admin interface.  Currently there are no ezwebmin (front end) specific templates.&lt;br /&gt;&lt;br /&gt;The extension assumes you have an installed Website interface and works with eZ Publish 4.x.&lt;br /&gt;&lt;h2&gt;Installing the OpenID extension&lt;/h2&gt; To use the extension, grab it from svn. From the extensions directory run&lt;br /&gt;&lt;br /&gt;&lt;code&gt;cd extension/&lt;br /&gt;svn co http://svn.projects.ez.no/openid/trunk/ openid &lt;/code&gt;&lt;br /&gt;&lt;br /&gt;and enable in the usual manor.&lt;br /&gt;&lt;br /&gt;Create the table the holds the link between the OpenID URLs &amp;amp; the eZ users:&lt;br /&gt;&lt;br /&gt;&lt;code&gt; mysql -u[user] -p [database] &amp;lt; sql/openid.sql&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Clear caches.&lt;br /&gt;&lt;h2&gt;Create an OpenID account&lt;/h2&gt;If you don't already have an open ID account get yourself one. I've used &lt;a href="http://claimid.com/"&gt;ClaimID&lt;/a&gt;, but there are &lt;a href="http://wiki.openid.net/OpenIDServers#Identity_Providers"&gt;plenty of other options&lt;/a&gt;. I've also used &lt;a href="https://www.myopenid.com/"&gt;MyOpenID&lt;/a&gt;, &lt;a href="https://www.signon.com/"&gt;SignOn&lt;/a&gt; and &lt;a href="http://www.sxipper.com/"&gt;Sxipper&lt;/a&gt; which also has a great &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/4865"&gt;firefox identity/password manager add on&lt;/a&gt;.&lt;br /&gt;&lt;h2&gt;Register an OpenID URL via Admin Interface&lt;/h2&gt;If the OpenID extension has been installed correctly you should see a OpenID Tab in the admin interface.&lt;br /&gt;&lt;br /&gt;Clicking on the OpenID tab should produce a screen like:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_DP-Lebx3cmk/SNNY8pwHOII/AAAAAAAAABU/tdWNIUMWyyM/s1600-h/OpenID%27s+for+Administrator+User_initial.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5247635789839808642" alt="" src="http://3.bp.blogspot.com/_DP-Lebx3cmk/SNNY8pwHOII/AAAAAAAAABU/tdWNIUMWyyM/s400/OpenID%27s+for+Administrator+User_initial.png" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 423px; height: 245px;" border="0" /&gt;&lt;/a&gt;&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;br /&gt;&lt;br /&gt;You can now enter your OpenID URL into the field and click on "Register New OpenID" The extension will go off to the provider and ask you to authenticate. Once authenticated you will be asked if you want to:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Login - Authorise login once&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Login and Trust - Authorise login for this and subsequent accesses&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Cancel - Don't authorise login&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Choosing the either of the first two options will allow the OpenID URL to be registered against the currently logged in user. Choosing the "Cancel" option will result in the registration failing. (Note: These specific options are ClaimID specific. Other providers will have similar functionality but it may be presented differently)&lt;br /&gt;&lt;br /&gt;You should be able to logout and log back in using the registered  OpenID URL.  If you have previously loged in and trusted the site you will not have to enter your password.&lt;br /&gt;&lt;h2&gt;Register a new user with an OpenID URL&lt;/h2&gt;Users are able to register using their OpenID URL from the login form. Entering an OpenID URL and clicking on the register button will pass the user off to the OpenID provider to authenticate and trust the site. Users will be asked if some of your persona information can be passed back to eZ Publish to prefill the user registration form.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_DP-Lebx3cmk/SNNZYIvh8tI/AAAAAAAAABc/g1ElPkXk5p0/s1600-h/openid_user_login.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5247636262015333074" alt="" src="http://3.bp.blogspot.com/_DP-Lebx3cmk/SNNZYIvh8tI/AAAAAAAAABc/g1ElPkXk5p0/s320/openid_user_login.png" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The persona information is quite specific and currently only the email address is used.  The mapping of the availiable persona information to the eZ user is one area that would benefit from work.&lt;br /&gt;&lt;br /&gt;Once authenticated the user is able to progress with the regular user registration process. once completed the user will be able to login using the registered OpenID URL.&lt;br /&gt;&lt;br /&gt;The user registration process has not been fully tested.&lt;br /&gt;&lt;h2&gt;Future of this extension&lt;/h2&gt;This extension was put together as a working prototype and as such is quite rough around the edges. It requires quite a bit of the existing user module &amp;amp; associated templates to be replicated and this makes it a pain to maintain.&lt;br /&gt;&lt;br /&gt;The user authentication components of eZ Publish are not constructed in a way that makes it easy to implement OpenID style authentication systems.  I hope and suspect that future versions of eZ publish will address this.&lt;br /&gt;&lt;br /&gt;I may work on the extension from time to time but am unlikely to spend any real time on it in the near future.  If you are interested feel free to signup as a project member, or contact me directly.&lt;br /&gt;&lt;br /&gt;There is an existing &lt;a href="http://ez.no/developer/open_funding"&gt;Open Funding&lt;/a&gt; suggestion for &lt;a href="http://ez.no/developer/open_funding/suggestions_for_new_functionality/openid_support"&gt;OpenID support&lt;/a&gt; that may provide a means for getting OpenID support into eZ publish.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4745947382392065758?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/y2e8OpSKvwEpFtG51eo_VRs63VU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y2e8OpSKvwEpFtG51eo_VRs63VU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/y2e8OpSKvwEpFtG51eo_VRs63VU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y2e8OpSKvwEpFtG51eo_VRs63VU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/gs50eASTEXA" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-19T18:05:32.342+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_DP-Lebx3cmk/SNNY8pwHOII/AAAAAAAAABU/tdWNIUMWyyM/s72-c/OpenID%27s+for+Administrator+User_initial.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/09/openid-for-ezpublish_19.html</feedburner:origLink></item><item><title>Vote for eZ Publish in Packt Publishing's Best PHP Open Source CMS Award</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/z2DcSX24Wok/vote-for-ez-publish-in-packt-publishing.html</link><category>ezpublish</category><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Mon, 15 Sep 2008 22:56:53 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-2875898783232103491</guid><description>&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.packtpub.com/article/best-php-open-source-cms-award-final-ez-publish"&gt;&lt;img style="margin: 0; cursor: pointer; width: 380px;" src="http://www.packtpub.com/files/images/vote-for-ezpublish.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://ez.no/"&gt;eZ Publish&lt;/a&gt; is a finalist in &lt;a href="http://www.packtpub.com/"&gt;Packt Publishings'&lt;/a&gt; &lt;a href="http://www.packtpub.com/article/2008-open-source-cms-award-finalists-announced"&gt;2008 Open Source CMS Awards&lt;/a&gt;. eZ Publish gained a successful nomination in the &lt;a href="http://www.packtpub.com/article/2008-open-source-cms-php-finalists"&gt;Best PHP Open Source CMS category&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Voting began on September 1st and closes mid October.&lt;br /&gt;&lt;br /&gt;Visit the Packt site and &lt;a href="http://www.packtpub.com/article/best-php-open-source-cms-award-final-ez-publish"&gt;cast your vote now&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-2875898783232103491?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/CS-YUOoVWSh57oq_v-NK29ci4CY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CS-YUOoVWSh57oq_v-NK29ci4CY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/CS-YUOoVWSh57oq_v-NK29ci4CY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CS-YUOoVWSh57oq_v-NK29ci4CY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/z2DcSX24Wok" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-16T15:56:53.551+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/09/vote-for-ez-publish-in-packt-publishing.html</feedburner:origLink></item><item><title>Micro-blogging the eZ Conference</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/Mf7wkvWEA5U/micro-blogging-ez-conference.html</link><category>PHP Vikinger</category><category>microblogging</category><category>ez conference</category><category>ez publish</category><category>twitter</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Wed, 10 Dec 2008 19:38:16 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-7315643046721105562</guid><description>For those who haven't heard of "Micro-blogging" &lt;a href="http://www.wikipedia.org/"&gt;wikipedia&lt;/a&gt; defines it as:&lt;br /&gt;&lt;blockquote cite="http://en.wikipedia.org/wiki/Micro-blogging"&gt;&lt;b&gt;Micro-blogging&lt;/b&gt; is a form of &lt;a href="http://en.wikipedia.org/wiki/Blog" title="Blog"&gt;blogging&lt;/a&gt; that allows users to write brief text updates (usually less than 200 &lt;a href="http://en.wikipedia.org/wiki/Character_%28computing%29" title="Character (computing)"&gt;characters&lt;/a&gt;) and publish them, either to be viewed by anyone or by a restricted group which can be chosen by the user. These messages can be submitted by a variety of means, including &lt;a href="http://en.wikipedia.org/wiki/Text_messaging" title="Text messaging"&gt;text messaging&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Instant_messaging" class="mw-redirect" title="Instant messaging"&gt;instant messaging&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Email" class="mw-redirect" title="Email"&gt;email&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/MP3" title="MP3"&gt;MP3&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/World_Wide_Web" title="World Wide Web"&gt;the web&lt;/a&gt;.&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://twitter.com/"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_DP-Lebx3cmk/SFJOZMM6THI/AAAAAAAAABM/MkzFugO62Zg/s320/twittericon.jpeg" alt="" id="BLOGGER_PHOTO_ID_5211313913500159090" border="0" /&gt;&lt;/a&gt;&lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt; is currently the most popular micro-blogging service but can have reliability issues (these have been addressed recently).  I've been&lt;a href="http://twitter.com/brucemorrison"&gt; using it for a couple of months now&lt;/a&gt;. It can be a bit of a &lt;a href="http://www.urbandictionary.com/define.php?term=time+suck"&gt;time suck&lt;/a&gt; especially if you follow frequent &lt;a href="http://twitter.com/Scobleizer"&gt;tweaters&lt;/a&gt;.  I've found it a good way to keep track of what friends, the web industry &amp;amp; eZ people are up to, pose questions and actually get answers.&lt;br /&gt;&lt;br /&gt;One of the things that has always frustrated my about not attending the eZ conference in the past is that it takes about a week for news and coverage to filter out. I suspect people are too busy doing "conference stuff" to write blog posts during the event.&lt;br /&gt;&lt;br /&gt;This year I'm finally attending the &lt;a href="http://conference.ez.no/"&gt;eZ Conference&lt;/a&gt; (&lt;a href="http://ez.no/developer/news/ez_publish_community_developer_day_june_18th_2008"&gt;eZ Community Developer Day&lt;/a&gt; &amp;amp; &lt;a href="http://phpvikinger.org/"&gt;PHP Vikinger&lt;/a&gt;)  and am planing to utilise twitter to micro-blog the event in an attempt to provide some "real time" coverage.  I've had conservations with &lt;a href="http://twitter.com/tonywood"&gt;Tony Wood&lt;/a&gt; of &lt;a href="http://www.visionwt.com/"&gt;Vision WT&lt;/a&gt; fame who is also interested.  The frequency of content will depend on what kind of internet aceess is availiable, and I'll utilise SMS tweats  as a backup if required.&lt;br /&gt;&lt;br /&gt;Of course anyone can do this and the more the merrier! If you are going to use twitter, add "#ezconf" within the tweet. This is called a &lt;a href="http://twitter.pbwiki.com/Hashtags"&gt;hashtag&lt;/a&gt; and allows for tweets about a particular topic to be grouped by services like &lt;a href="http://summize.com/"&gt;Summize&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The following URL &lt;a href="http://summize.com/search?q=+%23ezconf"&gt;http://summize.com/search?q=+%23ezconf&lt;/a&gt; will display a list of tweets with the &lt;a href="http://summize.com/search?q=+%23ezconf"&gt;#ezconf&lt;/a&gt; hashtag.  The tweats are also available as an &lt;a href="http://summize.com/search.atom?q=+%23ezconf"&gt;RSS feed&lt;/a&gt; so you can follow along in your favourite Feed Reader.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/derickrethans"&gt;Derick&lt;/a&gt; (&lt;a href="http://phpvikinger.org/"&gt;PHP Vikinger&lt;/a&gt; unorganiser) has suggested using &lt;a href="http://summize.com/search?q=%23phpvikinger"&gt;#phpvikinger&lt;/a&gt; &amp;amp; &lt;a href="http://summize.com/search?q=+%23ezconference"&gt;#ezconference&lt;/a&gt; hashtags (Lots of letters there! He must be much less lazy than me :) or simply &lt;a href="http://summize.com/search?q=+%23ezconf+OR+%23ezconference+OR+%23phpvikinger"&gt;follow all three&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you do sign up with &lt;a href="http://twitter.com/"&gt;twitter&lt;/a&gt;, feel free to &lt;a href="http://twitter.com/brucemorrison"&gt;follow me&lt;/a&gt; and write a tweat with a  &lt;a href="http://summize.com/search?q=+%23ezconf"&gt;#ezconf&lt;/a&gt; hashtag to let fellow twitters you are following along.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/"&gt;Help&lt;/a&gt; and an &lt;a href="http://twitter.pbwiki.com/Twitter+Etiquette"&gt;Etiquette Guide&lt;/a&gt; are available.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-7315643046721105562?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lyxw5uY2PRTPGcYKy45I07T-gqM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lyxw5uY2PRTPGcYKy45I07T-gqM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lyxw5uY2PRTPGcYKy45I07T-gqM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lyxw5uY2PRTPGcYKy45I07T-gqM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/Mf7wkvWEA5U" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-11T13:38:16.660+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_DP-Lebx3cmk/SFJOZMM6THI/AAAAAAAAABM/MkzFugO62Zg/s72-c/twittericon.jpeg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/06/micro-blogging-ez-conference.html</feedburner:origLink></item><item><title>eZ Publish release clarifications</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/BpIXC8kYLXY/ez-publish-release-clarifications.html</link><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Fri, 13 Jun 2008 01:00:20 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-310889132649995315</guid><description>In case you haven't  seen the comments generated out of my &lt;a href="http://suffandnonsense.blogspot.com/2008/06/new-versions-of-ez-publish-401-3101-395.html"&gt;last&lt;/a&gt; &lt;a href="http://suffandnonsense.blogspot.com/2008/06/ez-publish-news-no-hes-not-dead-hes_06.html"&gt;couple&lt;/a&gt; of posts, this is intended to be a summary.  Thanks to all the fine eZ  crew that  jumped on and clarified things.&lt;br /&gt;&lt;br /&gt;It appears that &lt;a href="http://www.blogger.com/profile/12779258759412509567"&gt;jagels&lt;/a&gt; &lt;a href="http://suffandnonsense.blogspot.com/2008/06/new-versions-of-ez-publish-401-3101-395.html#c687424403077576355"&gt;missed the middle '0' in 4.0.1&lt;/a&gt; in his &lt;a href="http://suffandnonsense.blogspot.com/2008/06/ez-publish-news-no-hes-not-dead-hes_06.html#c4611843892348614253"&gt;initial comment&lt;/a&gt;, making it seem (to me at least) like eZ were recommending that 4.0 &lt;span dir="ltr"&gt;should not be &lt;/span&gt;used and to hold off&lt;span dir="ltr"&gt; until 4.1. The advice was actually to wait for 4.0.1.&lt;br /&gt;&lt;br /&gt;Version 4.1 will come with the &lt;a href="http://ez.no/developer/forum/extensions/call_for_testers_new_online_editor"&gt;new TinyMCE based OE&lt;/a&gt; instead of (as well as?) the existing OE. The new &lt;a href="http://suffandnonsense.blogspot.com/2008/06/new-versions-of-ez-publish-401-3101-395.html#c3106874061386199083"&gt;TinyMCE OE can can also be used in eZ 4.0.x sites&lt;/a&gt; (Will the old OE work in 4.1 ?)&lt;br /&gt;&lt;br /&gt;eZ 4.1 will also include the following enhancements:&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span dir="ltr"&gt;&lt;a href="http://issues.ez.no/12423" rel="nofollow"&gt;http://issues.ez.no/12423&lt;/a&gt;: add seconds input to date time and time datatypes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span dir="ltr"&gt;&lt;a href="http://issues.ez.no/12539" rel="nofollow"&gt;http://issues.ez.no/12539&lt;/a&gt;: share compiled templates between site accesses&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span dir="ltr"&gt;&lt;a href="http://issues.ez.no/13009" rel="nofollow"&gt;http://issues.ez.no/13009&lt;/a&gt;: custom validation methos in edit handlers ( based on ideas in  &lt;a href="http://projects.ez.no/objectvalidation" rel="nofollow"&gt;http://projects.ez.no/objectvalidation )&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span dir="ltr"&gt;&lt;a href="http://suffandnonsense.blogspot.com/2008/06/new-versions-of-ez-publish-401-3101-395.html#c1262921569073287833"&gt;The microkernel changes will not be in 4.1&lt;/a&gt;.  This is not surprising as I'd expect that this is not a trivial task.  ( Though I am excited about the opportunities that this change will allow.  Can't wait to hear details at the eZ Conference )&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://ez.no/developer/news/ez_publish_4_0_1rc1_3_10_1rc1_released__1"&gt;release candidates 4.0.1rc1 &amp;amp; 3.10rc1 have been announced&lt;/a&gt;. The announcement contains important information about the troublesome "url alias" issue.&lt;br /&gt;&lt;br /&gt;I'm assuming that we'll see 3.9.5 &amp;amp; 4.1.0 soon as well.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-310889132649995315?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/UPMPkJH8JeQj127VFcXbKjxQEIE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UPMPkJH8JeQj127VFcXbKjxQEIE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/UPMPkJH8JeQj127VFcXbKjxQEIE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UPMPkJH8JeQj127VFcXbKjxQEIE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/BpIXC8kYLXY" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-13T18:00:20.586+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/06/ez-publish-release-clarifications.html</feedburner:origLink></item><item><title>New versions of eZ Publish (4.0.1, 3.10.1 &amp; 3.9.5) imminent</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/4jkx-nDTcoA/new-versions-of-ez-publish-401-3101-395.html</link><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Wed, 10 Dec 2008 19:38:16 PST</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4820552431169429366</guid><description>After my comment about  following subversion commit comments to get an idea of what is happening with  eZ Publish in my &lt;a href="http://suffandnonsense.blogspot.com/2008/06/ez-publish-news-no-hes-not-dead-hes_06.html"&gt;previous post&lt;/a&gt;, I realised it wasn't such a bad idea  and added the &lt;a href="http://pubsvn.ez.no/websvn2/rss.php?repname=nextgen&amp;amp;path=%2F&amp;amp;rev=0&amp;amp;sc=0&amp;amp;isdir=1"&gt;RSS feed&lt;/a&gt; to my reader.&lt;br /&gt;&lt;br /&gt;This morning I'm happy to report that the release trees for &lt;a href="http://pubsvn.ez.no/nextgen/release/4.0.1/"&gt;4.0.1&lt;/a&gt; &amp;amp; &lt;a href="http://pubsvn.ez.no/nextgen/release/3.10.1/"&gt;3.10.1&lt;/a&gt; &amp;amp; &lt;a href="http://pubsvn.ez.no/nextgen/release/3.9.5/"&gt;3.9.5&lt;/a&gt; have been created.&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_DP-Lebx3cmk/SE8RCx4D60I/AAAAAAAAABE/EUshNQzpNLo/s1600-h/eZ+Versions.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_DP-Lebx3cmk/SE8RCx4D60I/AAAAAAAAABE/EUshNQzpNLo/s400/eZ+Versions.png" alt="" id="BLOGGER_PHOTO_ID_5210402033336838978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Nothing  in the svn commits comments regarding 4.1. However this  &lt;span dir="ltr"&gt;&lt;/span&gt; &lt;a href="http://suffandnonsense.blogspot.com/2008/06/ez-publish-news-no-hes-not-dead-hes_06.html#c4611843892348614253"&gt; comment&lt;/a&gt; on my previous post has disturbed me:&lt;br /&gt;&lt;blockquote&gt; I have been to a couple of seminars where we were recommended to wait for 4.1 before we upgrade to eZ4 (by eZ employees).&lt;/blockquote&gt;Anyone have details of why this is the case?  With the launch of a 4.0 eZ site in the coming weeks I find this quite worrying.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4820552431169429366?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_0oLZTnzAlTZs8JfmwDwvAaXxhg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_0oLZTnzAlTZs8JfmwDwvAaXxhg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_0oLZTnzAlTZs8JfmwDwvAaXxhg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_0oLZTnzAlTZs8JfmwDwvAaXxhg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/4jkx-nDTcoA" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-11T13:38:16.876+10:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_DP-Lebx3cmk/SE8RCx4D60I/AAAAAAAAABE/EUshNQzpNLo/s72-c/eZ+Versions.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">10</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/06/new-versions-of-ez-publish-401-3101-395.html</feedburner:origLink></item><item><title>eZ Publish News: "No he's not dead, he's restin'!"</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/HElDreDLgzQ/ez-publish-news-no-hes-not-dead-hes_06.html</link><category>rant</category><category>ez publish</category><category>communication</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Thu, 05 Jun 2008 20:03:22 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-2216899934144076070</guid><description>&lt;q style="font-style: italic;"&gt;No no he's not dead, he's, he's restin'! Remarkable bird, the Norwegian Blue, idn'it, ay? Beautiful plumage!&lt;/q&gt; &lt;span style="font-size:85%;"&gt;from Monty Pythons "Dead Parrot" sketch.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Given that there hasn't been a release for the  eZ publish 3 series since October 2007  and December 2007 for the initial eZ publish 4.0 release, coupled by the lack of any concrete information regarding new releases, one may be forgiven in thinking that eZ Publish had been consigned to the great bit bucket in the ether. Fortunately it appears that unlike the Norwegian Blue, eZ was &lt;span style="font-style: italic;"&gt;actually&lt;/span&gt; restin'! (Actually I suspect they have been working very hard, just not telling us)&lt;br /&gt;&lt;br /&gt;I'm not sure how many people are downloading and reading eZ's SHARE! magazine PDF but if you're not then you would have missed this news regarding eZ Publish 4.1 from the &lt;a href="http://ez.no/company/news/june_edition_of_share_magazine_is_out"&gt;June issue&lt;/a&gt;:&lt;br /&gt;&lt;blockquote cite="http://ez.no/company/news/june_edition_of_share_magazine_is_out"&gt;&lt;h2&gt;eZ Publish 4.1 - what’s new?&lt;/h2&gt;The next version of our flagship product eZ Publish 4.1 will be released with an improved kernel and several extensions providing new or enhanced features. Highlights include:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A new Online Editor with support for more browsers and platforms (including IE7 on Vista, Safari)&lt;/li&gt;&lt;li&gt;A new extension providing multiple file upload from within the browser&lt;/li&gt;&lt;li&gt;Oracle support (from version 8), including support for the current cluster configurations&lt;/li&gt;&lt;li&gt;An extension providing functions for password expiry (typical use for intranets and extranets)&lt;/li&gt;&lt;li&gt;Solaris 10 support&lt;/li&gt;&lt;li&gt;Performance enhancements&lt;/li&gt;&lt;/ul&gt;In future releases, most new features will be made available through extensions as we are aiming more and more for a microkernel approach for eZ Publish.&lt;/blockquote&gt;No official word on release dates but &lt;a href="http://ez.no/developer/forum/developer/when_is_ez_3_10_1_comming/#msg167078"&gt;forum posts&lt;/a&gt; seem to indicate that release candidates are possible for next week.&lt;h2&gt;On Communications&lt;/h2&gt;I must admit I'm at a loss as to why the SHARE! magazine PDF is the primary communication method of a company that's flagship product is a Web CMS.  It doesn't show off their "product" (now, if the PDF was produced out of the CMS that would be a different matter), and seems to be a quite outdated communication methodology in a time of &lt;a href="http://twitter.com/"&gt;microblogging&lt;/a&gt;, &lt;a href="http://www.google.com/reader"&gt;RSS feeds&lt;/a&gt;, &lt;a href="http://www.facebook.com/"&gt;social networking&lt;/a&gt; and &lt;a href="http://friendfeed.com/"&gt;content aggregation&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;One the the main issues is that you can't link to specific information in a PDF (thats why I've reproduced the relevant information here) and it's a pain to have to download to view. This could be solved by simply adding the content to the eZ web site...it does use a CMS right?  Isn't utilising the eZ site for this information a great advertisment for the product?&lt;br /&gt;&lt;br /&gt;Perhaps it's aimed at a difference audience than me but then I'm not sure what that leaves me with...subversion comments?&lt;br /&gt;&lt;br /&gt;Anywhoo after that rant you might need something to put a smile on your face. If you're not familiar with Monty Pythons famous "Dead Parrot" sketch or simply need a laugh here it is. Enjoy!&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/e6Lq771TVm4&amp;amp;hl=en"&gt;&lt;embed src="http://www.youtube.com/v/e6Lq771TVm4&amp;amp;hl=en" type="application/x-shockwave-flash" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-2216899934144076070?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6pSr9lVgRJvLnIDnKWSyp1VYCn0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6pSr9lVgRJvLnIDnKWSyp1VYCn0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6pSr9lVgRJvLnIDnKWSyp1VYCn0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6pSr9lVgRJvLnIDnKWSyp1VYCn0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/HElDreDLgzQ" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-06T13:03:22.238+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/06/ez-publish-news-no-hes-not-dead-hes_06.html</feedburner:origLink></item><item><title>eZ Publish on list of "PHP Apps that changed the World"</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/-A8OV7eXmKQ/ez-publish-on-list-of-php-apps-that.html</link><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Mon, 26 May 2008 19:22:34 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-4032290942001261716</guid><description>&lt;a href="http://phpimpact.wordpress.com/"&gt;Federico Cargnelutti&lt;/a&gt; has &lt;a href="http://phpimpact.wordpress.com/2008/05/22/open-source-php-applications-that-changed-the-world/"&gt;listed a number of Open Source PHP applications&lt;/a&gt; that he believes has changed the world over the last 10 years and &lt;a href="http://ez.no/ezpublish"&gt;eZ Publish&lt;/a&gt; makes the list.&lt;br /&gt;&lt;br /&gt;As with any lists of this nature, every one has their own opinion, and the comments make good reading.&lt;br /&gt;&lt;br /&gt;One that isn't on the list or commented on is &lt;a href="http://www.phplist.com/"&gt;PHPList&lt;/a&gt;.  What's missing in your option?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-4032290942001261716?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_GZuXWIr6NI6Gol-Aqp27XlduZU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_GZuXWIr6NI6Gol-Aqp27XlduZU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_GZuXWIr6NI6Gol-Aqp27XlduZU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_GZuXWIr6NI6Gol-Aqp27XlduZU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/-A8OV7eXmKQ" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-27T12:22:34.362+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/05/ez-publish-on-list-of-php-apps-that.html</feedburner:origLink></item><item><title>What's happening with eZ Publish?</title><link>http://feedproxy.google.com/~r/SuffandNonsense/~3/kOXd-34izjs/whats-happening-with-ez-publish.html</link><category>ez publish</category><author>noreply@blogger.com (Bruce Morrison)</author><pubDate>Sun, 27 Apr 2008 17:11:07 PDT</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-17515758.post-7689497703325764988</guid><description>If you want to know what's happening with eZ publish then it seems that the Paris Developer day was the place to be.  You can read &lt;a href="http://pwet.fr/blog"&gt;Damien Pobels&lt;/a&gt; &lt;a href="http://pwet.fr/blog/ez_developer_day_a_paris_le_17_04_2008"&gt;excellent write up of the event&lt;/a&gt; (French).  If like me your French is limited to "hello", "goodbye" and asking for a beer here's an English &lt;a href="http://google.com/translate?u=http%3A%2F%2Fpwet.fr%2Fblog%2Fez_developer_day_a_paris_le_17_04_2008&amp;amp;langpair=fr%7Cen&amp;amp;hl=en&amp;amp;ie=UTF8"&gt;translation&lt;/a&gt; via google translate. Not perfect but you'll get the idea. Thanks Damien!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17515758-7689497703325764988?l=www.stuffandcontent.com'/&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rS46IrGUC2H0EVDRKeGaSBglRzQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rS46IrGUC2H0EVDRKeGaSBglRzQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rS46IrGUC2H0EVDRKeGaSBglRzQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rS46IrGUC2H0EVDRKeGaSBglRzQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SuffandNonsense/~4/kOXd-34izjs" height="1" width="1"/&gt;</description><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-28T10:11:07.646+10:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.stuffandcontent.com/2008/04/whats-happening-with-ez-publish.html</feedburner:origLink></item></channel></rss>
