A Proposal: More Interaction Between Sencha and the Community

A Proposal: More Interaction Between Sencha and the Community

I've been using ExtJS and Touch for about 10 months now. In that time, I've noticed what I feel is a missed opportunity for Sencha to interact at a deeper level with the community.

For folks who don't want to read all of this, the TL/DR summary is:

Set up a real feature and issue tracker

Create a Community Leader and/or Customer Advisory Group

Start regular technical presentations from the developer team

To be clear, I don't just mean "participate on these forums more", since the Sencha folks seem to keep up with the forums very well. And I don't mean the blog, which is updated fairly regularly. I mean something at a deeper level. To be honest, from the outside, Sencha is something of a black box.

First, even Premium members don't have access to any true issue tracking or feature voting system (such as Jira or Youtrack). We really don't have much of an idea what Sencha is working on or what is coming. I have no doubt that the developers are working on things, I just have absolutely no idea what they are. I'd love to see more transparency here, and the use of a proper public issue tracker.

Second, I am (or have been) a member of various "advisory boards" or "community leader" groups for other companies/platforms (Adobe, for example). As far as I know, there's nothing like this at Sencha. I have no idea who might be best suited for membership in this sort of group. But just knowing such a group exists, "has Sencha's ear", and can provide feedback to them from the viewpoint of real people using their platform on real projects would be nice to know. A lot of good ideas can come from groups like this, and it can provide a sanity check on features or changes. Sencha wouldn't be obligated to *obey* such a group, but at least they'd get the feedback.

And finally, I'd really love to see Sencha occasionally get the internal developers in front of the community. This could be done with blog entries, but I think videos or (even better) live meetings (which would be recorded and published) would be a huge boon. Get one of the grid or tree gurus to take an hour and give a "deep dive" into how they work. Get a layout guru to talk about those. Get a class expert to go into the guts of the class system, preprocessors, etc.. Have someone explain the do's and don't of bypassing the components and leveraging the underlying HTML elements. Cover the differences between Touch and ExtJS and the best ways to allow code reuse across them. The list of things that could be discussed is endless. It could even be open for non-Sencha folks to present, if they have a topic they understand well.

There are a few books out on ExtJS and Touch. I've read them all. And as someone who has actually written a book, I know how hard it is. But that said, the books can barely scratch the surface of something as deep and complex as ExtJS and Touch. Presentations like this would not have to take up a lot of the dev team's time, would really engage the community, and could greatly raise the level of knowledge about the depths of the platform. As it sits right now, if I have a complex feature to build (lockable, buffered TreeGrid, anyone?), my only real options are to ask for bits of help on the forums, or spend dozens of hours in trial-and-error. Technical meetups could cut away a big chunk of the individual trial-and-error that I suspect many folks currently undertake alone.

The one thing I can touch a little, as I escalate this thread, is about the community part. I often send links to threads to people internal to Sencha or just emails about things fromt eh community on this forum. If you have an idea I am more than excited to hear it either as a thread or a PM. We can discuss it and will send it to someone who is related to whatever the idea concerns.

Thanks, Mitchell. I *think* the ideas I laid out above are pretty straightforward, but if you (or anyone else at Sencha) have questions I'd be happy to try and expand on them. I'm up for talking here, via PM, email, IM, or phone. Just let me know.

Hmm I was really hoping some others from the community would chime in here. Does no one else have an opinion to voice? Was I so eloquent that no one feels the need to add anything? Or is it just that these ideas don't interest anyone else?

I can't comment about plans for a public bug/feature tracker - it's been brought up before, and the idea has been tossed around but I don't know where that stands.

Some of the Sencha engineers do speak at community events on a regular basis - though it's not like a formal thing. The problem you run into is that the more the engineering team does that, the less time they can spend on fixing bugs or delivering features - which everyone complains about. It's a hard line to walk.

We also have a number of official user groups around the country. I for one run the Chicago group - and we meet once every month. Other groups are just as (if not more) active.

Outside of the engineering team, Sencha does have a Developer Relations team. They create content for try.sencha.com as well as a number of other resources. We have had "evangelists" whose job it would be to go out into the community (as you describe), and I know that's a position we're actively trying to fill.

You have excellent points, Brian, and don't take the lack of response as "Sencha isn't listening". More often than not we're taking your ideas and trying to put them in place... it just takes longer than you might think.

Thanks, Arthur. To be clear, when I said I expected more of a response, I wasn't talking about Sencha, I was talking about the user community.

I wouldn't want the dev team to lose a lot of time due to presenting or talking about features to the community. I really think that even just having a biweekly presentation would be great. Which would mean every two weeks, one of the devs would be asked to use an hour to do the talk, and maybe an hour or two prepping for the talk. These wouldn't need to be heavily rehearsed and polished at all. Heck, I'd be happy even if it was basically a one hour brain-dump on whatever that particular person knows well and wants to talk about. Regardless, the point is that I don't think this would need to be a time hog at all.

The goal to me would be to start getting people past the "basic" usage of the platform and start having a deeper understanding of things. We've got some books and Sencha has the "Fast Track" classes, but we all know those cover pretty common, basic use cases. There's actually very little out there for people who are already at (or past) that point and want to learn more. Any other thoughts on how we might allow people to keep progressing beyond the end of the Fast Track training, other than the obvious (lots of trial and error)?

And on the subject of an issue tracker, I really think this is needed. As I said, right now I really have very little idea what Sencha is working on. The 4.2 beta and grid writeup was greatly appreciated, but that's a fairly rare type of occurrence.

If you want to see how it's done, go look at the JetBrains issue tracker. They have a very long list of products and they get a massive number of bug and feature requests. And they actually respond to them, assign them to internal people, specify a fix version, and mark it complete. Shocking, I know!

The point being that it's very transparent, and if I submit a bug or feature request, I know exactly what its status is. And JetBrains is NOT a large company. If Sencha went that route, I think it would be easier because there are not a huge number of products to deal with.

One warning I can offer is that if an issue tracker were to be set up, you absolutely must commit to keeping up with it. The only thing worse than no issue tracker is having one that is never updated. Adobe did this with Flex and it was frustrating beyond words to take the time to find a bug or document an enhancement, put it up there, and never hear a word from them. By the end, there were literally thousands of issues in the system that were YEARS old and had never even been responded to. Please DO NOT DO THIS. Do it right. :-)

Sencha is a private company, so you can do whatever you want to. I'm just letting you know that not having a proper issue tracker is a problem on multiple levels, and offering some advice on how to handle it if one is created. I'm sure everyone agrees that a discussion forum to track issues is not a viable long-term substitute.