COMMUNITY IS A FUNNY OL' WORD. In recent years our humble nine-letter friend has come to mean many things to many people. No longer merely the domain of charity groups and overtly friendly neighbors, community has gone on to be the talk of technologists, businesspeople, politicians, students, welfare groups, and just about anyone who has connected to the Internet. Throughout this explosive community lovefest, a minor detail has been omitted in all the excitement: how on earth do we build an inspiring, engaging, and enjoyable community in our own walk of life? – Jono Bacon, The Art of Community
Lately I have been reading The Art of Community by Jono Bacon in which Jono explores what it takes to build, nurture and grow communities. It is a great book and if you are at all interested in community then it is a must read. The book covers many community related topic like planning, communications, marketing, measurement and governance – just to name a few.
For me, the last 12 years has been an exciting time as I have worked in various roles in the DNN Community. I have made my share of friends, made many new acquaintances, and as you would expect, I've even ran across a few people that I would consider less than friendly. More than the software, the community aspects of DNN are what motivates me the most.
Last year when I assumed a larger leadership role in the community I outlined a new vision for how we would organize and operate the community. The goal of the organizational changes was to promote a more open and transparent community, that works together with DNN Corp. to advance the DNN Platform. So how are we doing?
In many software methodologies it is quite common to go through a self-assessment exercise. In Scrum these are called retrospectives. In a retrospective, members of the team will identify areas where things went well, areas that need improvement and the specific action items that the team will focus on during the next sprint. The goal of the retrospective is for the team to be in a state of continual process improvement.
So where does the DNN Community stand today? Where can we improve? Where have we made progress? What will we focus on during the next few months?
What can we improve?
DNNSoftware.com (and dotnetnuke.com before it) is the natural home of the DNN community. This is where members of our community congregate to: get started with the platform, get the latest news, get help with any challenges, and to contribute back to the community. As the central hub for the community, it is important that it reflect positively on DNN and the community. We have a number of small problems with the community site, and a few big issues. This is definitely something we need to improve overall.
Of all of the outstanding issues on the community site, one of the biggest problems is the broken leaderboard. I had hoped to have had the issue resolved long before now, but that has not happened for a number of colliding technical reasons. Those issues have been mostly resolved and I'll be working with the team over the coming weeks to get the leaderboard problems fixed. The good news – we still capture all of the raw data so if you have accomplished any of the activities we track, you are still accumulating points. Once we resolve the data rollup issue, the leaderboard will once again accurately reflect all of the community activity.
The DNN Wiki is another area that needs some attention. Currently our wiki uses the Canam Wiki. The module has long been on our list for retirement and will be replaced in April by the Evoq Content Wiki which is more fully integrated into our community management tools and which includes support for our gaming mechanics engine. This change will resolve a longstanding search issue on the Wiki and will give our community a better set of tools for maintaining project documentation and information to supplement our API docs and User docs.
These are just a few of the items that I know need to be addressed. There are several others I am sure. As always, I am open to hearing about problems with the community portion of the site, and solutions on how we can improve it – but don't be surprised if I ask you to get involved and help work on the solution. After all this is a community effort. J In fact we already have a Community Website Working Group headed up by Ernst Peter Tamminga who are working to address some of our challenges in the community area. I am sure he would love some additional help.
What are we doing well?
While the community site is important, it is only one aspect of community. In fact, compared to many other Open Source communities we have a wealth of community management tools available, many of which have worked well for us for many years.
One area where I think we have done extremely well over the last several months is in community pull requests. One of the strengths of Open Source is the ability for many individuals to contribute small amounts of time toward solving a big problem. Often this takes the form of software contributions, but it can also include documentation and support efforts as well.
Starting last August we became very focused on engaging the developer community to help improve the platform. When I look at the number of pull requests that are actually being accepted and merged into the platform I see a marked improvement. The 7.4.0 and 7.4.1 releases both show that the community is really starting to become actively involved in improving the platform. If you look at the number of commits and number of files involved you can see that the issues being addressed are much larger. The contributor count is also growing which shows that more and more members of our community are participating. Overall, the trend here is very healthy and one that I think will continue moving in a positive direction.
The other area where I think we have shown good improvement over the past 8 months has been in our training and education efforts. During this period we have dramatically improved our blogging activity. For the first half of 2014, we were averaging 7 blogs a month. In the second half of 2014 we averaged over 21 blogs a month, which dipped a little in the first quarter to a healthy 15 blogs. We should see this number begin to increase as we have more information to share about the DNN 8 and DNN neXt releases.
Like blogs and code contributions, we are also seeing a significant increase in forum activity. We went from an average of 1400 posts a month in 2013, to 1700 posts a month in the first half of 2014, to over 2300 posts a month for the last half of 2014 and first quarter of 2015.
In September the training group started a new monthly community hangout which is available from the Community Events page. The monthly hangout is a way for community members to hear about the latest community activity as well as get a little bit of training from one of our community members. You can join the hangout live on the Community Hangout page, or watch it at your convenience from the DotNetNuke channel on YouTube.
In the spirit of working towards more openness and transparency, we have opened up a public roadmap page so that our users could see what our upcoming release schedule looks like. Right now this page is fairly high-level but the intent is to work on linking it more dynamically to our Jira roadmap and our list of Pull Requests on GitHub so that the community has a better sense of what we are working on and where we are headed with the platform. This is a big improvement over where we have been in the past where users often had little insight into scheduled release dates or upcoming product features.
The Road Ahead
While I think there is plenty of room to improve, I am happy that we are seeing renewed and increasing activity across many of our community activities. Many of our community investments over the past 9 months are beginning to pay off. It started with a turnaround in one metric and has quickly spread to many of the other metrics that we track. So where do we go from here?
While 2014 was about increasing our quantitative metrics for community, I think we need to give considerable effort in 2015 to making big strides on the qualitative side as well. We are seeing more and more contributions from community members and we want to make sure that those are of a consistently high quality. Likewise, DNN Corp has begun following the same pull request process as community members so that all of our code contributions are also going through a peer review process. We will also look to implement more unit testing and automated integration testing in 2015 so that quality checks happen automatically rather than relying on someone to manually scan code or run manual tests.
This past year has seen a lot of changes in the community. In 2015 that trend continues. Microsoft is making a huge investment in a new ASP.Net platform that is a complete rewrite of what we have been using for the past 15 years. DNN will be impacted by that change as we look at offering a DNN neXt Platform that embraces the new ASP.Net 5 and improves on many of the perceived DNN shortcomings. At the same time DNN Corp and the community will continue to make large investments in the current DNN platform.
Dealing with change is not easy. Many people in the community are uneasy over the changes because it is hard to predict how their businesses will be impacted. We understand that. At the same time, I have many people telling me that we are not changing fast enough. For those people who are satisfied with the current platform, they can rest easy knowing that DNN Corp will continue to support and grow the current DNN Platform for as long as there is a community that wants it. For those that want to embrace the new Microsoft, we will be right there with you on the journey to creating a more modern DNN Platform that embraces current technology and that sheds many of the technical limitations imposed by the current Web Forms platform.
Overall, I am seeing more site activity, more engagement and in general a healthier community than we have seen in a long time. I am extremely happy with all of the progress we have made, mindful of the areas where we have issues, and hopeful about the future of the platform and the community. I look forward to continuing this journey with you, and to continuing to make constant improvements along the way.