Community Development

thread: 34 messages  |  last: a year ago  |  started: thursday, january 21, 2010, 9:44 am pst


#1  |  Leonardo (Minas Gerais) Brazil
Thursday, January 21, 2010, 9:44 AM PST

Hello I am interested to know how the development of the community? But especially when it comes to developing code (QPM).

I see that most of the QPM is Mike, that Mike will carry practically the community back?

#2  |  kingwithin (San Francisco, CA) United States of America
Sunday, February 7, 2010, 1:01 PM PST

Any response or ideas on this?  We're facing huge challenges without a growing community.  Are there others who work on different frameworks outside of Qcodo or have migrated to Ruby on Rails because of the community growth?  Thanks for the ideas.

#3  |  VexedPanda (Calgary, AB) Canada
Monday, February 8, 2010, 8:01 AM PST

At the moment, it seems like most of the community-driven development is being done on the QCubed framework, or at least presented on their site. There are a number of 3rd party plugins there, and numerous active core contributers.

http://qcu.be

#4  |  comet7 (Georgia) United States of America
Monday, February 8, 2010, 12:52 PM PST

Like most things Qcodo, the Qcodo Package Manager (QPM) can probably be a great thing once you figure it out.  Rather than just having a plugin directory from which developers must download and manually install, the QPM automates the package installation/removal process for you.

I think the Qcodo community is quite active and gaining momentum every day, though it appears Mike continues to carry most of the load, including via the QPM.  

The main reason I see for this is that the new QPM has raised the bar for contributors:

  • Many users don't know what QPM is or how to use it. The qcodo.com site used to allow users to upload code snippets.  As far as I can tell, uploading snippets is no longer an option.  These snippets are still available under the “old qcodo.com downloads” pages, but very few, if any, have been converted to the QPM.
  • New QPM submissions should be based on a fresh, clean installation of Qcodo.  This is immensely helpful for anyone incorporating QPM packages into their project (and Mike incorporating it into the core), but it is also a good bit of extra work for the developer adding code to the QPM repository, who likely created the new feature in their own, not very clean, project.  My guess is that there is some way to create a new QPM package quickly.  It would be great if steps/recommendations on how to do this could be added to the QPM Instructions page.  
  • The QPM Instructions are buried in the site navigation and hard to find.  You can find them by going to Community >> Wiki and then clicking the second bullet under the “Featured links” text.  (The acronym, “QPM”, is not on the page.)  Or you can find them by going to Get >> Community Contributions and then clicking the small “Read more about QPM” link on the top right corner of the page header.  The links should be more obvious.
  • The PHP Command Line Interface (CLI) must be used.  There are many developers who have never used PHP CLI and have to install it plus learn how to use it before the QPM is an option.

The Qcodo learning curve can be fairly steep, but the payoff is many times over.  Contribute what you can.

#5  |  Mike Ho (Sunnyvale, CA) United States of America Qcodo Administrator
Monday, February 8, 2010, 2:21 PM PST

I would love to get not just additional feedback on this, but tangible help as well.  If you look at the history of Qcodo since it was open sourced back in 2005, the community saw a very promising slow but steady growth in membership and community activity, contribution, blogging, etc. throughout its lifetime up until early 2009.

At around that time, a lot of things started stagnating in the community, with myself to blame for a lot of it.  There were a lot of limitations with the way the framework was structured and distributed, making releases more difficult.  Moreover, it was very difficult to implement changes and code contributions back into the code.  Members of the community were getting increasingly (and understandably) upset at the lack of cohesion and progress with the community, and thus, forks started happening.  Initially with ZCodo, and now with QCubed.  With some of these forks, the confusion around the community, and the lack of regular releases during the re-structuring, it's no surprise that the community overall began to stagnate.  Some folks left, and many I feel are just sitting on the sidelines.

Fast forward to October 2009, and I am excited to say that a lot of the structural issues with Qcodo and the ability for users to more-easily contribute to Qcodo have been resolved.  With QPM and GitHub, it's very straightforward and easy for anyone to post code and to contribute code back into the core.  It's rediculously easy for code to get code reviewed and put into the core repository.  It's exciting to see community members like Marcos and Klucznik beginning starting to contribute code patches via github back into the core... and as momentum hopefully continues in this area, I can only see this increasing more and more.

Comet does bring up a good issue that QPM is still a bit slow to pick up and I think he does a good job in pointing out specific areas where this can be addressed, and I definitely solicit any additional feedback as well as outright help when it comes to the suggestions that he has.

And along the same lines, I do continue to encourage everyone to help out as well.

I think as with most FOSS projects, documentation is the key to help bringing more users into the fold.  With Qcodo specifically, as Comet pointed out Qcodo does have a steeper learning curve than most of the other PHP and other scripting language frameworks.  What that means is that documentation is even more important for Qcodo.

With all documentation now being put into the wiki so that anyone can edit, I definitely want to encourage folks to make fixes, changes, enhancements, etc.  If there is something that doesn't read right or is unclear, post comments on that wiki page or better yet, go ahead and rewrite it.

If there are wiki pages missing, go ahead and start a wiki page for it and post on the forums or on that page encouraging others to submit content.

If some content isn't well organized, go ahead and do some wiki gardening, moving links around, etc. so that things can be easier to find.

Even if individuals can only contribute 15 minutes per week, I think these things collectively can go a long way in pushing the community-level of development further for Qcodo.

And finally, in terms of branching out beyond the community, I definitely encourage everyone to continuing posting, talking about and blogging about Qcodo.  It's what helped bring about the slow but steady growth throughout the past 5 years, and I think it'll be another key area that will help the Qcodo community not just communicate well with each other but to also grow at the same time.

I look forward to hearing additional thoughts about this.

#6  |  tronics (VIE, AUT) Austria
Monday, February 8, 2010, 3:25 PM PST

I vote for a QPM tutorial video :)

#7  |  flunki (Rathlau, Germany) Germany
Wednesday, February 10, 2010, 10:25 AM PST

Hi folks,

@VexedPanda

You (and the others on your fork) decided to split (see: http://www.youtube.com/watch?v=iS-0Az7dgRY), so please spend your time and energy there.

I will stay here.

yours

flunki

#8  |  Mike Ho (Sunnyvale, CA) United States of America Qcodo Administrator
Thursday, February 11, 2010, 3:57 PM PST

Folks, if at all possible, please refrain from disparaging posts...

The QCubed fork was set up by a group of guys, some of whom were either core contributors or at least regular, active members of the Qcodo community.  The overall Qcodo community would not be where it is today if it wasn't for the contributions of many of these people.

While some may argue that some of the community-level issues in terms of level of contributions may be due to their splitting off and creating a separate fork, I think the stagnation of Qcodo, itself (as I mention above) is just as responsible, if not more.

I think the original poster brings up a very good point in trying to have us address what can be done to increase the level of vibrancy in the Qcodo community to what it used to be and beyond... I think it can be healthy discussion to have with constructive criticism and suggestions, as well as an opportunity for new and old contributors stepping in to fill the gaps, and I look forward to hearing and seeing more.

#9  |  Fernando Lordán (Barcelona, CAT, Spain) Spain
Sunday, February 21, 2010, 12:29 PM PST

With all respects, Mike, now I can hardly understand your claim for tangible help from the community, as you often tend to simply ignore suggestions and other kinds of help.

As an example, some weeks ago I spent a certain amount of hours to provide you a thing that Qcodo lacks a lot (a working and usable “QQ style” implementation of subqueries), with the code already done, just ready to discuss and test. But I simply received no response. As you surely understand, this keeps me away from spending more time in attempting to contribute in a tangible manner. Next improvements will be incorporated in my own work, as I truly had a feeling of futility in trying to incorporate improvements into Qcodo.

Please, don't take me wrong. You surely know my opinion about your work: it's fabulous, and I'm fully grateful for it. But I really think you could help others in helping you. Just a bit, no more.

#10  |  Mike Ho (Sunnyvale, CA) United States of America Qcodo Administrator
Sunday, February 21, 2010, 1:37 PM PST

Fernando,

First of all, I do apologize for having this fall off the radar.  As a reference to everyone else, we're talking about Fernando's submission of a feature request the code contribution for it listed in Issue #42

You're right -- it's an excellent contribution, and I really should be helping more in helping you to get this into the core asap... I've gone ahead and responded there (on the issue comment) for specifics.



Copyright © 2005 - 2012, Quasidea Development, LLC
This open-source framework for PHP is released under the terms of The MIT License.