What is Snarl?
Snarl is the name for the code that a few rough-and-ready Londoners put together for a project called Sukey. It was started by @gausie and @samthetechie the night before the student protest on the 10th of November 2010 against rising tuition fees for higher education in the UK.
Ultimately, it's a system to crowdsource information about what's going on on the ground during a protest and relay it in way that is easily understandable and usable to protesters. It is made of three core modules - an app for reporting and receiving news, a messaging console to sort and rate data that's coming in and a mapping console to visualise the data it collects. There are also a few other projects under the Snarl userpage; they are proposed add-on apps to improve the service.
The short term aim is to get Snarl to a point where any protest movement could run their own instance without any human assistance. The mid term aim is to make Snarl organise and redistribute data automatically and efficiently. The longer term aim is to decentralise the whole system in some way. We can do it together.
Why is it not called Sukey?
Our project needs to be free. Free for anyone to use (or abuse). However, we want to distance ourselves from any possible misuse. We've therefore decided to keep the Sukey name with our team and our implementation of Snarl. Anyone is free to copy, share and improve Snarl and run it with their own team for whatever reason they see fit.
We'll still be running Sukey for select strikes and demonstrations in the UK, and we'll try as best we can to offer assistance and training to others. Now, we'll be just saying that Sukey is powered by the Snarl engine!
How can I run Snarl now?
Because the code was hacked together inbetween university work and before tight deadlines, it's not really aimed at the end user yet. For most of us, Snarl is our first big project and we're learning as we're going. We've open-sourced the code, meaning that anyone can take a look and suggest (and preferrably implement) features or identify (and preferrably fix) bugs.
We're in an alpha stage of development, so only developers and those literate in programming will be able to make good use of the project. This will change, don't worry.
I want to contribute!
Awesome. Have a look at the code and see what you think. We've just started, so we're still building issue lists and some of the code is pretty bare. Because all the different modules were written by different people, there are very different coding styles and as of writing, I still have no idea how Messaging works (but it does). None of us have ever run an open-source project before and we'd be extremely excited by even a little pull request!
We'll get a diagram of how the modules tie together up as soon as we can.