Infragistics Team,
I have been using Infragistics tools for most of a decade, and have been supporting my developer peers in the Infragistics forums for nearly that long. I would really appreciate you giving this proposal some serious thought. I have taken a lot of time to think this through and document it for you, and I hope you will afford this suggestion appropriate consideration.
I have been chewing on an idea for a long time that would be an enhancement to the Infragistics documentation and support website.
You really need a community-driven code samples area, preferably cross-linked into the documentation.
You have made some efforts at code samples in the past... And they have been pretty good. Your staff content authors are brilliant. Tony, Craig, and Murtaza are amazing, and I love reading their stuff. The problem with each effort has had to do with goal and structure, not content. Here is a summary.
I know documentation is tedious, and is not really core to what you do (which is developing outstanding tools). Having a community code sample site would actually take some pressure off of your documentation team, because people could go to the community site to fill in the gaps. I am sure it would also take some pressure off of your support staff.
So here is what I am thinking would be features of a Community Code Samples website...
Like I said, I have put a lot of time in using your products, and fleshing out this proposal. I believe that this suggestion offers some real gains to your company in reduced documentation and support pressure. That translates to real dollars and cents in reduced support costs.
Even more than that, it will help galvanize the loyalty of your user community. Your talented users will feel appreciated, and your new users will more quickly tie in to the sense of community. That translates into real dollars and cents in increased sales and retention.
I hope you will consider it.
Thanks,
Rob Hudson
Rob:
Thanks – thanks for the time you took out of your day to write to us. Thanks for the time you spent thinking through a challenging problem and thanks for pointing out how Infragistics can improve to benefit not only you, but all of our customers.
You’ve mentioned a number of issues here and I am going to do my best to carefully deal with each one. Please don’t hesitate to correct or guide me as I work through these issues because your feedback is invaluable.
Even though Infragistics is, as viewed by many, a ‘controls vendor’ – that by no means diminishes our commitment to customer support. We have teams that live and breathe the developer support, documentation, samples and design experiences for our customers. The bottom line is we care deeply about how each of these departments relate to you – so your suggestions, thoughts and ideas are welcome anytime.
Your proposal for leveraging the Infragistics customer community by strengthening code samples and making content more discoverable makes a lot of sense. To begin, though, I have some good news and some bad news. The good news is the highest priority among the company at this time surrounds shipping our new corporate website. Now that may not sound relevant to our discussion but please allow me to explain.
We have recognized that one of the main difficulties that our customers face is the daunting task of trying to find information. Right now information about our products is scattered across the myriad of Infragistics web properties making it hard for customers to know where to go for what information. The bedrock feature of our new website is an integrated faceted search that not only returns search results from:
…but also allows you to filter in or out the types of content (blog posts, samples, forums, etc.) you want along with related tags. The ability to search across all the content silos of the company and quickly narrow down to what you are looking for will, I certainly hope, provide a much more effective way of getting the answers you need.
Note: Our current site has a “global” search available at http://es.infragistics.com/support/get-help.aspx, but the search in our new site far out-performs this search engine.
Now for the bad news. Based on our research we stopped putting resources behind code samples because the response we’ve heard is a desire for more in-depth samples and topics that extend beyond the base-level concepts and code snippets. Unfortunately code samples, as they stand today, haven’t met the needs for more comprehensive learning. But as they say, “never say never”.
From what I understand your desire is to address: how can Infragistics open up access to our rich community of customers to enable better collaboration? Our past hesitation to granting open access to areas of our sites is rooted in some bad experiences we encountered with users not being responsible with the power to post content to our sites. Invariably these problems lead us to consider very carefully what we are able to make open to the public and what needs to be locked down.
Therefore what I would like to do is to get you in contact with a member of our Interaction Design Team, Riddhima Shelat. She is about the business of making sure our new website is usable, beautiful and fulfills the needs of our customers. Perhaps we can work together to find a reasonable answer to how we can open up the keys to the kingdom more?
Another point you mentioned is that our documentation is a “last resort” in the options you consider while attempting to learn how to use Infragistics’ products. I’d love for that not to be the case and I’d like to share some of proactive steps we are taking to increase the quality and coverage of our documentation:
Focusing on the Important and the Urgent
With each release cycle we face the same dilemma. How much of our resources do we allocate to shoring up existing samples and documentation and how much of those resources are pointed toward supporting content around the latest release?
For the most part the Product Guidance (PG) team has placed the highest priority on supporting new products. After all if customers don’t have resources to learn new products how will they ever start using them, right? The problem with this mindset is that more in-depth content that we would have liked to provide during the previous release is often skipped in light of providing new content for new features.
To speak to this problem we are instituting a new PG role which is reserved 100% during a release cycle for working with existing documentation. People in this role will:
My hope is that by establishing and supporting this role existing issues among product samples and documentation will dissipate over the long run.
Enhancing the Presentation
We are currently looking at a few options that present some ways for us to change direction regarding how we provide content on the web and on our customer’s machines. Our current approach is too restrictive to really allow us to make our content as discoverable as possible. We are looking toward updating our tooling and processes that will allow us to better present our content that better facilitate searching, scanning content and provide an overall better experience with our content.
Improving Quality
In the past Infragistics has used outside editing firms who were responsible for editing our documentation. The feedback we would get would be to fix a few grammatical errors and correct some spelling mistakes.
Today we have established in-house editing staff. Going far beyond a few spelling tweaks our editing team is working hard to build a “consistent voice” among our documentation and help enforce a higher standard among our written work.
Further, we are adopting the Information Mapping writing technique to create documents that are clearer, easier to scan and that help readers find and understand relevant content faster than ever.
Since I still don’t feel like I’ve provided a good enough answer for you regarding your overall question, I’ll pursue this further with our design and development teams to see if there are some features of our new website that we can build around exposing more to community contributions. While we won’t be able to introduce anything beyond our current project plan in the first version, perhaps with some design interaction we can create something that will work for a coming release of the site.
Further, as I read your post I was wondering if you could help me by understanding better the answers to the following questions:
1
What does good “How to” content look like?
I don’t want to make any assumptions here. We have some ideas, but I’d love to get your perspective on exactly what you’re looking for.
2
How can we make showcase samples more relevant while still being flexible enough for change?
One issue I see with your suggestion for deep linking into the showcase samples is that we must be able to account for change. When the code in a sample is updated then there is a risk that a description in a topic is then out of sync.
What would you like to see?
3
Would you be in support of us somehow integrating something like the code samples in the same structure of our feature samples?
Doing this may give you the organizational structure you’re describing and make a clean way to integrate some other approach in our existing framework.
4
Can we contact you outside the forums for feedback regarding our new website and other advancements we’re considering?
Your experience with our products, well-crafted insight and obvious desire to see conditions improve make your direct feedback coveted.
Thanks once again, Rob. I know some of what I’ve discussed goes beyond the original scope of your post, but I hope that you see that I share all this information in the spirit of demonstrating that we are dedicated to the process of continually improving your interactions with us on all levels.
We won’t always get it right and much of what we are doing represents a long-term dedication to improvement, but together I think we can make some significant change.
Best,
Craig
PS: I have included my contact information along with some of my colleagues at Infragistics if you or any others would like to continue this conversation on this thread or by any other means that is most convenient for you.
Craig Shoemaker Product Guidance Manager cshoemaker@infragistics.com 951-310-4496 @craigshoemaker
Stephani Smyth Director, Developer Support DSManager@infragistics.com609-448-2000 X 1139
Riddhima Shelat Interaction Designer RShelat@infragistics.com 609-448-2000 X 1258
Craig,
Your response reminds me exactly of why I have been loyal to Infragistics for so long.
I don't want to sound like I am coming down on your support or documentation team. Lord knows there is a ton of documentation, blogs, etc, all over the place. I see the result of a tremendous amount of work.
Your support team has some really strong players as well. Whenever Victor or Tsvetelina chimes in on a conversation, you know it's going to be resolved, and usually in an elegant way.
I have had a chance to read through your response... and the idea that the bedrock of the new site is a global search leaves me disappointed. Maybe it's a personal flaw of mine, but when I want to find information, I gravitate to structured sources rather than unstructured fuzzy sources. My instinct is to go to documentation and find the control/feature, and expect to find the answer there. Using search feels like a desperate last resort to find something that should have been intuitively placed from the beginning.
Maybe it is a better global search... but it feels awkward building a search, guessing at keywords, and setting filters, when it should be as easy as pulling up a control from an organized hierarchy and scanning a list of articles.
A few notes specifically on your well-thought-out response.
In response to your questions:
I appreciate that the all products and processes have flaws, and I do not have "perfection" as my expectation. I love your products, and will continue to use them regardless of what you might do with my input.
Lastly, I have a couple of more insights.
I think really, there are two main challenges with the Infragistics support site now.
The first challenge, I think, is despite all of the content, it lacks cohesive structure. Where do I go if I have a "How do I" question? Do I go to the documentation, a sample website, a blog, the forums, or the sample browser? Who knows... the answer may lie in any one of those places, and maybe not in any of them. But I have to check all of them. You would have me search all of these globally, but you are making me work to find information that should be organized.
A cohesive structure could be provided by the tree hierarchy in the documentation, but it's not linked to anything.
The second basic challenge is more fundamental... I think the documentation is designed to answer the wrong questions.
If my question is "What is the class structure of the xyz object?" The documentation has an answer for me. But that's rarely the question I have in my mind when I go searching. 99% of the time, the question is some variant of "How do I.....?"
Craig, I want you to look at this forum post by another seasoned user, posted only yesterday. His forum post really deserves as much attention than anything I have written. It is simple... only three sentences... but it speaks volumes, and should reverberate..
He says simply "Frustrated here trying to do one of the most common things possible in JavaScript for WebTab. Change the tab. Can't find it anywhere." http://forums.infragistics.com/forums/t/59071.aspx
This guy isn't a slouch. He's been with Infragistics since the classic controls. If a seasoned user is having this much trouble trying to use the documentation to perform simple tasks, how much more do new users struggle?
And is there actual documentation to answer his question? Yeah, there is technically documentation. Nested 6 levels deep, buried beneath topics on namespaces and classes, in a property description. There is no place to go to get a simple answer to the question "How do I do this very common task..."
Today, I spent much of my day teaching one of my junior developers how to customize output in the WebDocumentExporter and WebExcelExporter CellExported events. Why? Because he came to me and said "I looked everywhere, and I can't find documentation on how to customize output." He didn't even have an inkling that the CellExported event is where you would want to do this kind of customization.
I knew how to do it... but how? Not because of anything in the documentation... but because of a code sample Tsvetelina posted in the forums in response to one of my questions.
Ultimately, this lack of documentation cost me in development time weeks ago, when I had to hunt it down. It cost Tsvetelina (and by connection, it cost you) in her taking the time to respond. And it cost me twice again today both for me and my helper, in the time it took to train him. If IG would have afforded me the opportunity, I would have gladly taken what I showed him and posted it as a code sample to a public library to prevent this from happening to others. But as it is, it is simply valuable time lost... for me, my protege, Tsvetelina, and the next chap who has this question (and Tsvetelina again when she has to respond to his support request).
That is four separate times this one lack of documentation has cost both of our companies valuable time... needlessly. And several of them could have been avoided.
What really baffles me is why Tsvetelina wasn't given the opportunity to post the code sample into the core documentation... redeeming herself from having to answer the same questions over and over again. She's internal, knowledgeable, and immensely helpful.. but even she can't contribute code samples to an easy-to-use library. It sounds to me like the worst side of politics.
I really believe that if you shift the focus of the documentation away from "What are the technical specifications of xyz" to "How do I?" I think that solves most of the problems.
But I recognize that that sounds much easier than it actually is. Just the math of it is daunting. The number of useful tasks a person can perform with your tools is some multiplication of the combination of features, increased again by multiplying the combination of controls. It's a massive project.
As you mentioned, resources are limited, and resources are weighted toward documenting new features. I don't personally think you can accomplish a project of that scale while limiting yourself to only staff sources. Without leveraging the community, the achievement of a comprehensive "how do I?" library may be impossible.
If you will humor me, let me describe my ideal Infragistics documentation site.
Regarding documentation... and I can't underscore it enough...This could be a mission statement for the documentation team. A person should feel confident that if they go to the documentation, they will find the answer in an intuitive way. Even if the documentation doesn't have the actual information, it will contain a current intelligent link to some resource that has the information. And most of the time anyone goes to the documentation, their question is "How do I...?".
The documentation as it is now is basically a static help file. Instead, it should be a dynamic, breathing, growing documentation website, which is cross-linked by feature to *everything*. The tree structure that you have now is fine, because it provides structure and organization, but content within each document should be dynamic. Within each page of the documentation, you should have links to the following:
Second, my ideal Infragistics support site should have a comprehensive "How Do I..." library. This is where you need samples of how to do everything, from the basic to the advanced.
I feel that that can't be fully accomplished without community involvement, but that's not my decision. But even if you only increase scope to allow contributions by internal support staff, it would be a lot better than it is.
Right now, it appears your support staff can only contribute to the forums. I have worked support. They would love to contribute to the documentation, if only to make their own jobs easier. Just let them contribute to the samples library. Want to know how to download a WebExcelExporter spreadsheet asynchronously? Duane Hoyte's article is there instead of being lost in the forums. Want to know how to change a selected tab in Javascript? Tsvetelana fielded a support question on that, so she posted a sample for all to benefit.
Thank you, and cheers,
-Rob
Wow, ok, so many things...
First responses to your specific notes.
Just now finding out about the Cheat Sheet prompts me to add one more topic to our conversation... That is how to communicate new information to end users.
Information subscription needs to be centralized, and topic-based.... with the option to subscribe to notifications across all sources based on topic.
Right now, just looking at the Community ASP.Net tab, let's see what information I can subscribe to and what my notification options are...
Pretty much, if you guys post anything to any of the tabs in the ASP.Net support page, it is only discoverable by users if they manually come to the site and click on each tab looking for new content. I don't have time to do that. Maybe that's one reason your posts to these pages don't yield impact that you might hope for?
How should subscriptions work? I want to be able to subscribe to email updates *by topic across all sources*. I don't want to have to subscribe to each source individually. I work with a handful of controls, but I use those controls very heavily. I want to have a subscription option that says "send me all new posts about the WebDataGrid, regardless of whether that post is a blog, article, code sample, video, or whatever new source you might introduce".
Quick update...
I just noticed the "RSS Subscribe" button located in the tab row used for navigation. No wonder I missed it. It's in literally the last place I would look.
When I was looking for the RSS option, I scanned the whitespace at the top, bottom, and sides of the content area. I also checked the page footer and page header. It never occurred to me that it might be in the navigation area.
Also, the Blogs page that announces the Cheatsheet does not have an RSS option, even in the navigation area.
I hope you had a good weekend! I had a few responses and answers to your last posts:
Search
The search you see on the site right now does not index the same information nor is it the same engine as what will soon power our new site. I think you'll find many of your concerns regarding search will be alleviated when we bring our new engine live. I still expect to have areas where we can improve, but I think we'll take a big step in the right direction with our new search.
Plus, remember that we're still going to have formal and loosely structured areas of the site as well. We can look into the tagging approaches you suggest. We don't have anything hierarchical planned at the moment, but we are instituting a much more rigid tagging schema which is primarily maintained by our Interaction Design Group, the same folks to oversee our APIs.
Showcase Samples
Yes, the showcase samples and the Application Samples are one in the same
Samples Browser
Again, I agree with you regarding the samples browser. What we have up today is a trimmed down version of the real browser going up with the new site. Beyond it just being less functional, we have also redesigned the navigational area with much more explicit UI elements - including page numbers in place of the cryptic dots!
Creating Dynamic Content
Good point - I was just throwing a concept your way. We'll certainly have to think through any approach. We certainly want any 'related' information to be related indeed. Again the search we using is a search appliance with an API allowing us to customize the results. This is far beyond anything we have live at the moment.
Building a Cohesive Structure
Yes - I was thinking for this to work the returned data would have to match the control or feature name and must have the 'How To' tag applied to the topic.
Code Snippets
These are great ideas. I'll chat with our Developer Support lead about your ideas when we get to the point of making the integration changes.
Crafting 'How Do I' Content
I've asked everyone on my team to read your suggestions regarding perspectives for creating content. What's nice is that some of the structural changes we're making in our writing address a few of the items you call out specifically. The inherent problem here though (as you pointed out earlier) is that since there really are so many different ways and contexts a control or feature may be used, we often find it difficult to define the right 'How to' scenarios.
Organizing 'How Do I' Content
Again - great suggestions. We'll refer back to your ideas as we develop the features.
Other Resources
I'm so glad you like the cheat sheet! Grid migration was one use I was hoping for people to find great benefit from the sheet. Right now we not doing all we can to help people find the cheat sheet, startup solutions and the like.
Notifications & RSS
The limitations of our RSS and notification systems are largely rooted in the software we're running to power our Community site. Here also, I'll spend some time with our web team to discuss how we can deal with these issues in our new website.
Thank you very much! I have appreciated the opportunity to contribute, and I look forward to great things from Infragistics as a whole.
There are several very good reasons that you guys dominate.
A little over a year ago, we had this really valuable discussion. I haven't been active on the website this last year, because I've been focused on customer deployments and migrating off of 11.1. I am just now diving back in. I am curious what progress has been made on topics addressed in this thread.
Looking through the forums this morning, there is one thing that strikes me. It appears that the support staff are still relegated to posting their code samples into the forums, where their work is poorly categorized, and will be eventually lost. Are you guys working on a place where they can put code samples that is organized and can be easily referenced?
Also, as a source of inspiration for managing sample code, have you seen what Microsoft is doing with their OneScript website? It looks pretty genius.
http://blogs.technet.com/b/onescript/
Thanks, - Rob
Rob and Davide:
I apologize it's taken me so long to follow up on this thread...
I have asked our Web team to follow this thread so they are hearing from you directly. Your feedback is not only greatly appreciated, but very valuable. We're continually working the site so please feel free to share anything else that can help us improve.
I agree with Rob, but not on this:
"The layout is awkward, but forgivable. Try this link: http://es.infragistics.com/products/aspnet/data-grid/help?page=2. On my screen, the results start at the bottom of the page, forcing me to scroll down just to see them. If you click the link to get the next page of search results, you are placed back at the top of the page and have to manually scroll again."
IMO IS NOT FORGIVABLE, the User Experience is emabrassing ... especially by those who promote it as an added value, which is ;)
This issue on their WEB UI probably shows that it is more difficult to create a full UI that the individual components.
I always had a feeling from IG ... that it is a bit "away" from the real world of theirs customer, but is a my sensation ... not the reality ;)
However, congratulations, you have made progress, but do not stop! The leadership must be keep it! I think Rob has given you most valuable advice, more than a cold consultant ;)Best,Davide.
Hey Craig, hope you are doing well. I know you are busy, and don't expect your personal attention. If you want to pass this to a henchman, that is fine with me. Infragistics has provided you with a hidden lair and henchmen, haven't they?
Some initial feedback for the henchmen:
Search:
I spent some time exploring the new support site this morning... I put in the same "real world" searches that I did last year, to see if the results are better.
I searched "webdatagrid summaryrow behavior" to see if there was anything available for customizing the output of the SummaryRow. The results were mixed, but better than last year. While only two results were returned, both of these results were related tangentially, and maybe useful... Both were "How Do I" documents, one of which was a "How Do I" video, and the other was a blog post that contained a video. Both were very general to WebDataGrid, and not very specific to Summary Row. There were no links to the documentation or forum posts that might be relevant. No links to the samples browser that might also have an example. No links to the sample applications either. I would have expected search results to return both documentation and forum posts as possibilities.
I see the use of tags is improved, with the inclusion of the "How Do I" tag. Love that.
I searched "webtab javascript change tab" to see if there was any info on how to change the tab from JavaScript. No search results returned. I tried again with "webtab CSOM change tab". No results returned. I tried again with just "webtab change tab". There were links to general WebTab documentation, but the top level links didn't include anything on using JavaScript. The user will still have to dig into the documentation. The forum post where this question was answered specifically did not appear in search results.
I wanted to find out if there was information on how to customize the output of individual cells WebExcelExporter. I searched for "webexcelexporter customize". No search results were returned. I searched for "webexcelexporter cellexported". No results found. However, several possibly relevant results were returned if I just searched for "WebExcelExporter".
The new search feels finicky, and I haven't yet received relevant information on a first attempt. It feels like work, and a gamble. Maybe the strategy for using search is to not be specific in the search phrase... but I want to be specific so that my search results will be relevant.
Documentation:
I do like the layout of the support page, where you can tab between "Search" and "Control Specific Help". After clicking "Control Specific Help", and selecting my environment, I was instantly drawn to the "Popular Blogs" section. It's the first thing I noticed, and I felt compelled to explore some of the blogs before I even started looking at the documentation. Several of them were highly relevant to me.
I can see how selecting options in the "Control Specific Help" basically returns results from the same Search engine that drives the Search window, however these results all appear specific and informative. I don't have the same complaints when working with this interface.
The layout is awkward, but forgivable. Try this link: http://es.infragistics.com/products/aspnet/data-grid/help?page=2. On my screen, the results start at the bottom of the page, forcing me to scroll down just to see them. If you click the link to get the next page of search results, you are placed back at the top of the page and have to manually scroll again. I can live with that, as long as the results are relevant, which they are.
I am struggling a little with the color scheme. Light-blue links on white background looks terrific on my desktop, but on my laptop it is hard on the eyes to try to read.
I am a little annoyed that the forum is aggressively removing markup from posts. I love to use bullets, and the HTML editor has bullets in the toolbar, but they are stripped out of forum posts.
My one piece of advice is this: While you guys are fine-tuning the organic search function, you should make the support page default to "Control Specific Help". Don't make people spin their wheels with organic search when the drill-down tool is presently much more helpful.
Great to hear from you again, Rob and nice to meet you Davide!
As you can see from the new site, the new search and other we've been able to make public much of what we had cooking behind the scenes when this thread started. As for the code repository, that is still something we haven't had an opportunity to implement yet. We have some new folks on our web team and I will make sure they read this thread so we can continue that discussion.
Thanks Davide, it is good to meet another Infragistics fan!
I have not upgraded to VS2012 yet... I have to migrate our SCC to TFS first. We have been using SourceGear for SCC. Their heart is in the right place, but it's just too buggy.
No reply from Infragistics yet... It is possible that they have their hands full, with Hurricane Sandy disrupting the country and all. Hopefully they'll get around to this in a few days.