March, 2006 Archives

March 31, 2006

March 31, 2006 - I need a perl-based conference system

As TPF Conferences Chair, I try to help eager, excited organizers put together a YAPC. Ever since I ran YAPC in Buffalo in 2004, I've wanted to put together something called Conference::Toolkit that would solve all of the YAPC web-site needs. Well, given my TPF duties, I honestly don't have the time to do this right.

And I want it done right. I want to put together the best conference management toolkit available.

"What about ACT?" you might be saying.

Well, I have checked that out, and it's a promising start. But it's not quite there for a few reasons:

  • It's not on CPAN, so people can't modify it or host their own version.
  • It doesn't currently work with the TPF donation system. (We can work on fixing this.)

What I'd really like to see is something that:

  • Is on CPAN, so anyone can grab it. This allows people to host on their own if they want, people can contribute and, perhaps most of all, other people running a conference can use it. I want everyone running a conference to be able to use Conference::Toolkit.
  • Is also offered in a hosted mode, like ACT is now, so I can point YAPC organizers to it and get them set up quickly. When you coordinate a YAPC, believe me, there are more important things to be doing than messing around with the web site. But that's what we do because we're techies and it's the most attractive to-do item on the list.
  • Is written using one of the Perl frameworks so new people can pick it up easy. I'm thinking Catalyst? or CGI::Prototype? or...?

One path would be to start Conference::Toolkit as a Catalyst project, get it on CPAN, and integrate all the great work already done by the ACT coders. If we make it sufficiently pluggable, we can allow different payment systems, different scheduling systems, etc.

But as I said, I can't do it by myself. I can help with design, review, project management, cat herding, and even a patch or two.

I'm working on contact info for the ACT folks (Eric Cholet and Philippe Bruhat, according to the web site). If someone from the ACT team sees this, do you have any interest in taking the project in this direction? Is there another direction we can go?

Gabor Szabo wrote and subsequently used to organize {YAPC,OSDC}::Israel

contributed by nothingmuch on March 31, 2006 7:23 PM

I am also interested in such a solution. Would be glad about a hint.

contributed by Kalyxo on March 31, 2006 10:00 PM

I wrote one such toolkit! :D It has some missing or lacking parts, but all in all, it can be quite useful to you. It is called Comas (short for "Conference Management System"). Disregard the strongly lacking webpage, as I just haven't had time to work on it yet ;) Better go look at our Alioth project page.
It is strongly tied to Postgres, and written in Perl.
You will see the Alioth site looks also quite empty - that's because we are in the process of moving from
You can anonymously browse the code or "download it via SVN"<svn://>, or join the project and have commit access.
As I said, the project is quite strong in some fronts, while quite lacking in others. Some parts, of course, strongly embarass me... But it is a nice system all in all :) Mail me if you are interested in the details.

contributed by Gunnar Wolf on March 31, 2006 10:48 PM

Thanks for the info (both references). I'll take a look.

contributed by Jim Brandt on April 3, 2006 1:51 PM

I would be interested in helping, I would just need some direction.

contributed by Jeremy Fluhmann on April 19, 2006 4:24 PM

I have an online registration system in Perl. I've used it for a provincial computer conference system and have just opened online registration for a provincial Science and Mathematics conference. It does email-back confirmation and generates PDF via LaTeX for mail-in payments. It has extensive Admin functions (data export, user confirmation, etc.) The online sciematics is at: The online computer one is at: (and is currently closed but I can provide access passwords to admin areas etc, if interested)

contributed by Les Richardson on April 20, 2006 6:22 PM

If anyone decides to move forward with this and take the lead, please contact me fluhmann AT gmail DOT com (easiest way). I would be interested in helping.

contributed by Jeremy Fluhmann on May 4, 2006 4:29 PM

March 24, 2006

March 24, 2006 - YAPC::Asia::2006 coming soon in Tokyo

I've been remiss in noting that YAPC::Asia::2006 is right around the corner. But if you're in Tokyo and want to go, it appears you're a bit too late. They've sold out!

They have a great line-up of talks and speakers. If you're already registered, have fun!

March 08, 2006

March 8, 2006 - YAPC::Brasil::2006 Coming in April

This year YAPC::Brasil will be held April 19-22, 2006 in Porto Alegre/RS, Brazil in conjunction with the 7th International Free Software Forum. From what I've heard, FISL (I think that's the correct acronym) is a huge OSS event with attendance last year of over 4,000 people. Brasil is very OSS-friendly and I believe they had some major government officials at the conference last year.

Since it doesn't specifically house a "Perl Conference" like OSCON, it makes perfect sense to run YAPC along-side it. Randal Schwartz attended last year and I believe he plans on attending again.

What a shame YAPC::Asia::2006 is not mentioned here! We only have 5 days left!

We have Audrey, Larry, and Damian coming. Stay tuned!

Dan the Speaker Thereof

contributed by Dan Kogai on March 24, 2006 6:27 AM

Sorry about that. Consider yourself now mentioned on the front page.

contributed by Jim Brandt on March 24, 2006 5:24 PM

March 07, 2006

March 7, 2006 - Nicholas Clark's "Improve Perl 5" grant work

I have just received the first report for Nicholas Clark's grant. So far, things are going rather well. Read on to see what Nicholas has done.

I've completed the planned typeglob (PVGV) structure shrinking. This turned out to be somewhat more complex than I expected. Specifically:

  • Discovered that PVGVs use magic to perform stringification. Removed this need for magic, saving 24 bytes.
  • Discovered that pads use PVGVs for storing C variable names. Changed C variables to be stored in PVMGs
  • Moved the GP pointer to the SV head structure, saving 1 level of dereferencing (and 4 bytes)
  • Managed to merge in all the other fields of PVGVs into the fixed part of SV structure common with all the smaller SVs. (saves 16 bytes)
  • Change from storing the GV's name in a string to using a sharing the hash key structure used by the symbol table holding this typeglob. (saves the length of the typeglob name) sizes for systems with 4 byte pointers and longs, such as x86 and default PPC

I think this roughly halves the size of PVGVs. For an example, the installman script in the perl source tree uses over 1200 PVGVs, so this saves about 50K.

PVLVs had no magic associated, but benefit from all the other savings.

I've completed the planned PVCV and PVFM shrinking. Both are now about 25% smaller (eg 20 bytes). installman uses 600 PVCVs, so this saves about 12K

Is anything known about performance improvements yet? I'm curious if there's extra speed in these changes as well as memory savings.

contributed by Juerd on March 7, 2006 7:49 PM

March 07, 2006

March 7, 2006 - PPI Refactoring Editor

One of the grants the grant committee approved last year was to extend PPI towards a refactoring editor. At that time, we didn't have procedures in place to take the grant reports and post them to a common spot. Now that we have this blog, our intention is to post these reports regularly so you can see the bang you're getting for your buck.

What follows is Adam Kennedy's report on his PPI work.

One of the biggest talking points about PPI since its initial creation has been the prospect of smarter tools, and in particular getting a PPI-based "refactoring editor".

But the goal for PPI 1.0 was never for it to be useful in an interactive, performance-critical environment. It was about getting B sort of parser working, and in my personal case one that could be used to do various non-interactive document transformations.

This Phase 2 grant is intended primary to allow me to spend some time working on various bits and pieces needed to create these tools, and solve the various problems currently preventing PPI being usable in an editor context.

The end goal for the grant is a proof-of-concept cross-platform refactoring Perl editor, itself implemented in Perl and installable directly from CPAN.

While I don't expect to complete a full featured and polished editor, by providing some examples of the sorts of things that can be done in a Perl refactoring editor, it will inspire others to improve it and take the concept further.

So far, I've made or assisted others to take number of positive steps.

  • PPI::Cache has been completed.

It should speed up loading of documents in project trees by a minimum of a factor of 4, more as further optimisations are made.

  • PPI is (ASCII) line-noise compatible.

What gets typed into an editor is almost never actually legal Perl, and each keystroke takes the document through strange and evil border cases.
With the assistance of Audrey Tang, you can now throw random ASCII line noise at PPI and it will do whatever it takes to produce B that is a valid document.

  • Taken over and rewritten File::HomeDir

A rewrite of this venerable module means it should now work properly on multiple platforms, and for multiple resource types (documents, application data, etc). It has been tested under the three main Perl-related desktop environment (Win32, Unix, Mac OS X)

  • Created File::ShareDir

Distribution installers such as Module::Install can now install shared data files, and the application can find them later. This will make the installation of heavier programs like editors and other applications that require a large amount of shared data files much easier.

  • Created File::UserConfig

File::UserConfig wraps around the above two modules. It finds the user's config directory (on all platforms), copying in a defult config directory if it doesn't exist.

  • Helping to make Win32 Perl a first class citizen

After some issues with trying to complete PXPerl, I took the approach of running a "vertical metre of beer" competition. With the CamelPack now available (and Vanilla Perl almost here), for the first time we have the chance to create a true cross-platform desktop application for Unix, Win32 and Mac OS X that can be installed from CPAN directly.

  • CPANifying the Proton CE Editor

I'll be using the Proton CE editor (to be renamed) as the base for my proof-of-concept editor. Quite a bit of work has been done to take this editor close to the point where it can be distributed via CPAN.
It has been reorganised as a CPAN tarball, and is in the process of being converted to File::Spec and File::UserConfig. It should appear on CPAN shortly.

  • Helped create App::GUI::Notepad

Hopefully released by the time you read this, I've worked with Ben Marsh to create a small re-implementation of Notepad that works fully cross-platform and installs directly from CPAN. I set up the structure for the distribution and ensured the depenedencies all install cleanly, and Ben has created application itself and done the WxWindows work.

  • Perl::Critic

The amazing Jeffery Thalhammer has produced a great implementation of a scanner for Damien Conways Perl Best Practices Book. I've chipped in with attaboys and various changes to PPI as needed to help out.

  • Perl::Metrics

Perl::Metrics is done, but is idling in the face of CPAN::Metrics crashing due to memory issues 2-3 times per CPAN run. Left it for now to focus on getting the main editor up and running.

Current Status:

The Proton CE cpanification is progressing fine, heading towards an initial function-neutral release before beginning to add the PPI magic to the editor.

In the mean time, App::GUI::Notepad will serve as the basis for an excellent testing platform and alternative host for the Perl::Editor implementation.

I'd put my current progress at around 80%, with 99% the heavy preliminaries out of the way and only the guts of the editor itself to go.

March, 2006 Archive

This page contains all entries posted to The Perl Foundation in March, 2006. They are listed in order from newest to oldest.

Many more entries can be found on the main index page or by looking through the archives.

Powered by