Zend\Gearman RFC

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Zend\Gearman RFC

Mike Willbanks
Hello Folks,

I've added an RFC for Zend\Gearman.  Currently this component is a
module that I have on GitHub that my team is using internally.  There
are likely 2 things to note about the component:
1. Zend\Console integration will likely happen in a phase 2.
2. Please look through the design on Github and provide feedback;
there is likely some factory level work that can be done to make the
API feel cleaner.

RFC: http://framework.zend.com/wiki/display/ZFDEV2/RFC+-+Gearman
Github: https://github.com/mwillbanks/mwGearman

Regards,

Mike
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

Tomáš Fejfar
Sorry to be Mr.Pessimist, but why does ZF needs a specific Gearman class? Are the "default" gearman classes somehow outdated? 

If it's only utility layer over the existing classes, than it IMO does not seem to have enough "hard" functionality to be part of ZF. When there are existing classes for the job, it practically a service. Much like Zend\Service\Facebook - it also has PHP classes, but they suck! But it is still not a reason to add it to the Core IMO. 

I didn't even like adding Zend\Crypt in the situation where much more crucial parts of the framework are not ready, but it does create a missing link - the crypt support in PHP is clumsy and unintuitive and also needed by most of the users. Again, not the case of Gearman.

I'm curious whether I¨m the only one feeling this way or the rest of the community is looking forward to cluttered ZF full of unmaintained components as it is in the latest ZF1 releases. 

On Tue, Jun 19, 2012 at 4:01 PM, Mike Willbanks <[hidden email]> wrote:
Hello Folks,

I've added an RFC for Zend\Gearman.  Currently this component is a
module that I have on GitHub that my team is using internally.  There
are likely 2 things to note about the component:
1. Zend\Console integration will likely happen in a phase 2.
2. Please look through the design on Github and provide feedback;
there is likely some factory level work that can be done to make the
API feel cleaner.

RFC: http://framework.zend.com/wiki/display/ZFDEV2/RFC+-+Gearman
Github: https://github.com/mwillbanks/mwGearman

Regards,

Mike

Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

Mike Willbanks
Hi Tomas,

> Sorry to be Mr.Pessimist, but why does ZF needs a specific Gearman class?
> Are the "default" gearman classes somehow outdated?

Having some Gearman classes can create the glue; for instance there
are several ways to communicate with Gearman (pecl extension, pear
package, build your own).  Additionally it will aide in unit testing.
The bigger part of this will happen with console integration which
will provide a BaseWorker.  The worker portion can take quite a bit of
complexity out of the system.  I certainly do not mind keeping it as a
module if folks would rather see it there.

> If it's only utility layer over the existing classes, than it IMO does not
> seem to have enough "hard" functionality to be part of ZF. When there are
> existing classes for the job, it practically a service. Much like
> Zend\Service\Facebook - it also has PHP classes, but they suck! But it is
> still not a reason to add it to the Core IMO.

Right now it is just a wrapper around the pecl client; I plan to wrap
it around Net_Gearman as well.  The bigger part will be Zend\Console
integration but since that is not in master yet, I do not have an
integration with it as of yet.  Additionally it does provide a more
functional API and brings in some additional consistency.  Again,
keeping this as a module is fine with me if this is where others would
like to see this.

> I didn't even like adding Zend\Crypt in the situation where much more
> crucial parts of the framework are not ready, but it does create a missing
> link - the crypt support in PHP is clumsy and unintuitive and also needed by
> most of the users. Again, not the case of Gearman.

Sure; I understand where you are coming from.

> I'm curious whether I¨m the only one feeling this way or the rest of the
> community is looking forward to cluttered ZF full of unmaintained components
> as it is in the latest ZF1 releases.

I don't think this is a fair assessment.  I understand that ZF1
releases did become unmaintained towards the end but that is mostly in
part due to ZF2.  Certain components such as services are likely the
worst that were hit and those have a plan to be moved outside of the
core anyway.

Regards,

Mike
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

Wil Moore III
In reply to this post by Tomáš Fejfar
I'm curious whether I¨m the only one feeling this way or the rest of the community is looking forward to cluttered ZF full of unmaintained components as it is in the latest ZF1 releases. 

No, you are not the only one that feels this way. It is frustrating to argue in favor of the framework against those that say it is bloated because from the outside, it looks like the Zend\* namespace is a dumping ground for whatever one is thinking at the moment.


Mike, I don't want this to sound like I'm hating on your component…I haven't looked at it and it's probably useful. I'm talking in general since the topic was brought up and it is one that annoys me from time-to-time.

That being said, the nice thing is that all of the cruft (and there is a good bit of it) can largely be ignored. With packages being "Composer"-able, this situation is only slightly annoying.

Still, the truth is that there are still many components that would be more successful outside of the Zend\* namespace where others that don't use Zend could collaborate. Unless I am missing something, is there some intrinsic benefit to stuffing everything under Zend\*?


Personally, I think the workflow for including a component under the Zend\* namespace should look something like:

  1. Build something cool that scratches a real itch outside of the Zend\* namespace.
  2. Use it in your own projects along-side Zend Framework (composer makes this cake).
  3. Blog/Tweet about how you use it with Zend Framework (examples, recipes, …).
  4. Finally, strike-up a discussion about the potential inclusion via the mailing-list and Irc.

Finally, if development of a component starts off with a discussion entitled "what should this thing look like", cruft will surely ensue.

--
Wil Moore III

Best Practices for Working with Open-Source Developers
http://www.faqs.org/docs/artu/ch19s02.html

Why is Bottom-posting better than Top-posting:
http://www.caliburn.nl/topposting.html

DO NOT TOP-POST and DO trim your replies:
http://linux.sgms-centre.com/misc/netiquette.php#toppost
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

David Muir-2
On 20/06/12 00:57, Wil Moore III wrote:
I'm curious whether I¨m the only one feeling this way or the rest of the community is looking forward to cluttered ZF full of unmaintained components as it is in the latest ZF1 releases. 

No, you are not the only one that feels this way. It is frustrating to argue in favor of the framework against those that say it is bloated because from the outside, it looks like the Zend\* namespace is a dumping ground for whatever one is thinking at the moment.


Mike, I don't want this to sound like I'm hating on your component…I haven't looked at it and it's probably useful. I'm talking in general since the topic was brought up and it is one that annoys me from time-to-time.

That being said, the nice thing is that all of the cruft (and there is a good bit of it) can largely be ignored. With packages being "Composer"-able, this situation is only slightly annoying.

Still, the truth is that there are still many components that would be more successful outside of the Zend\* namespace where others that don't use Zend could collaborate. Unless I am missing something, is there some intrinsic benefit to stuffing everything under Zend\*?


Personally, I think the workflow for including a component under the Zend\* namespace should look something like:

  1. Build something cool that scratches a real itch outside of the Zend\* namespace.
  2. Use it in your own projects along-side Zend Framework (composer makes this cake).
  3. Blog/Tweet about how you use it with Zend Framework (examples, recipes, …).
  4. Finally, strike-up a discussion about the potential inclusion via the mailing-list and Irc.

Finally, if development of a component starts off with a discussion entitled "what should this thing look like", cruft will surely ensue.


Another argument is release cadence. If it's outside of ZF, then you can release a new version when _you_ deem it's appropriate. If it's in ZF core, then it's effectively locked in. No BC breaks until ZF3, and updates have to wait until the next regular ZF update.

Cheers,
David
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

Wil Moore III
If it's outside of ZF, then you can release a new version when _you_ deem it's appropriate. If it's in ZF core, then it's effectively locked in. 

Excellent point…glad you mentioned this.

--
Wil Moore III

Best Practices for Working with Open-Source Developers
http://www.faqs.org/docs/artu/ch19s02.html

Why is Bottom-posting better than Top-posting:
http://www.caliburn.nl/topposting.html

DO NOT TOP-POST and DO trim your replies:
http://linux.sgms-centre.com/misc/netiquette.php#toppost
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

Gregory
It's a good/excellent point, however it maybe a concern that it could
end up like jQuery with a plethora of plugins all doing practically
doing the same thing, e.g lightbox. With ZF1 it was a single library
that provides good/excellent coverage? Whether or not they should all
share the same namespace might be open for question, but its about the
official Zend support behind them?
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

rhunwicks
On 06/20/2012 09:09 AM, Greg wrote:
> It's a good/excellent point, however it maybe a concern that it could
> end up like jQuery with a plethora of plugins all doing practically
> doing the same thing, e.g lightbox. With ZF1 it was a single library
> that provides good/excellent coverage? Whether or not they should all
> share the same namespace might be open for question, but its about the
> official Zend support behind them?

Isn't this the role of the Incubator/Extras/ZendX library - to provide a
separate namespace for components that aren't mainstream enough or
mature enough to go into core, but which have an official stamp of
approval to encourage collaboration on a single component and reduce
fragmentation.

Obviously, there should be an agreed and published process for promoting
components from the Incubator to Core.

Roger
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

weierophinney
Administrator
-- Roger Hunwicks <[hidden email]> wrote
(on Wednesday, 20 June 2012, 09:32 AM +0300):

> On 06/20/2012 09:09 AM, Greg wrote:
> >It's a good/excellent point, however it maybe a concern that it could
> >end up like jQuery with a plethora of plugins all doing practically
> >doing the same thing, e.g lightbox. With ZF1 it was a single library
> >that provides good/excellent coverage? Whether or not they should all
> >share the same namespace might be open for question, but its about the
> >official Zend support behind them?
>
> Isn't this the role of the Incubator/Extras/ZendX library - to
> provide a separate namespace for components that aren't mainstream
> enough or mature enough to go into core, but which have an official
> stamp of approval to encourage collaboration on a single component
> and reduce fragmentation.
>
> Obviously, there should be an agreed and published process for
> promoting components from the Incubator to Core.

Incubator/Extras/ZendX are gone in ZF2 development, in favor of:

 * RFC for new components/refactors
 * Pull Requests for review

Typically, new features coming in via a PR that do not have an RFC will
be rejected. RFCs must be voted on for approval.

--
Matthew Weier O'Phinney
Project Lead            | [hidden email]
Zend Framework          | http://framework.zend.com/
PGP key: http://framework.zend.com/zf-matthew-pgp-key.asc
Reply | Threaded
Open this post in threaded view
|

Re: Zend\Gearman RFC

David Muir-2
In reply to this post by Gregory
On 20/06/12 16:09, Greg wrote:
> It's a good/excellent point, however it maybe a concern that it could
> end up like jQuery with a plethora of plugins all doing practically
> doing the same thing, e.g lightbox. With ZF1 it was a single library
> that provides good/excellent coverage? Whether or not they should all
> share the same namespace might be open for question, but its about the
> official Zend support behind them?

What about ZF-Commons?
https://github.com/ZF-Commons

Cheers,
David