An idea for a revolutionary application
People who live under oppressive governments have been using social media applications to bring about social change. By using applications, such as email, Facebook, Twitter, etc. to communicate with others they attempt to bring awareness to their oppression and thwart the authorities. Wired Magazine has an article about how the youth of Egypt are trying to topple the Mubarak regime. And the book Here Comes Everybody also has accounts of how citizens have used various communications tools via the Internet and cellphones to bring about social and governmental change.
Communications tools like Twitter, email, texting and Facebook have been very handy but there are two primary drawbacks with them:
1-Security is paramount. In the case of Egypt the movement is primarily using Facebook to communicate with each other. However, Facebook’s openness allows the authorities to easily infiltrate the group and learn what their plans are.
2-Domain blocking. The government could shut down any domain from being accessed inside their borders rendering a site unaccessible.
A better mousetrap
Here are my thoughts for an application that would solve the two aforementioned problems and yet be an effective means for groups to communicate with each other. I would love to build this myself but I don’t know nearly enough about cellphone applications. Plus, if this idea is going to be successful it’s going to need the talents and creativity of many more people than myself.
For the rest of this post I’m going to refer to this project as Sywar ( Say You Want A Revolution ) pronounced “Sigh-War”.
Decentralized
The app can’t be a centrally located application like Facebook or Twitter. That makes it too easy for the domain to be blocked. And even if it isn’t blocked it gives the bad guys a specific URL to go to and attempt to hack and/or infiltrate. Instead I think this app would be more like the WordPress.org blog/CMS. Anyone would be able to download the server code and install it much like you install WordPress. Now they have their own communications nexus that they can use to communicate with others that share their opposition to the local government.
Community scale
While an instance of Sywar should scale to virtually any size it would focus on communities at a small scale. Meaning city wide and not country or world wide. It would be like craigslist.org in that way. Just as if I’m looking for a couch I want to find people nearby and not someone 3 states away. Similarly someone looking to quickly form a flash-mob wants to communicate with people nearby.
In addition, keeping each community fairly small will prove handy in working around the domain blocking issue which I’ll talk about later.
Choosing who are the administrators
Suppose Joe starts up an instance of Sywar. He would automatically become an administrator. He goes to his trusted friends and has them register. They form connections with each other. Like Twitter has followers you would have trusted friends in this app. Joe’s friends also invite others to join. And when someone joins that person forms trusted links with those that they know who are already in the group. Of course everyone won’t trust everyone else. Which is a good thing. Joe may not know some of his friends’ friends well enough to add them to his trusted network. What’s important is that people adding trusted connections realize that they’re not just adding someone because they’re cool. They’re adding them because they trust this person to not turn them into the authorities.
A person would be granted administrator status based on the cumulative value of their trusted connections. The more people that trust you the higher your trust value would rise. And the gain that you get from someone trusting you is based on their trustworthiness. Trustworthiness would also be temporally based. In that way the original group, which common since says would be very trustworthy, would always have a trust advantage over newcomers who could be infiltrators from the government.
If any of this sounds vaguely familiar it’s how Google determines PageRank. The more links there are to a site the higher that sites PageRank. And the juice that a site gets from a link is determined by the PageRank of the site providing the inbound link. It’s a whole lot better to get one link from a website with a PageRank of 9 than it is to get 100 inbound links from 100 websites with a PageRank of 1.
Most social organizations follow a power-law distribution pattern. Meaning that most of the members will have a relatively small trust value and there will be little differentiation below the 20th percentile. A small percentage of the group will get the bulk of the trusted connections incoming to them – they would be the group leaders.
Those that are in the upper x-percentile of trustworthiness have special privileges. Which I’ll cover later.
Communications
There are multiple solutions for how messages could be sent between people. Perhaps you can send a message to everyone or maybe just to those you trust. I’m uncertain what would work best. A balance needs to be struck between mass communications in the group and trust of those communications. And it’s possible that the best solution is to let each group determine for themselves how messages are propagated.
It may sound complex but I believe that if the administrative application is built well it would be fairly simple to use. Most of what goes on is automatic.
I can think of two problems that are likely to come up
- the authorities infiltrate the group
- one of the administrators is arrested
It’s inevitable that the authorities will infiltrate the group. But they will obviously have a low number of people who trust them. For instance, someone could go undercover and get an existing member to trust them. Now that undercover agent could invite in all his buddies. However, those people won’t have any connections with the main group. They will in effect form a collection that is loosely connected to the main body.

One tool that the application would provide is a view of the trusted connections. Any groups that are loosely bound would be obvious. Messages could be directed to those specific users and made to look like they come from anyone the administrators choose. In that way they could direct someone they suspect as being a spy to show up for a big demonstration. Now the administrators just need to watch from the distance to see if the authorities show up. If so then boot that group of users out. Or better yet, leave them in so that they think they’re getting juicy data but in fact it’s all a trick.
As I mentioned, the software itself would pick the administrators based on the trust value of their connections but if an administrator is captured then the others can easily change his/her password and mark their status as arrested so that the system will promote another person into the administrator group. And the person captured wont be able to give up his password to the authorities because it would have already been changed.
It would be questionable to show the administrators who trusts them and who doesn’t. In that way the incentive for an administrator to politic for trusted connections is reduced. They would just know that they have a high level of trust from the community but not who is the most trusted and who is on the edge of being replaced as an administrator.
Domain jumping
It shouldn’t be too hard to just switch the domain entirely when and if the local government blocks it. One possible solution would be the option of installing your instance of Sywar on multiple servers. The members will only connect with one of the servers for their communications and administration but that server could back up all data onto the other servers automatically.
If the domain is blocked or if that server is confiscated there’s no problem. The administrators will know of the other domains to connect to. Now they will have to communicate this domain to the group members person-to-person. But in a local group it shouldn’t take very long to get everyone connected to one of the backup servers.
One big advantage here is that the new domain is never posted anywhere so the authorities will always be in the dark for at least a little while before they find it again.
Registration
How people are added to the group is important. Since a group is based on geographic proximity it might be best to make registration only possible when an existing member is with you. Or at least make it difficult to register while talking over a phone. One thought is that an existing member would have to do the registration for a new member and when it’s complete they would have just a few seconds to give the new member the info required to log in. This way no emails are ever sent to an unsecured email account that can be hacked by the authorities and provide them any sort of information.
Another possible security measure to guard against a member of the authorities gaining access is that if x-number of existing members don’t trust you within a certain period of time after joining you’re automatically booted out.
Communications
The security measures and domain jumping are essential to the long term usefulness of this application but it’s important to remember that it’s primary function is to disseminate information throughout the group quickly so that they can meet up for demonstrations or to make plans secretly.
Keeping minimal records
One of the problems with Twitter is the permanence of the communications. In an application such as this deleting records after a short period of time could be very handy. An administrative setting would inform Sywar to delete any message after x-minutes.
Shortcuts
You probably heard about the incident where James Karl Buck was arrested while in Egypt and had just enough time to use his cellphone to send the message “arrested” via Twitter. A handy feature for Sywar might be shortcuts to specific messages. A sort of 911 that would send out you current position. Plus, a message like 911 could also automatically scramble your password so that you would only be able to send out messages but not access your account.
And maybe allowing for messages to be sent out on a delay could be useful. If someone is about to do something particularly dangerous then they can set a message to be sent to their friends in, say, two hours unless they get back to cancel it.
It’s not all about revolutions
While this application would be built expressly to help those who are attempting to bring about governmental reform – a euphemism for revolution - it wouldn’t be limited to that. I could see this being very handy for small subgroups who just want a way to communicate with others and control who is allowed to join the group. It could be employees at a company, a group of high school or college students, etc.
Overkill
Remember, people are already using Facebook, Twitter and email which are great but leave them vulnerable and sometimes uncertain to the trustworthiness of a message. But much of what I’ve suggested may be overkill. I believe that if an open platform were created that effectively supported a minimum amount of what I’ve suggested then the community at large could evolve this into a very effective tool for spreading freedom to those who are willing to work for it.
What next?
I’m asking you because I don’t know. Please comment if you have any suggestions. If you think it’s a worthy idea then blog about it and lets try to get enough interested people involved to get this project started. I believe the first thing it would need is a home. Most of my work is done as a solo developer so I’m not the best person to ask where it should be.
What I don’t want is people to feel that I have ownership of this idea. I’m presenting it to the Internet community because I feel it is something that, hopefully, lots of people will be involved in. I’ll be as involved as I can be and offer my input and development skills.
If something here has proved valuable to you then feel free to drop a couple of bucks in the tip-jar.






