Skip Menu |
 

This queue is for tickets about the VSO CPAN distribution.

Report information
The Basics
Id: 75065
Status: open
Priority: 0/
Queue: VSO

People
Owner: Nobody in particular
Requestors: mst [...] shadowcat.co.uk
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



From matthewt [...] agaton.scsys.co.uk Thu Feb 16 12: 03:57 2012
MIME-Version: 1.0
X-Spam-Status: No, score=-3.585 tagged_above=-99.9 required=10 tests=[AWL=-1.685, BAYES_00=-1.9] autolearn=ham
Content-Disposition: inline
X-Spam-Flag: NO
content-type: text/plain; charset="utf-8"
Message-ID: <20120216170052.GA19118 [...] agaton.scsys.co.uk>
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Spam-Score: -3.585
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id 9567324165D for <cpan-bug+VSO [...] hipster.bestpractical.com>; Thu, 16 Feb 2012 12:03:57 -0500 (EST)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JPzbgKTGSbqy for <cpan-bug+VSO [...] hipster.bestpractical.com>; Thu, 16 Feb 2012 12:03:53 -0500 (EST)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id E2AB524159C for <bugs-VSO [...] rt.cpan.org>; Thu, 16 Feb 2012 12:03:51 -0500 (EST)
Received: (qmail 5385 invoked by uid 103); 16 Feb 2012 17:03:51 -0000
Received: from x16.dev (10.0.100.26) by x1.dev with QMQP; 16 Feb 2012 17:03:51 -0000
Received: from jules.scsys.co.uk (HELO jules.scsys.co.uk) (217.168.153.160) by 16.mx.develooper.com (qpsmtpd/0.80/v0.80-19-gf52d165) with ESMTP; Thu, 16 Feb 2012 09:03:46 -0800
Received: from [217.168.150.167] (helo=agaton.scsys.co.uk) by jules.scsys.co.uk with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from <matthewt [...] agaton.scsys.co.uk>) id 1Ry4kA-0003OO-3G; Thu, 16 Feb 2012 17:03:42 +0000
Received: from matthewt by agaton.scsys.co.uk with local (Exim 4.60) (envelope-from <matthewt [...] agaton.scsys.co.uk>) id 1Ry4hQ-0003M9-AT; Thu, 16 Feb 2012 17:00:52 +0000
Delivered-To: cpan-bug+VSO [...] hipster.bestpractical.com
User-Agent: Mutt/1.5.11
Subject: A small list of disasters
Return-Path: <matthewt [...] agaton.scsys.co.uk>
X-RT-Mail-Extension: vso
X-Original-To: cpan-bug+VSO [...] hipster.bestpractical.com
X-Spam-Check-BY: 16.mx.develooper.com
Date: Thu, 16 Feb 2012 17:00:52 +0000
X-Spam-Level:
To: bugs-VSO [...] rt.cpan.org
From: Matt S Trout <mst [...] shadowcat.co.uk>
X-RT-Original-Encoding: us-ascii
Content-Length: 1661
Download (untitled) / with headers
text/plain 1.6k
- using yourself as a superclass is stupid. 'use My::VSO::Class;' # BOOM - defined(@array) is deprecated and doesn't do what you think it does - your BUILD implementation is incompatible with every other such on CPAN - jamming validation code into the class is scary - your method modifier attempt is buggy and slow compared to everybody else's - $INC{$file} ||= $file; is a lie and will break things - all exports are now also methods on your classes, which is horrible - you have no explanation as to what your code provides that Moose/Mouse/Moo/Mo don't, except for a bunch of miserably wrong design decisions and bugs. - and in fact, Mo is massively simpler. Moo provides the same feature set and then some, but actually works. And Moose/Mouse are the real thing. I'm sure you had a lot of fun writing this, but if you're going to leave it on CPAN without a complete rewrite then it needs a big "warning warning don't try and use this for real code" sticker putting on it, and if you're going to do a complete rewrite then the end result is basically going to be Moo/Mo, so I'm not really sure I see the point. I'd encourage you to instead consider factoring out your VSO::Subtype code into something that can be used in Moo classes, and switching to that - if you wanted to have a go at that I'd be more than happy to help. -- Matt S Trout - Shadowcat Systems - Perl consulting with a commit bit and a clue http://shadowcat.co.uk/blog/matt-s-trout/ http://twitter.com/shadowcat_mst/ Email me now on mst (at) shadowcat.co.uk and let's chat about how our Catalyst commercial support, training and consultancy packages could help your team.
MIME-Version: 1.0
In-Reply-To: <20120216170052.GA19118 [...] agaton.scsys.co.uk>
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
References: <20120216170052.GA19118 [...] agaton.scsys.co.uk>
Content-Type: text/plain; charset="UTF-8"
Message-ID: <rt-3.8.HEAD-10811-1332980855-179.75065-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 2106
On Thu Feb 16 12:03:58 2012, mst@shadowcat.co.uk wrote: Show quoted text
> - using yourself as a superclass is stupid. 'use My::VSO::Class;' # > BOOM > > - defined(@array) is deprecated and doesn't do what you think it does > > - your BUILD implementation is incompatible with every other such on > CPAN > > - jamming validation code into the class is scary > > - your method modifier attempt is buggy and slow compared to everybody > else's > > - $INC{$file} ||= $file; is a lie and will break things > > - all exports are now also methods on your classes, which is horrible > > - you have no explanation as to what your code provides that > Moose/Mouse/Moo/Mo > don't, except for a bunch of miserably wrong design decisions and > bugs. > > - and in fact, Mo is massively simpler. Moo provides the same feature > set and > then some, but actually works. And Moose/Mouse are the real thing. > > I'm sure you had a lot of fun writing this, but if you're going to > leave it > on CPAN without a complete rewrite then it needs a big "warning > warning don't > try and use this for real code" sticker putting on it, and if you're > going to > do a complete rewrite then the end result is basically going to be > Moo/Mo, so > I'm not really sure I see the point. > > I'd encourage you to instead consider factoring out your VSO::Subtype > code > into something that can be used in Moo classes, and switching to that > - if > you wanted to have a go at that I'd be more than happy to help. >
Thank you for reading through the code. Your ticket's title pretty much sums it up. Yes it was fun to write - and yes as you know, all your points are completely valid. VSO is going away in a few weeks' time and I'll be switching anything written against VSO to use Moose instead. Also, I recently discovered that my ASP4 and Class::DBI::Lite have some *major* problems beyond a certain scale. I've been working with someone who is much more senior and learning something new (and surprising) on almost an hourly basis. It's great to be out of the vacuum. Catalyst+DBIC+Moose - here we come (as quick as we can).
From matthewt [...] agaton.scsys.co.uk Thu Mar 29 09: 53:09 2012
MIME-Version: 1.0
X-Spam-Status: No, score=-3.315 tagged_above=-99.9 required=10 tests=[AWL=-1.415, BAYES_00=-1.9] autolearn=ham
In-Reply-To: <rt-3.8.HEAD-10811-1332980855-90.75065-6-0 [...] rt.cpan.org>
Content-Disposition: inline
X-Spam-Flag: NO
References: <RT-Ticket-75065 [...] rt.cpan.org> <20120216170052.GA19118 [...] agaton.scsys.co.uk> <rt-3.8.HEAD-10811-1332980855-90.75065-6-0 [...] rt.cpan.org>
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
Message-ID: <20120329134456.GA19118 [...] agaton.scsys.co.uk>
Content-Type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
X-Spam-Score: -3.315
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id 36D362401C6 for <cpan-bug+VSO [...] hipster.bestpractical.com>; Thu, 29 Mar 2012 09:53:09 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id k6psJRdCuOK2 for <cpan-bug+VSO [...] hipster.bestpractical.com>; Thu, 29 Mar 2012 09:53:07 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id 454412401C2 for <bug-VSO [...] rt.cpan.org>; Thu, 29 Mar 2012 09:53:06 -0400 (EDT)
Received: (qmail 32710 invoked by uid 103); 29 Mar 2012 13:53:06 -0000
Received: from x16.dev (10.0.100.26) by x1.dev with QMQP; 29 Mar 2012 13:53:06 -0000
Received: from jules.scsys.co.uk (HELO jules.scsys.co.uk) (217.168.153.160) by 16.mx.develooper.com (qpsmtpd/0.80/v0.80-19-gf52d165) with ESMTP; Thu, 29 Mar 2012 06:53:00 -0700
Received: from [217.168.150.167] (helo=agaton.scsys.co.uk) by jules.scsys.co.uk with esmtp (Exim 4.60) (envelope-from <matthewt [...] agaton.scsys.co.uk>) id 1SDFma-0007IE-Ix for bug-VSO [...] rt.cpan.org; Thu, 29 Mar 2012 13:52:56 +0000
Received: from matthewt by agaton.scsys.co.uk with local (Exim 4.60) (envelope-from <matthewt [...] agaton.scsys.co.uk>) id 1SDFeq-0008DM-8m for bug-VSO [...] rt.cpan.org; Thu, 29 Mar 2012 14:44:56 +0100
Delivered-To: cpan-bug+VSO [...] hipster.bestpractical.com
Subject: Re: [rt.cpan.org #75065] A small list of disasters
User-Agent: Mutt/1.5.11
Return-Path: <matthewt [...] agaton.scsys.co.uk>
X-Spam-Check-BY: 16.mx.develooper.com
X-Original-To: cpan-bug+VSO [...] hipster.bestpractical.com
X-RT-Mail-Extension: vso
Date: Thu, 29 Mar 2012 14:44:56 +0100
X-Spam-Level:
To: John Drago via RT <bug-VSO [...] rt.cpan.org>
From: Matt S Trout <mst [...] shadowcat.co.uk>
RT-Message-ID: <rt-3.8.HEAD-10809-1333029189-583.75065-0-0 [...] rt.cpan.org>
Content-Length: 1942
Download (untitled) / with headers
text/plain 1.8k
On Wed, Mar 28, 2012 at 08:27:35PM -0400, John Drago via RT wrote: Show quoted text
> Thank you for reading through the code. Your ticket's title pretty much > sums it up.
On the upside, the code didn't make me throw up in my mouth. It was just buggy. Show quoted text
> Yes it was fun to write - and yes as you know, all your points are > completely valid.
Oh, I'm absolutely certain of that, I've made pretty much every single one of those mistakes myself! (except the class-as-exporter one which I encountered repeatedly in other people's code early enough to avoid :) Show quoted text
> VSO is going away in a few weeks' time and I'll be switching anything > written against VSO to use Moose instead.
Make sure to do a last release on CPAN saying all of this, and perhaps noting the problems just in case somebody tries to use it anyway. Show quoted text
> Also, I recently discovered that my ASP4 and Class::DBI::Lite have some > *major* problems beyond a certain scale.
Being unable to say "yes" to customer requests wrt Class::DBI is why DBIx::Class exists - the CDBI codebase just can't be bent beyond a certain point. You got about as far as I did :D Show quoted text
> I've been working with someone who is much more senior and learning > something new (and surprising) on almost an hourly basis. It's great to > be out of the vacuum. > > Catalyst+DBIC+Moose - here we come (as quick as we can).
Awesome. I look forward to seeing you putting your talents to use in the mainstream community, if I thought you were incompetent I'd've explained the bugs in this ticket in far more detail. Nice to see I was right that you'd understand 'em just from the brief notes. I'll see you there! -- Matt S Trout - Shadowcat Systems - Perl consulting with a commit bit and a clue http://shadowcat.co.uk/blog/matt-s-trout/ http://twitter.com/shadowcat_mst/ Email me now on mst (at) shadowcat.co.uk and let's chat about how our Catalyst commercial support, training and consultancy packages could help your team.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.