[KPhotoAlbum] Future Roadmap and Development (was: kphotoalbum method of storing Tags, description)

Joe josephj at main.nc.us
Wed Feb 1 00:21:42 GMT 2012


On 01/30/2012 05:01 PM, Andreas Neustifter wrote:
> Hi All!
>
> On 30 January 2012 12:14, Risto H. Kurppa<risto at kurppa.fi>  wrote:
>> As Miika said, it is possible to write code to implement this.
>>
>> However, in projects like this, to implement new features, two types
>> of people are needed (who can be one person):
>> (1) the developer one who WRITES the code. Anyone with the skills is
>> free to do this, no matter what others think.
>> (2) the project maintainer one who ACCEPTS the code to be integrated.
>> Here the acceptance of the community is very useful but not a must.
>>
>> The community members with no coding skills has no ways to push the
>> developers to implement anything. We can only add wishlist items (see
>> http://tinyurl.com/kpa-wishlist ) and hope that someone picks our
>> ideas up. In that sense, only the developers have the power. But on
>> the other hand when a developer writes the code, he has no way to be
>> sure that the project maintainers will accept it. So in that sense the
>> power is divided between the developers and project maintainers. The
>> rest of us can only make wishes and hope that the project goes into
>> the direction that makes us happy.
>>
>> In KPhotoalbum's  case, Jesper/blackie has been the one with the
>> 'final word' what will be committed and what not. Now as he's focusing
>> on other stuff and there are around 5 people (just a guess) with
>> commit rights, again I want to remind that some kind of common vision
>> / direction / roadmap would be useful. It'd help both the developer
>> and non-developer community to see what's the direction the project
>> maintainers want to take the project.
> I agree with that but also want to add some comments:
>
> I think we all agree that KPA needs more focus and well tought out,
> solid features and less "bells and whistles". So all developers with
> commit access should strive to discuss all new features before
> accepting them into the code base (this is harsh, I know, but
> necessary).
>
> Also commiters and developers should discuss there efforts before
> working to hard on them, there may be good ideas from the community or
> a consensus that a given feature will not be well suited to KPA. (Yes,
> I'm too guilty of hacking away on personal pet features that may have
> been to much :)
>
> To sum up my opinion: First there will be a new release that contains
> everything that is in GIT right now puls all necessary bugfixes.
> ("Better" is the enemy if the "good" here, bugs that are not blockers
> may be fixed only after the release.)
>
> After the release a discussion on the future of KPA should ensue (yes,
> in this order, otherwise the discussion diverts resources from the
> bugfixing/releasing). I have no idea how to collect the information
> from that discussion, I presonally hate to have "whishes" mixed into a
> bugtracking tool.
>
> This future roadmap should be broken down into self-contained features
> that push KPA into the discussed direction. That features should
> either be the most frequently requested from the users or the easiest
> and quickest to implement. The way the features are implemented should
> be discussed first too, I guess. Hm maybe, or not, I don't know about
> that.
>
> Okay, thats enough of my opinions.
>
> Andi
> _______________________________________________
> KPhotoAlbum mailing list
> KPhotoAlbum at mail.kdab.com
> https://mail.kdab.com/mailman/listinfo/kphotoalbum
I'm not a developer of KPA, but I'll add a few comments anyway.

I agree about wish lists in bug trackers.  A number of projects do it 
that way and say that it's the only way the developers will ever see 
them.  Bugs and wishes are largely unrelated and combining them can 
cause someone with the best intentions to go off and code a shiny new 
feature instead of fixing an important, but unglamorous bug.

Wishes/feature requests do need to be in some kind of tracker so they 
don't get buried in a long term discussion list and can unambiguously be 
identified in discussions.

If someone wants to contribute, there should be an easily accessible 
list of things people already want done along with any comments from 
developers and users about how to do it or what's involved/impacted.

I also like the feature some trackers have where members can vote for 
issues so people can see how much real interest there is in a particular 
item.

I don't know the first thing about implementing systems like this, but 
open source projects are using them, so I know they are available.

Having a road map/vision is what distinguishes good projects from great 
projects.  It's essential to developing a system that makes sense and is 
consistent - not only with respect to new features, but also determines 
what current features may need to be enhanced or even eliminated.

In my first programming job, I was given an assignment to add a number 
of features to a program that was a precursor to spreadsheets (It had 
everything except the essential concept of formulas in cells.  I'm 
dating myself!).  I wrote some very nice code that really impressed my 
employer, but it was so tightly self-integrated that it was thrown out 
because it wouldn't merge well with the rest of the program.

In short, the way things are implemented matters!  Not only from an 
integration standpoint, but also so that once a designer/coder/(or 
heavens forbid, a documenter!) learns how one part of the system works, 
most of that transfers to the rest of the system.

This should (at least theoretically) promote code ,KPA, make it more 
likely that, once a problem is solved in one place, it can be solved 
everywhere else with little additional effort.

This also applies to functional changes that affect the overall 
program.  It should be "easy" to make a change throughout the program 
without having to recode it several different ways.  From what I 
understand, these issues were the major motivation and success of object 
oriented programming in general (regardless of whether part or all of 
KPA is coded that way.)

And, last but not least, please remember to include documentation as a 
priority.  A program is only as good as people's ability to figure out 
how to use it and what work flows are most productive.  This is KPA's 
most serious "bug".

Turned out to be more than "a few comments" .  ;)

Joe



More information about the Kphotoalbum mailing list