Your opinion wanted: future of DataTables support
Your opinion wanted: future of DataTables support
allan
Posts: 63,488Questions: 1Answers: 10,467 Site admin
Hello all,
As you've probably all noticed, the forum has been getting rather busy of late - which is superb, but unfortunately it means that I'm not able to keep up with it and answer every question personally as I would like to. It also has a further knock on effect on the project as a whole since I'm spending all my time on support issues rather than developing the project further.
Please don't misunderstand - the asking of questions is excellent (it is how we all learn after all!), and it provides me with some very valuable insight into how DataTables is being used - which I've then been able to integrate into releases, and I've got plenty of ideas for this in future as well. It also keeps me sharp with finding issues :-). And a huge thank you to everyone who has been posting replies to questions in the forums - it's absolutely fantastic!
So, the basic question is how to move forward with the development / support balance? Fundamentally I have a limited amount of time to work on DataTables since a full time job is needed to pay the bills...! So the remaining time needs to be split between development and support (and life obviously), and I don't want to let the project stagnate by just answering questions in the forum all the time. I have a lot of ideas for how to improve DataTables (version 2 and beyond) - but these take time to develop.
There are a couple of options which spring to mind, and I've very much appreciate everyone's opinion - and please feel free to venture other ideas as well!
1. Forum is left as open discussion with little input from me, allowing development of DataTables to continue unabated.
2. The other extreme, which is more or less what is happening at the moment, I try to keep up with support requests and leave DataTables more or less stable as it is.
3. I answer only forum posts which have had a donation in their favour. Support packages might be a reasonable extension of this.
4. A 'secret' word that should be used in the thread - this 'secret' word would be listed as an FAQ. The idea being that it proves that the FAQ has been read before posting. I do plan to add to the FAQs...
5. Someone hires a full time DataTables support engineer / developer
Obviously each has its own plus and minus points - but I'd very much like to make an informed decision about how you all feel this should move forward.
Please feel free to post your opinion!
Regards,
Allan
As you've probably all noticed, the forum has been getting rather busy of late - which is superb, but unfortunately it means that I'm not able to keep up with it and answer every question personally as I would like to. It also has a further knock on effect on the project as a whole since I'm spending all my time on support issues rather than developing the project further.
Please don't misunderstand - the asking of questions is excellent (it is how we all learn after all!), and it provides me with some very valuable insight into how DataTables is being used - which I've then been able to integrate into releases, and I've got plenty of ideas for this in future as well. It also keeps me sharp with finding issues :-). And a huge thank you to everyone who has been posting replies to questions in the forums - it's absolutely fantastic!
So, the basic question is how to move forward with the development / support balance? Fundamentally I have a limited amount of time to work on DataTables since a full time job is needed to pay the bills...! So the remaining time needs to be split between development and support (and life obviously), and I don't want to let the project stagnate by just answering questions in the forum all the time. I have a lot of ideas for how to improve DataTables (version 2 and beyond) - but these take time to develop.
There are a couple of options which spring to mind, and I've very much appreciate everyone's opinion - and please feel free to venture other ideas as well!
1. Forum is left as open discussion with little input from me, allowing development of DataTables to continue unabated.
2. The other extreme, which is more or less what is happening at the moment, I try to keep up with support requests and leave DataTables more or less stable as it is.
3. I answer only forum posts which have had a donation in their favour. Support packages might be a reasonable extension of this.
4. A 'secret' word that should be used in the thread - this 'secret' word would be listed as an FAQ. The idea being that it proves that the FAQ has been read before posting. I do plan to add to the FAQs...
5. Someone hires a full time DataTables support engineer / developer
Obviously each has its own plus and minus points - but I'd very much like to make an informed decision about how you all feel this should move forward.
Please feel free to post your opinion!
Regards,
Allan
This discussion has been closed.
Replies
I think any of the above would be valid options. I think the secret word or putting priority on paid requests would be a good way to go. However threads that appear to have no valid answers might also be a good chance for you to pipe in. I know that searching and googling can only get someone so far and sometimes a kick in the behind from yourself or anyone else that is helping this along is enough to get the problem solved.
The main hope I have is that you continue to enjoy this project, I know a lot of us out here find it very useful and are appreciative.
Thanks very much for the feedback!
There are another two options that I've thought of which could be implemented:
6. Create a plug-in for the forum which will allow new users to post a new thread only when they have replied to another one (hopefully with an answer...)
7. Paid support threads should be highlighted. I do this at the moment so I can keep track of them - but limit it to only my forum login.
Please all, express your opinions or I'll implement something that might not be liked.
Allan
I agree with zchapple's reply. Option 6 might become troublesome at one point - meaningless replies?
Perhaps make it an option:
- a donation (for those with high priority/urgent questions/issues) or
- a secret word found from the FAQ (for those with not urgent questions/issues but new to DataTables) or
- # of helpful replies (I guess this would mean that there would be a need to keep track of the replies and a way to vote on how helpful it is/was) or
- a way to update available examples/documentation with any principles/examples extracted from the solved requests? (not sure whether this actually applies because examples/documentation are quite extensive)
Just my two cents... =)
My personal opinion is that "donate for support" as it exists should be the support priority. It gives people the option to pay for help.
Keeping new users happy is a way to encourage future donations and/or spread the word so that eventually if you decide to make a commercial product out of it, you won't have a bunch of negative reviews lying around; and to that purpose, you simply MUST check into the forum on a regular basis.
But that doesn't mean you have to reply to every question personally. People understand that forums are a community, and nobody (or at least, nobody with any sense) expects that you will deal with every single thread individually.
Secret word isn't bad, but I can say from experience that a FAQ isn't really that helpful... ever...! They were invented before forums came around. Forums are a much better type of FAQ. You could make some sticky support topics with a secret word, though. Each of those could contain the general advice that would be in your FAQ, plus a living list of existing forum threads that might be of use. Then instead of "did you read the FAQ", it would be "did you read the sticky on server-side processing?"
As you're keeping your eye on the forums, use your own discretion for which ones to reply to. New questions that haven't been covered a bunch of times, special cases that the docs don't cover, and similar new threads should be the priority. Threads that you're sure have been covered a dozen times; either don't bother with them or pop in to gently remind with a "I remember we talked about this on the forums last week; did you try the search function yet?"
People who have made significant contributions to the forum by answering questions are making a "donation" of sorts, and of course some people have donated cash; you might feel more inclined to help active community members or those who have donated; but that's your call to make.
I don't think anyone expects you to be superhuman. I can speak from experience that although I appreciate it when you are directly involved with many of my threads, I don't personally "expect" that level of personal involvement. Nor do I imagine that answers 'must' come within a few hours; particularly when I flag them as "This isn't really that important, but...."
;-)
Whatever you decide, I'm committed to DataTables at the moment; and that commitment means I'll probably be around to help with CSS-related questions, if not necessarily all JavaScript-related ones.
All the best,
Greg
[code]$(document).ready(function(){
$.ajax({
type: "GET",
url: "whitelist.xml",
dataType: "xml",
success: function(xml) {[/code]
I have a large XML file that i would like to manipulate
Thanks for the replies Greg and yaqadesh! I think what you've said more our less sums it up Greg - I do indeed prioratise questions which have a donation behind them and threads from people such as yourself who contribute to the forum. That was part of my reasoning behind the option for requiring a reply to a thread to be made before being able to create a new one - but then we would get posts like the one directly above a bit more.
The trouble is that just answering a handful of questions on the forum (some are really rather interesting) takes a good bit of time to read, understand, diagnose, resolve and then context switch to the next. For example I've got a really great upgrade to FixedColumns (v2) which has been almost ready to go for about a month, but the time I've got has been answering support questions rather than deploying the update. For example there have been about 100 threads active since I posted this one - every poster must have an interest in this topic and it's a bit disapointting that there have only been three replies (I'm very grateful for the replies!). Equally there must be interest in moving DataTables forwards...
It's a tricky balance...
Allan
If you can keep the product moving forward with good examples, then I don't think you need worry too much about support. The product will gain a momentum of its own and there'll be enough other people able to answer the FAQ type questions.
Campbell
than other avenues, and decided answering support tickets should be your primary focus,
that's understandable.
However, as it's your baby, you must also want to see the project further grow and
reach a higher state of excellence. Monitoring support tickets should, at some level,
always be part of development - such as fixing critical bugs - but if the consequence of
constant monitoring is new improvements going by the wayside,
do you or fans of DataTables benefit in the long run?
So perhaps selfishly, I'd vote for your full attention to development,
even though I'm guessing development is what you'd prefer, and your attention there
could be to everyone's advantage.
What does that mean for the forum?
For one, maybe it means others who are capable of helping could
try to serve as moderators, or at least offer assistance when they can.
Another thought is to try to improve the forum itself.
Sure, it's nice, but I sympathize with anyone who has un-intentionally
asked a question that has been asked before, or who looked for postings on a
certain topic, and found him/herself going back and forth between various posts
that may or may not help. The Forum has categories, but I think the
"General" category is much too wide-ranging to be of any use; if it could be broken
down into more meaningful categories/keywords, it may go a long way to improving
the forum's usability. Maybe that's a one-time project where someone in the
community would be willing to help?
Joking aside I would vote for further development though I know as a user I'd be at least somewhat frustrated if I was not able to figure out an issue to a problem through the forums and you are the best at helping the users by far. It seems like the user base has grown though over the past 6-12 months so hopefully over time there will enough user base knowledge to answer questions effectively on the forum.
I know that jQuery UI is working on a dataTable plugin (they call it a grid) so if I were you I would definitely focus on further development to stay ahead of the game. As one of your users I will be up front and tell you that if I find a reason to switch to theirs I will at least consider it. I have a feeling by the time that rolls around though I will be in too deep to justify the effort to migrating my code to make it work with theirs, especially if the feature sets are nearly the same.
I really enjoy your plugin, after the initial growing pains of implementing it into my application I can say it has been very smooth and I rarely have an issue with it.
Good Luck with the further development of the DataTables plugin,
Drew
I believe the priority should be: Bugfix > New feature > Support.
So you still have to spend time on forum to pick bug report out of other support requests. That is also part of the project development. You can setup a rule to ask bug reporter to spend their time to reproduce the bug (perhaps via http://jsbin.com/ or http://jsfiddle.net/ or etc.) before raising a issue. Some old bug report in this forum ended up with the reporter finding out it's their fault. The above rule can probably save your time on this kind of situation.
As for support, you need not response to those RTFM-style questions (as long as this forum has a good search feature), you can only choose valuable questions to answer, and perhaps also append typical q&a into a how-to section of the formal documents.
Many posts are more or less relevant to how to implement some CRUD over datatables. So, IMHO, instead of answering them one by one, you can try to come up with a how-to-do-crud-with-datatables essay, or even better, implement corresponding callbacks into next version of datatables. It would definitely bring datatables into next level.
And I don't think a 'secret' word hiding inside faq would help much.
"6. Create a plug-in for the forum which will allow new users to post a new thread only when they have replied to another one" is even worse because it encourages trash replys. BTW, forum itself is old, the future of q&a community might be in something like stackoverflow etc. (See also: http://www.webappers.com/2010/02/26/stack-overflow-like-open-source-qa-systems-for-download/)
Thanks for the great datatables!
Regards,
Ray (a.k.a. Iceberg)
Thanks very much for the feedback - it is very much appreciated! Your replies have helped me to decide on the best way forward - DataTables 1.8 will be my main priority now until it is released. It will maintain backwards compatibility and simply add a few nice features to the DataTables core - hopefully a release won't take too long! Following on from that, DataTables 2 will then get primary focus - it will contain all of the features of 1.8, but not be backwards compatible - I've got a few ideas on how to make the API much more approachable and useful to developers. I'll also look at upgrading the forum and updating the FAQs while starting work on v2.
@Ray - you might be interested in this: http://code.google.com/p/jquery-datatables-editable/ . Part of the issue with CRUD and DataTables is that there is a million ways of implementing it - what will suit one system won't suit another, both on the UI side and the back end. But point taken a few tutorials would be good!
Regards,
Allan
I hope I am not too late to respond.
First, thank you very much Allan for making this very cool plug-in with a lot of potential.
I think one way of monetizing your efforts is to stop your full-time employment and use datatables as part of your marketing for your own company to attract clients. It shows your capabilities as a developer and someone who responds to their clients (us :). Paid support I think is also very good-- but perhaps you could offer not just a tip-jar but formal support too (e.g. for 19.99 a month I will respond to any question from you within 1 business day, 29.99 a month do ... etc. still keep the tip jar and free questions open too-- you need new customers to start somewhere and feel comfortable that they can get it to work for them).
Thank you for your free support so far. I still can't get it to work, though. I wish others could help with the Q/A I think if you could extend you FAQ for jquery and plugin newbs like myself that would be greatly appreciated. I wasn't aware when I first started, for example, that I can inspect the datatables code to change things. When I am able to understand datatables, I'd be happy to answer questions myself :)
Good luck with this.
That was a far better level of support than I expected - obviously great and I'm delighted, but I'd already identified a work-around and, had you asked, I'd happily have said that I didn't need an answer for a week or more. I wonder if that might be a helpful way of prioritising - a list of '2 hours', 'a day', 'a week', 'a month' or similar would mean you could set aside time specifically to answer support calls once a day, week, month etc. Obviously you'd end up with a lot of people picking the minimum as a matter of course, but if you had a good explanation about why you're asking the question, with a nice guilt trip about how you won't get time to spend with your family, etc, etc, it might be helpful?
Assuming that most of us are testing in development environments prior to deployment I would be happy with a 48 hour turn around or longer if I knew how long it may take to get an answer. This would allow you to budget your time better.
I would also encourage the users here to review and answer questions prior to the 48 hours. Many sites list "contributions" as part of a persons profile, ie here part of the signature line (Patricia Contributions 4) etc.
Also offer the paid response time offer, no harm in that, I would think of it as a yearly fee where most of your time will be taken in the first weeks, months of installation, but a fee that would cover a year. Most organizations who are willing to pay for support would go for a year to year thing. Here a response time by you in 24 or 48 hours, a known time. 2 hours although awesome is unmaintainable by a single person doing multiple jobs and I think any human being would understand.
Order:
Last release as major (2.0) bugs, forums, future improvements
Last release as minor (1.8) future improvements, forums, bugs
I can't tell if you are doing this already, but I think you could get help with prioritizing/conserving your time by:
1. Having a separate forum for feature requests
2. Recruiting volunteers to moderate the bug reports and feature request forums
Considering the value that DataTables adds to what we're building, a fee (license or otherwise) would be completely reasonable. This doesn't mean you can't offer DT using whatever scheme you want (a free, open-source version and then paid support; a commercial license with or without support at 2 different prices, etc...).
Greg
Thanks for the great discussion!
A quick update on 1.8: it is progressing quite nicely. I'm really quite pleased with how it is shaping up, and hope to have a beta available within around a week. There aren't massive changes, but ones which I think will make a real improvement to how you can develop complex and accessible tables with DataTables. I think I'll probably write a few tutorials about some of the new features as well, as some of them can be fairly involved (although all the more powerful for that!).
Its an interesting idea about having a paid for version of DataTables. I've thought in the past how a debug bookmarklet might be quite useful for working with tables, and that could potentially form the basis of the paid support. The one issue for me with a purchased version of DataTables is that, when purchasing you would rightly expect a certain level of support, and if I were to go on holiday for say a week - then that support cannot be made available. While at a personal level I'm sure everyone understands that - but corporations / companies won't. Any suggestions?
From Patricia:
> Many sites list "contributions" as part of a persons profile, ie here part of the signature line (Patricia Contributions 4) etc.
That's an interesting idea. It could also include the number of posts in the forum. Anyone else any thoughts on that?
Regards,
Allan
thank you for the cool plugin,
Steve
first off, thanks for the great work. I very much agree with Ray's Bug Fix > New Feature > Support priority proposal.
Also, I do think that support could come (more) from the community - that being said, I must admit that I haven't been active at all in replying to forum posts myself.
A couple of ideas / proposals regarding "community support":
- some sort of e-mail integration would be excellent for people like me who are used to communicating via e-mail. For some reason I find it much easier to skim through various mailing-lists and reply directly there, than to log-in on various forums that are in different places over the internet, and may have a different way of working etc.
What I would find useful as e-mail integration would be a means to receive new posts or replies as e-mail, and to be able to directly reply to a post via e-mail (for instance, http://lighthouseapp.com/ will send out an e-mail that contains something along the line of "everything above this line will be included in a comment to this issue").
I've got no idea how much work it would mean to set such a system up, but at least for "e-mail people" like me, it would ease the involvement quite a bit. There seems to be already a "non-reply" option for this here: http://vanillaforums.org/addon/emailsubscribe-plugin
- mark a post as "resolved". I have seen in some forums that it is possible to mark the post as question, and then to mark the post as answered. This would help to visualize thins more
- more categories: I could easily think of more categories inspired by the documentation such as: API, Callbacks, Options, ... and also a "Feature request" category might make sense
- larger page width: even though it is nice that the forum is visually integrated with the DataTables site, I would prefer to have a larger page width for the posts to make it more easily readable
- search on the forum only. While the Google search seems to skim through also the documentation, perhaps having a more targeted search for the forum (with the possibility of selecting a given category) could be of some help.
Ok, I will stop here - I hope these proposals can help.
Manuel
List Members by authority in terms of forum posts (answers)
Let people become Moderators of content after 100 successful answers to forum questions.
You need to get 1 or 2 volunteers as moderators to start with and let them volunteer answers.
Instead of answering each question, you can skim over and moderate also what is being answered about datatables.net
I'm all for paid support, even a paid product - provided I can get support questions answered.
I run Kaosweaver and I deal in product support, what you'll find is, if you set the expectation for support (generally available from X to Y) most people will be happy with that. When people fail to plan accordingly or are against a deadline and choose to use your product is when you'll have unhappy people if you're not around. I would recommend you find a knowledgeable person on the forum who is willing to act as your backup while you're out to alleviate this issue. Most larger companies won't have a problem with a support schedule that includes some black out times, it is the smaller ones that I've found get upset when they can't get answers when they want.
You have a great product, if you don't develop it further, it will be the death of it (knowing this from myself releasing WAY too many products and then unable to keep up with support/new development) - so I would seriously dedicate time on a regular basis to develop the product (set aside time that you will only develop during, set aside time that you will only answer questions for and then any remaining time you wish to spend on the project, go with priority support or development as you feel is needed).
true ...you must be getting heaps of correspondence coming in now. You could probably set up a criteria to promote frequent members to the moderator level. That should at least take some burden off your shoulders.
A set of members who are very thorough with datatables could be promoted to the DT support team. I understand that voluntary service is prone to other high priority things :) but generating something as small as a credit / referral to members who contribute should be encouraging enough and an addition to their work profiles. DT is doing good and should grow as a product. So anyone associated with DT at the tech level would certainly benefit from a DT referral / credit.
I'd be more than glad to do that for sure :)
Yes paid support / product / customization would ensure that you are bothered only be really serious customers / end users at that level.
Its a thumb rule I guess - either you can save money or time. So there it goes ...save money spend more time, save time spend more money. And it is not like a rip off in this case.
How about moving towards community development. It will take some work of your shoulders, allowing more people to contribute, guided into a direction from yourself.
I think we (the community) could also improve some the organization of example code - reform it into a more tutorial and step-by-step form as well as a good over-all organizations of hyperlinks to allow a reader to navigate easier to find answers before looking to the forum. Perhaps a wiki format, since that format is becoming ubiquitous.
As Snainkin and others mention, another set of features that would help is prioritizing importance of a request (user sets a priority, admin can change the severity/priority) as a way to sort requests, and perhaps a point system like StackOverflow to reward good answers. The points could be tied to the severity of the request. [These features would require some retooling of the forum system, so they may not be practical.]
I can also never find http://www.datatables.net/ref via links (luckily it's an easy url to remember) - it's easy to find in the HTML files in download package - it's right along the bottom.
Sorry for the delay in commenting in this thread - its been a busy time of late and I always find myself thinking "oh just one more thread", until I'm way over time...!
Thank you all for your feedback - I've implemented a number of changes on the site as a result of this thread. We've got the new support options, an updated forum, a few improvements on documentation and of course DataTables 1.8 is now available. There is still a massive amount of stuff that can be done to improve just about every aspect of the project, of that there is little doubt, but hopefully this is a step in the right direction.
Community development: All feedback and patches etc are very welcome indeed! DataTables and its first class extras are available on Githut so please fork away: http://github.com/DataTables . There have been a number of patches that I've merged in already. Note that I will be harsh about what is accepted into the core though (for the good of the project) - anything can can be implemented as a plug-in should be.
Forum moderators: I spend about a maximum of 3 minutes a week moderating the forum at the moment. There is little spam and the community support and use of the forum is excellent, so no problem at all there. Moderators would have little to do in that role. What is far more helpful is asking questions (such as fbas and others has been doing an excellent job of recently!).
Forum points / StackOverflow: Its an interesting idea. There is a plug-in for this forum software which will enable that kind of thing - but generally I think that each thread being asked is quite unique. What be more interesting is having either a wiki or a features list which can be voted upon.
DataTables reference (/ref): It is available by clicking on the 'Reference' link in the navigation of the 'Usage' section. It might get promoted to a more prominent position in the navigation in future. I wanted to see if and how it was used before doing that.
Again, continued feedback is important, particularly on this subject - so please feel free to post your thoughts on DataTables support, and more generally the future direction of the project.
Regards,
Allan
Another project I'm working on, the deployment wizard, could offer people real-time view in the consequences of changing this or that, on-the-fly, which might have some tutorial value.
Thanks,
Allan
That way you get paid to work out issues and hopefully leave more time for a life, development and some extra cash for a vacation now and then.
Just my 2bits.