Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Agenda: also ask to community with surveys #6

Open
Slamdunk opened this issue Mar 3, 2020 · 5 comments
Open

Agenda: also ask to community with surveys #6

Slamdunk opened this issue Mar 3, 2020 · 5 comments

Comments

@Slamdunk
Copy link
Contributor

Slamdunk commented Mar 3, 2020

Hi, I'm reading your agenda, and as a long ZF user and contributor I would like to answer some question within a survey formula.

There are some usage feedbacks I could give that are not mirrored in how many time I download or contribute to a package, and looking to the target audience ZF tipically reached, I think a lot of it could give rich feedbacks too.

@weierophinney
Copy link
Member

I don't quite understand what you're asking.

  • Are you wanting us to put up a survey before TSC meetings in order to define the agenda for the next meeting?
  • Are you wanting us to do one or more surveys around specific topics? If so, which ones, and why?
  • Something else?

@Slamdunk
Copy link
Contributor Author

I'm sorry, I don't really want any of those. I've started the topic because, despite using and contributing to ZF since 2010, I've never felt part of the project, I've never felt the presence of a community, something like instead I've found many times in other projects I use and contribute to (frameworks, tools, languages...).
I've always had the idea that ZF was and is you and your thoughts.
You are an amazing architect and few developers could have improved your work, but I fear that without you the project would simply vanish for inactivity.
I feel no real team except you. Every PR I've read was just "Let's wait for MWOP oracle answer".
All your answers were always thoroughly and well written, but you are, to me, the single point of failure for ZF.

I hope I'm wrong.

@weierophinney
Copy link
Member

@Slamdunk I'm re-opening, because I'd like to know what specifically you're asking for!

We are definitely moving to having a broader group of maintainers, and following the first TSC meeting, I think we're starting to get momentum in that direction.

But we definitely need input, and that's why I'm asking you here to clarify your request. Give us some examples and specifics, so we can act.

Thanks!

@weierophinney weierophinney reopened this Mar 12, 2020
@Xerkus
Copy link
Member

Xerkus commented Mar 12, 2020

single point of failure

@Slamdunk No worries! We now have a whole team of failures!

On a serious note, that concern is one of the earliest voiced reasons to go with The Linux Foundation and Technical Steering Committee.
Community Review Team within Zend Framework was trusted to make decisions but we were hesitant to overstep our authority as we were not maintainers for any specific component. For the lack of the assigned maintainer next best person is Project Lead.
TSC of the Laminas Project as a whole, on the other hand, is the top authority. Any uncertainty can be escalated and decision taken during monthly meeting.

Community engagement and feedback is important topic. Your ideas on how to improve this aspect are welcome.
Here is my own: back in the time when ZF 2.0 development was on full swing we had open to anyone IRC chat meetings where selected topics were discussed, feedback collected and community votes taken. They were mostly around RFCs iirc.
Some variant of such community meetings presided by TSC could be introduced some days prior to TSC meeting. Besides community matters, such community meetings would allow to gather feedback directly prior to TSC meeting on select upcoming agenda items.

@Slamdunk
Copy link
Contributor Author

Slamdunk commented Mar 16, 2020

But we definitely need input, and that's why I'm asking you here to clarify your request. Give us some examples and specifics, so we can act.

TL;DR: ZF/ZE components lack glue.

Brief background: it's 10 years I use ZendFramework-1/2/3, 1 year with ZendExpressive and 2 years I use Yii2. I work within a team with 4 others developers (which I'm the lead of), with both long-term products and short-lived ones.

My colleagues are mid-skilled and it is part of my role to mentor them. Well, comparing their experience path in term of time-to-market and learning curve between ZF/ZE and Yii2 results in a huge gap, which I have to say very few businesses could benefit to afford.

It should be immediately pointed out a key factor: Yii2 ships a built-in ActiveRecord pattern that ease a lot of tools to be quickly shaped around it, and a non-skilled dev can't see the long-term drawbacks. ActiveRecord pattern is something I consider a no-go for any enterprise app, and I don't want ZF/ZE (Laminas/Mezzio) to implement it.

Nevertheless the following base functionalities are straightforward with Yii2, but take ages with ZF/ZE:

  1. Register/Login process and session-persisted identity
  2. Routes segregated by user roles or permissions
  3. CRUD operations with pagination and filtering capabilities

For all points there are valid docs with extensive examples, but:

  • most of the time you have to guess or invent the exact way two or more components may integrate well each other
  • the number of LOC you have to write outside the framework before reaching a minimal functioning feature is a burden, ending in a copy-paste between projects

If it's so tricky, why choosing Laminas/Mezzio in the first place?
There is only one answer to me: the robust OOP and good design and pattern usage allow a perfect test suite, almost unreachable with any other framework I've worked with.
A perk very few novice users can see.

It would be really nice to provide a complete example solution, using as the data provider a Doctrine one, along with both Unit and Functional test suites.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants