"PlanetComputing"
⇧
⇖
In the software context, there are various sites for talking about a given software project (e.g. large-scale sites like Drupal.org, or small-scale settings like Github projects or roll-your-own Trac sites), as well as general-purpose ways of sharing factual knowledge (StackExchange-style sites, etc.), but there aren't easy ways to talk about connections between projects, or analogies between different deployments. If we had ways to talk about actual programming concepts, looking at parallel implementations, and keeping track of what people do with the concepts, we would likely be able to deliver considerably more depth than StackExchange, and greater breadth (and learning relevance) than the project specific sites.
- Research Problem
- Use the ideas from the previous exercises to build a learning environment for programming and computer science.
- Show comparison with things like drupal.org and stackexchange.com.
- What are the differences between learning in a procedural way, with facts as needed (StackExchange), and learning in a more structural way? At least in the development work that we've been doing, there are often mysteries and bottlenecks that could be solved by documenting "the 5 most important pieces of code in the system" (for instance). Presumably these 5 pieces of code may implement some known patterns.
- Methodology
- Whereas we were previously interested in extracting meaningful features (keywords, comparisons using a semantic network) from text, here we are increasingly interested in extracting features from code. How do we know when one piece of code is similar to another? In fact there has been a significant amount of work on problems like this in CS, and we should be able to draw on these ideas.
- Future/related work
- There are some interesting cultural issues that apply both in (proprietary) software and academic research (not wanting to be scooped). On the other hand, it's not even clear that we know what to do with the information that is there (e.g. consider the Research Excellence Framework). With careers (and institutional budgets, not to mention national agendas) being decided on the basis of ultimately very human decisions (is this paper good or not?), any kind of intervention that can be made in a timely fashion (you need to work on XYZ) will be of interest to researchers. Thus, we can imagine a PlanetResearch that would be the next step in the series. The challenge is to get useable signals out of something that is currently mainly assessed in aggregate.
- References