The Problems of Perl: The Future of Bugzilla

Max Kanat-Alexander mkanat at
Thu May 3 17:43:11 UTC 2007

On Thu, 03 May 2007 14:47:27 +0300 Teemu Mannermaa <wicked at>
> At least for me, that's not true. If I would suddenly get a PHP,
> Python or even, sick, a Ruby review request it would probably take up
> to 1 year to get into speed. Why? Because I would have to learn the
> language first. Just like I had to learn Perl back when I was
> starting to use Bugzilla.

	I think you'd be surprised there. Ruby in particular is
extremely easy to learn:

> Only small fraction of 
> time goes into making sure our style guide rules are met.

	Whereas I, on the other hand, spend most of my time there.

> This could be why patches from known contributors seems to be more
> easy to review and accept. Or maybe they just don't know yet what
> objects, utility subroutines, filters and other ready-made items we
> already have and tend to "reinvent the wheel".

	Yes, that's because *we've* "re-invented the wheel" to add
features that the language doesn't have, like a base object for all
objects. That is, nobody is familiar with what we're doing because we
had to make it up, instead of having it be supplied by some framework
or the language itself.

> I don't know what patch writers think about our rules. For me that's
> not a problem as I don't know any other way. :)

	Yeah--that's one difference in our viewpoints, perhaps. I've
used a lot of other languages and I've worked on a lot of other
projects, and I know the difference a language and a framework can make.

> Besides, I thought
> they are based on globally accepted Style Guide of Perl.

	Yeah, and 10 pages of Developer's Guide. :-)

> True, but I don't think we have used much those strange variables.
> Isn't there supposed to be way to write Perl without using them?

	Yes, but we have to enforce it as reviewers. The language
doesn't enforce it for us.

> Sure, it can have nasty structures that you have never seen before.
> You can't read a language that you don't know. This applies to every
> language.

	Yes, but if you'd used Python or Ruby (or Java) extensively,
you'd probably see that they're usually inherently more readable.

> I don't think any error message makes any sense if you don't know how 
> things work.

	Python's are pretty clear, even if they're really basic. (Well,
the tracebacks can be hard to read, but hey.)

> Big question for me is not how easy they are to install myself but 
> rather if there are packages available for them in my platform. Okay, 
> having RPMs makes them very easy to install but it also gets me
> security updates. I don't want to follow each and every module myself
> to know when they have a security update out there that I need to
> install.

	There are a lot of RPMs available for both Ruby and Python. I
don't know exactly how many RubyGems there are available as RPMs--I'd
have to investigate that.

Competent, Friendly Bugzilla Services. And Everything Else, too.

More information about the developers mailing list