101companies vNext Pre-alpha

Preamble

In this post, I work towards a vision towards 101companies vNext. The version of the vision is Pre-alpha; thus the title of this post. I am submitting this post as a position paper to SL(E)BOK @ SLE2012. Before I start, I want to make sure to list those individuals who have helped me to arrive at this vision: Jean-Marie Favre, Dragan Gasevic, Martin Leinberger, Thomas Schmorleiz, and Andrei Varanovich.

Good news

The 101companies community project aims at aggregating and organizing knowledge about software technologies, software languages, and software concepts. The project is getting somewhere in that "interesting" source code is added to the 101repo continuously and "relevant" technologies, languages, and concepts are added continuously to the 101wiki for the last two years or so. Also, the project starts to "make sense" for teaching and professional education. Further, the project also starts to be "a viable scientific matter"; see recent conference publications on the general 101companies idea, megamodeling, and linguistic architecture. Yet further, think of the SoTeSoLa 2012 summer school, which ran the reverse/re-engineering dimension on top of 101companies as the theme of choice for its extended hackathon.


Bad news

Very much not surprisingly (to the 101companies' initiators anyway), the 101companies project faces huge challenges. For instance, the 101companies implementations are of quite different quality and it is not even known what their quality is. Also, the documentation of the implementations is often weak. Further, the actual document structure for wiki pages varies beyond repair which is a consequence of several factors: lack of tool support for checking pages, lack of (complete) agreement on a documentation model, and inconsistency due to the evolving (partial) agreement. Moreover, the process or workflow of becoming a contributor and maintaining contributions is opaque or miserable. Community features are also missing very much: anyone should easily be able to discuss 101companies implementations and content. Finally, 101companies looks odd without integration with major resources such as Wikipedia and StackOverflow.

101companies vNext Pre-alpha

The occasional 101implementation is still appreciated and those uber-active 101ers will continue to bring them in, but that's no longer a priority. What's much more important now is to put into place the infrastructure, the process (documentation), and the community incentives so that many others can leverage, contribute to, and improve the 101companies project (the 101repo and the 101wiki). I will use the rest of my sabbatical and the attendance at SL(E)BOK @ SLE2012 specifically to connect further, to engage in more discussion, to guide the overall effort, and to ultimately arrive at a plan that solves most of the current issues rapidly and cheaply. For instance, we plan to set up a weekly Google Hangout soon so that new contributors can chime in easily. If you are reading this and have any smart ideas about taking this project to the next level, based on your interests and skills, please get in touch.

A conceivable synergy: 101companies and BOK

Our understanding of what we are doing has grown too well to further ignore the fact that the 101companies ambition is too fat: aggregation of tiny HRMS systems is one challenge; aggregation of a Body of Knowledge (BOK) for software languages, software technologies, and software concepts is yet another, related but quite distinguished challenge. Perhaps, the 101wiki shows a humble attempt of assembling some pieces of the BOK, but there can be no doubt that the current content is not much more than an illustration of what's needed and the current process is clearly not fit to improve things sufficiently. Some basic ideas are in the air as to how to improve things interestingly, but they all require broad discussion and broad involvement. I am looking forward some discussions at SL(E)BOK @ SLE2012 and perhaps the available 101companies' bits of a BOK can just be removed from the 101wiki and find a more prosperous home at an emerging BOK soon.

Comments

Popular posts from this blog

SWI-Prolog's Java Interface JPL

Software Engineering Teaching Meets LLMs

Artificial General Intelligence obsoletes Software Reverse/Re-Engineering research as we know it!?