bård farstad  eZ systems employee

› eZ publish cluster

We've just received, installed and configured the new cluster of servers to use for eZ publish performance testing. It's the hardware we will use to test and tweak the new clustering functionality in eZ publish 3.8. It's 7 servers in total, all dual Xeon 3.3 GHz with from 1-8GB of ram in them. The picture shows Sten with the rack.

Oh, the servers will be demo'ed on the eZ publish conference for those of you attending.

20/03/2006 1:28 pm (UTC)   Bård Farstad   View entry   Digg!  digg it!   del.icio.us  del.icio.us

bård farstad  eZ systems employee

› eZ publish cluster

We've just received, installed and configured the new cluster of servers to use for eZ publish performance testing. It's the hardware we will use to test and tweak the new clustering functionality in eZ publish 3.8. It's 6 servers in total, all dual Xeon 3.2 GHz with from 1-8GB of ram in them. The picture shows Sten with the rack.

Oh, the servers will be demo'ed on the eZ publish conference for those of you attending.

20/03/2006 1:28 pm (UTC)   Bård Farstad   View entry   Digg!  digg it!   del.icio.us  del.icio.us

sebastian bergmann  eZ systems employee

› AspectPHP

As I wrote earlier, I am not satisfied with the Current State of AOP for PHP and started to work on AspectPHP a while ago. Today I am going to share my ideas on the subject.

What sets AspectPHP apart from other implementations of Aspect-Oriented Programming is its simplicity: aspects are plain PHP classes that declare pointcuts using annotations.

The $joinPoint variable, which is passed to the method that is used as an advice, contains all information relevant to the join point that triggered the execution of the advice.

The example belows shows how to declare an aspect that logs all method calls:
<?php
/**
 * An aspect that logs all method calls.
 *
 * Declare a new pointcut named callPointCut using the @pointcut
 * annotation that captures join points on a method regardless of
 * modifier, class, method, or number of parameters.
 * @pointcut callPointCut : call(* *->*(..));
 *
 * Bind the after() method of this aspect as an after-advice to the
 * previously declared pointcut.
 * @after callPointCut : LoggingAspect->after();
 */
class LoggingAspect
{
    public function after($joinPoint)
    {
        printf(
          "%s->%s() called %s->%s()\n",
 
          $joinPoint->getSource()->getDeclaringClass()->getName(),
          $joinPoint->getSource()->getName(),
          $joinPoint->getTarget()->getDeclaringClass()->getName(),
          $joinPoint->getTarget()->getName()
        );
    }
}
?>
Unfortunately, I am too busy with other projects (preparing for my final two exams and working on PHPUnit 3) and therefore cannot offer any downloadable code at this point.

I hope to make an initial code release within the next two months.
19/03/2006 10:00 am (UTC)   Sebastian Bergmann   View entry   Digg!  digg it!   del.icio.us  del.icio.us

sebastian bergmann  eZ systems employee

› GNOME 2.14



Beagle / Nautilus integration goodness in GNOME 2.14.
18/03/2006 12:45 pm (UTC)   Sebastian Bergmann   View entry   Digg!  digg it!   del.icio.us  del.icio.us

community news (ez.no)  eZ systems employee

› Community newsletter 17/03/2006

A lot of things happened this week: We have released the alpha version of eZ publish 3.8, a new stable version 4.0.3 of Online Editor, and new sub-releases of eZ publish. Furthermore, we have published two new articles about features in eZ publish 4.0 and the future of eZ development. You will also find included in this newsletter an update on the current bug status.

17/03/2006 3:12 pm (UTC)   Community news (ez.no)   View entry   Digg!  digg it!   del.icio.us  del.icio.us

php developer

› O'Reilly: Autofilled PHP Forms

The O'Reilly OnLamp.com site has a tutorial posted that takes a look at a simple way to "auto-fill" HTML forms with a little help from PHP.

I hate typing, but I like writing code. A while ago I started to dread all the rote typing required to handle forms in PHP, and began looking for a Better Way. This article describes how I used PHP's regular expression functions to do most of the heavy lifting required to process forms properly, saving lots of typing and giving me time to do stuff I don't hate, such as writing code (and playing NetHack).

He sets it upJeff Cogswell, have had) to display the form, validate the input, and display the results of this validation (or a success message).

He takes a little bit different kind of method behind it than several form packages out there - he grabs the HTML output of the form with output buffering and does replaces on that with the previously entered values.

17/03/2006 2:32 pm (UTC)   PHP Developer   View entry   Digg!  digg it!   del.icio.us  del.icio.us

php developer

› DevArticles: Deploying your Site with PHPEclipse, continued

DevArticles has conntinued their "Deploying your Site with PHPEclipse" series with this new tutorial - part two in the series, a continuation of the excerpt of the "PHPEclipse: A User Guide" from Packt.

Part two picks up right where the previous entry left off - working with the settings for Ant to configure the site's deployment. They show you how to create the classpath and a build file for your site before showing you how to run it and do some testing.

They also look at one of the other tools that Ant has to offer to make managing your site that much simpler - the Outline view in Eclipse. It lays out the publishing "schedule" in one easy place.

17/03/2006 2:16 pm (UTC)   PHP Developer   View entry   Digg!  digg it!   del.icio.us  del.icio.us

php developer

› Sebastian Bergman's Blog: PHPUnit Support in PHPEclipse

On his blog, Sebastian Bergmann has a quick post about the PHPUnit support that he's been shown in an upcoming patch to the PHPEclipse project.

Steven Balthazor sent me a first version of his PHPUnit integration for PHPEclipse today.

The PHPUnit part of this (a TestListener that communicates via a socket with Eclipse) has been committed to CVS. Stephen will make his plugin code available shortly.

You can grab the update to your PHPUnit install from that CVS location, but keep an eye out for the patch to make its way out - they're both required to get it working.

17/03/2006 2:09 pm (UTC)   PHP Developer   View entry   Digg!  digg it!   del.icio.us  del.icio.us

php developer

› Sandro Groganz's Blog: The Future of eZ publish and eZ components

Sandro Groganz has posted some of his thoughts on the future of eZ publish and eZ components, including acknowledgement of the hard work that the projects' developers do.

Now you can take a look into the future of eZ publish development, as well as the eZ components. I have conducted and published an email interview with five of eZ systems' leaders of the development team.

Some of the items listed in the future of eZ components include a framework components, a MVC components, a workflow component and a search component. For eZ publish, there's actually a feature list that's just been published for the latest version - 4.0 - that will be out to the public during the beginning of June.

17/03/2006 2:03 pm (UTC)   PHP Developer   View entry   Digg!  digg it!   del.icio.us  del.icio.us

sandro groganz

› eZ publish 3.8 will ship with Content Diff

One major feature which will be part of the forthcoming eZ publish 3.8 release ( out in May) is content version diff functionality. It will sit on top of the versioning and archiving system, which is included by default since the early days of eZ publish 3.

Related to Multilang Enhancements

Integrating content diff is a logical move, if you consider that eZ publish 3.8 will also include enhanced multilanguage handling. The new multilang features are most useful when translating content, and here, content diff is just perfect to spot changes in the language version which is supposed to be translated.

Diffing Accross Datatypes

Combined with the content object model of eZ publish, you will be able to diff content per object attribute. This means, that it is not just one big text field like in Wikis, where you can identify changes. Actually, the cool thing is that you can diff accross any "form field" of your content, or in eZ publish linguage: accross the various datatypes.

Of course, diffing does not make sense for all datatypes, for example, binary data like images. Indeed, what you can do with the image datatype, is to diff its metadata like filename, size, and modification date, also the alternative text.

The following datatypes will have diffing capability: price, URL, email, date, time, datetime, float, string, xml field, keyword, media, etc.

Read more in the Content Version Diff specification.

17/03/2006 10:41 am (UTC)   Sandro Groganz   View entry   Digg!  digg it!   del.icio.us  del.icio.us

eZ publish™ copyright © 1999-2005 eZ systems as