Looking for a social networking stack that's free software and ready to use today? The latest release of Crabgrass from Riseup Labs looks to be almost ready for prime time. Though targeted at "activist" groups, Crabgrass could be useful to any project or organization.
What's Crabgrass? If you haven't heard of it, then odds are that you're not a hard-core activist in the Seattle area. Crabgrass is a Ruby on Rails application for social networking, group collaboration, and network organizing licensed under the Affero GPLv3. The name was chosen because crabgrass is "subversive" (grows nearly anywhere), "diverse" (lots of species of crabgrass), and "hard to kill" (which should be self-explanatory to anyone who's tried to rid a lawn of crabgrass).
The development is largely being driven by Riseup.net's Riseup Labs. Riseup.net is "an autonomous body based in Seattle with collective members world wide" with a mission statement to "aid in the creation of a free society, a world with freedom from want and freedom of expression, a world without oppression or hierarchy, where power is shared equally" by "providing communication and computer resources to allies engaged in struggles against capitalism and other forms of oppression." The organization provides hosting services, mailing lists, and other services and support (like Tor exit nodes) to facilitate organizations collaborating online and to thwart monitoring and surveillance. The group claims 50 hosted servers, more than 13,000 lists, and two million list subscribers.
Riseup Labs is a 501c3 organization billed as the "research arm" of the Riseup Collective. It does work on Crabgrass as well as Monkeysphere, Backupninja, and the Debian Grimoire.
The first alpha release of Crabgrass was in 2009, but development really picked up after the Riseup Collective brought on developers to focus on Crabgrass. Crabgrass provides a host of collaboration tools like task lists, meeting scheduling, wikis, file hosting, discussion pages, surveys, image galleries, and much more. Crabgrass also offers real-time chat, a tagging system for content, and a search system for finding what's stored in Crabgrass (assuming one has access to the material). What's missing? So far, Crabgrass lacks calendaring, but it's fairly complete otherwise.
The tools also have fairly fine-grained privacy controls, with defaults that require users to consciously share materials with others rather than a site like Facebook which starts from the assumption of sharing with anyone and requiring users to take steps to lock down content. The hosted version of Crabgrass from Riseup.net only allows communication over SSL/HTTPS, and data is stored in an encrypted format. For the most part, it appears to be up to the administrator to secure Crabgrass if they choose to run their own install.
Crabgrass is sort of a blend between tools like 37 Signals' Suite of collaboration tools, Facebook, and Meetup.com. The difference, of course, being that it's AGPL'ed and designed with user privacy and security in mind. The rationale for Crabgrass is that social movements need better tools to work on the Web, and the existing Web services do not suit "the complexity of relationships that activist organizations face in the real world."
Oddly enough, Crabgrass has gotten very little attention as an alternative to Facebook or other proprietary social networking/organizing platforms. Though it's not a one-to-one replacement for Facebook, exactly, it does offer most of the features that users would want — and then some. Then again, it may not be too surprising, given that the Riseup Collective is not what one might consider a mainstream organization — or one that pursues the mainstream even a little.
The bent of Crabgrass is not towards frivolity and chattiness that one finds on Facebook, Twitter, or MySpace. Though Crabgrass is being released as open source, it seems that it's mostly being used by Riseup to "facilitate active, confederal, and directly democratic social change networks." But it is available for anyone who'd like to run it themselves, if you're willing to do some digging. The documentation on the Crabgrass site is primarily targeted at developers or end users. If installation instructions are available online, they're carefully hidden.
If one downloads the Crabgrass package, though, install instructions are found nestled under the docs directory and are fairly straightforward. Again, the instructions are primarily targeted at developers — the install will provide a running instance of Crabgrass running on WEBrick, a Ruby library that provides a single-threaded Web server that's suitable for development use but unsuitable for a real-world deployment of any size.
In short, Crabgrass is not a trivial install and will require a bit more care and feeding than, say, a WordPress or Drupal installation.
Since the production release is being used on Riseup.net, I decided to create an account and test-drive the software in use rather than setting up a test version that would only have a single user. Over the last few years, I've used Facebook extensively, 37 Signals tools lightly, and Meetup.com quite heavily in the last few months. Crabgrass is not quite as intuitive as other social media tools, nor quite as easy on the eyes as Meetup.com or 37 Signals' tools. In this users' opinion, it's far preferable to the Facebook interface.
In terms of actual features, though, Crabgrass seems to be on par with other services. It's easy to use, seems to provide most if not all the features one would want for organizing activities for a group — or coordinating a free software project. For privacy minded folks, there's no reason that Crabgrass couldn't be used to set up a Facebook-like service with a privacy friendly bent running on FOSS.
The only potential problem for Crabgrass is that the politics of the group may alienate even moderate political types, to say nothing of conservative or libertarian FOSS contributors. When this reporter finds himself more than a little to the right of an organization, it's saying something. There have also been complaints that Crabgrass development is less than transparent. That said, Crabgrass is a very valuable project and it would be a shame if it were not adopted by more projects. If you're interested in becoming involved, there is a developer's network for active Crabgrass contributors. However, to participate in the discussions and editing pages, etc., you must request access first. The mailing lists, however, are open and have a public archive.
Despite the low version number, Crabgrass appears to be fairly mature software and to be used already by a fairly large network of users. Free and open source projects looking for a social networking/organization platform should look into it.
Newsletters and articles
interviews Dan Leinir Turthra Jensen, who develops GamingFreedom.org, which is a social networking site devoted to free culture and the Gluon gaming framework. "Gluon Player is then the collective name for a set of applications on a bunch of different platforms and form factors: Gluon Player Touch for tablets and the like, Gluon Player for the desktop, Gluon Player Mobile for touch based smartphones. These apps all connect to GamingFreedom.org and let you both download and play the games uploaded there, but also comment on them, rate them, even donate to the people who made the game if you think that theyre deserving." a look back at the project (which was working on an LLVM-accelerated Python implementation) and why it ended up so fiercely pining for the fjords. "Finally, the signals we were getting from python-dev were not good. There was an assumption that if Unladen Swallow were landed in py3k, Google would be there to maintain it, which was no longer the case. If the merge were to have gone through, it is likely that it would have been disabled by default and ripped out a year later after bitrot. Only a few developers seemed excited about the new JIT." investigates Linux tools for using the WebP image format over at Linux.com. WebP is a lossy image format (like JPEG) that was introduced by Google back in September. "WebP compression is essentially an adaption of a single frame of WebM video. It, too, breaks the image into blocks (although 4-by-4 in size, rather than 8-by-8), but in place of JPEG's DCT [Discrete Cosine Transform] and high-frequency bit-chopping step, it uses the intra-frame coding algorithm from WebM. Intra-frame coding is the coding down within a single frame, as opposed to between two consecutive frames, and WebM's method involved constructing a prediction for each block based on the blocks adjacent to it. The encoder saves the predictions and the differences between the predictions and the real input blocks in the output file — if prediction is going well, as it should for most continuous-tone images like photos, the output is smaller than the raw input — and the result compressed with lossless techniques."
Page editor: Jonathan Corbet
Next page: Announcements>>
Copyright © 2011, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds