The Tcl'ers Wiki came into existence about three years ago, and has evolved from a personal little fun experiment into a widely used and very actively maintained knowledge base for the Tcl community. With the increasing importance of this resource, we should consider how best to move forward in the future. This presentation will act as a starting point, drawing lessons from usage of Wiki's in general, as well as the Tcl'ers Wiki in particular.
Wiki's are a relatively new idea, which turn out to be absolutely trivial to implement, at least in a basic form. But although it is tempting to focus entirely on technology and features, the goal of this presentation is to not only provide background information on how this specific "WiKit" implementation works, and its design choices and technical trade- offs, but also to analyze the process of how things started, and to offer explanations of why and how this particular case ended up becoming such an active resource.
It is important to understand how the Wiki is used. To do this, an overview is presented of some of the usage statistics of the wiki, giving insight in raw accesses ("page hits") and summarizing the content of pages by categorizing what their purpose is, how active they are, their sizes and cross-link counts, as well as trends over time. As more and more pages accumulate, one can discern changes in the sort and amount of information stored, e.g. from starting out as URL reference lists to seeing more and more personal pages, sample code, documentation pointers, documentation itself even, all the way to topical discussions and suggested "roadmaps" for future Tcl releases.
Some particularly interesting behaviors spontaneously emerged that are worth examining further: the start of "weekend fun projects", the start of "categories", and the effect on the Wiki of adding a "Tcl'ers Chat" to the same site. Each of these have turned out to add new dimensions to the Wiki, and highlight the fact that "wikiness" is as open-ended as one wants them to be.
Given an understanding of how the Tcl'ers Wiki is actually being used, we will then consider some options for the future. We must consider both features and implementation choices. For example, is there a point in having the Wiki coded in Tcl? What key features are missing which really ought to be added? What about stability and mirrors? What about other wiki implementations? Is simplicity an important criterion? Should passwords be introduced to protect against vandalism?
We can also address broader issues, such as the balance between the Wiki as a stable resource, and as an experimental platform for Tcl developers. What are the trade-offs in making changes to the wiki implementation, both minor and major? What about doing radically new things with the wiki? More generally, is there value in extending the WiKit implementation separate from the Tcler's Wiki?
These and other issues will be addressed, along with several ideas and considerations, in the hopes of igniting a discussion in the Tcl community on this important resource. While it's all too easy to add new features, we have to be careful not to sacrifice the ease of use the Wiki relies on. By understanding how the Wiki has served us so well, we can make the tough design choices needed to enhance its value in the future.