Apps for the Appocolypse
With my prediction that the internet has would go down in 2011 coming true in Egypt and Obama looking to get it set up so he can shut down the internet in times of emergency, it makes you wonder what we'd do if some shit went down locally. First they shut down facebook and twitter and then they shut down the cell networks and it sounds like they are jamming ham radio freqs as well.
How would you contact the ones you love if the cell/internet networks went down? How would you get the news out to the greater worldwide community if there were things you were seeing that the world needed to see?
There are a million game apps and a million calorie counting apps and those are cool, but I'd like to propose something that I'd like to see built in preparation for national or political or military disasters.
It's very possible that these kind of ideas are naive/already been done or just plain stupid. That's the point of brainstorming, to get them out. Feel free to come up with better ideas or improve ideas in the comments. Even better... make something happen!!!
Local wifi IRC: I want an app that creates a localized IRC channel that anyone within wifi range can join. The idea here is that wifi can't be jammed locally, so it would be nice to set up a localized network to chat with your neighbors without leaving the house. Bonus points if it can act as a node. This may already be possible, but it's definately not easy. I'd like to just open my phone, turn on wifi, run the app and see IRC chat rooms within wifi range of my device. Bonus points for being able to make the nodes into a network. Extra bonus points for sending a message chained via wifi devices accross a continent.
What other apps do you want for the appocolypse? What can you make that will be useful to the rest of the world in times of trouble? The time to make these things is before you need them! Go!
Jan 28, 2011
Reader Comments (19)
http://shareable.net/blog/the-next-net
Years ago Japan was working on making mesh networking mandatory for mobile phones so communication was possible during earthquakes. Communication was limited to text messages and they would traverse the network until they found the recipient (if the destination is inside the devastated area) or until they found the actual network (If the destination is outside the area). At the time (before wifi was available on smart phones) it required both changes in phone hardware and significant support by the carriers.
Now we should be able to do this all in software with a common wi-fi smartphone. All that's really stopping us is an international communication standard for mesh networks and messaging. (Which may exist, it's not an area that I pay a lot of attention to any more.)
The idea Disaster Mode phone app would (for me):
- Create a mesh network with nearby devices using an Open and standardized communication protocol. (Fragmentation would be awful. Density and interoperability are key to mesh networks.)
- Allow low bit-rate communications both inside the network and to the outside world where nodes can connect to it. (The outside com is as vital as internal communication and would need to interface with a web standard (say, email) so people could easily communicate in and out of it.)
- Have some basic seeding capabilities (So people without the app would be able to download it from a node after being cut off. At least for the same OS as the node.)
- Be simple and lightweight enough that anything that has WiFi can also serve as a node (Wireless routers, phones, handheld game machines, solar powered "disaster boxes" distributed around the world or airdropped.)
- Provide both managed identities and anonymous mode. Anon mode obviously to prevent the hijynx that are going on in Egypt right now. Off the top of my head it seems like verifying an identity (Connecting it to the phone number of the device, etc) would be a good idea too. Being able to verify that a call to action, emergency response, or a message about a loved one is legit would be valuable and reduce the amount of chaos in a natural disaster. (vs man-made disasters where anonymity would be king.)
Of course making something that does all of this is no small task, but doing any small part of it would be immensely helpful. However the on thing it needs is a solid foundation built on a mesh networking standard. Get people hooked together and they'll figure out how to communicate.
Of course, there was the revelation that the government infiltrated the open source community and put back doors in some of the encryption software that's in wide use. So maybe it really is 1984.
What kind of response would we see from the business community if someone cut the transoceanic cable links or turned the satellite ground stations off? If business owns the government, as seems to be true, the corporate state is going to accept it's lifeblood being shut down. You think Amazon and all other online retailers would accept their lights being turned off for political reasons? It may be an interesting thought experiment to imagine there is some way to kill the internet but with all the different backbone providers, local telcos, cellular devices, satellite links, it seems unlikely to work. Twitter and Facebook are largely http-based. You could fiddle with routes or poison DNS but there are too many civil libertarians in the nation's datacenters to allow that to stand ;-)
In years to come, we would speak reverently of bearded geeks in sweatpants sweating over keyboards in machine rooms, fighting keystroke by keystroke for the integrity of the internet . . . .
Consider that these big websites are replicated in different places: how to shut down all of them and what are the international repercussions if the US government shuts down service that others outside it's jurisdiction rely on?
I think we need to understand how the current networks are designed and implemented and how hard they may be to tamper with before deciding what to adopt as a successor/fallback.
If you want to approach this a different way and look for a communication method that is truly independent, look no further than radio. Point to point or using relays, you can get the news out without government approval or risk of interference (yes, they could jam signals but which ones and where and for how long?) Maybe the 2nd amendment would be about networked devices instead of guns if we were writing it today.
http://code.google.com/p/android/issues/detail?id=1140
But is this basically what you want? http://itunes.apple.com/us/app/close-chat/id386957075?mt=8
Its over bluetooth but its the same idea. It would be pretty difficult to make the phone itself act as an adhoc wifi hotspot not requiring and existing wifi router. I suppose it is possible though.
http://www.popsci.com/technology/article/2010-11/seawater-antennas-could-replace-metal-communications-arrays-streams-saltwater
http://voiceontheweb.biz/2009/09/burning-man-gets-its-own-country-code-almost/
http://pagalegba2010.wikispaces.com/FAQ
It's doable - if these individual networks get cheaper to deploy and can talk to each other... it's an open "plan b" alternative to the big carriers.
I'm imagining a replacement Network Manager program, with an emergency mode that incorporates a multi-protocol "war-dialler", traffic management and connection bridging.
Say I have two mobile phones. Both can be used as a USB modem by my computer. But I can only use one at a time. Why? Why can't I use both and have the computer spread the load of my connection across the two devices?
I imagine being able to hit the panic button on the on the manager, and let it go to work. It activates all the network interfaces it has in it's profile, not just the best default one, and goes to work. It finds a few wifi devices in the area and opens your machine up as a mesh network node (or gateway if your machine has other modes of access available as well).
If the DNS is out, it begins checking stored IP addresses from your local cache to make a temporary local DNS to share around.
If you have a dial-up modem, maybe there's a stored list of other BBS, servers, or dial-up mesh-net computers for it to run through in case of this occurrence, or maybe it has to go brute-force war-dialling. Maybe it'd tie in with your address book and hunt down phone numbers to test.
Optimising a network like this would be a bugger, but it's feasible. Speed limiting would be a necessity, but likewise you'd need to have overrides in case something critical needed to get through. But deciding what's critical would ultimately come down to convincing the *person* to make it temporarily exempt. So it would need a text-chat based carrier to allow the metering of throughput. Maybe some sort of voting arrangement attached.
If one person just want to check comics, and another has footage of police running down protesters, I suspect other members would be okay putting the funny pages on pause to devote most of the current traffic to youtube uploads.
BTW, you mention local wifi jamming. How local is that though? If it's under 50yards, unless you're in a crowd you'd be better off talking face to face. But again as part of a wider network solution, it could be used to aggregate multiple low bandwidth connections into one larger virtual connection.
Also, found mention of a project from 1999; AuDSL. Using a software modem and regular soundcard output. Low baud, but if it could be updated to modern APIs then it would remove the need to scrounge working legacy hardware & drivers to get dial-up connections. Only an audio transformer and a resistor required.
Here it is in google docs - if you want to edit it, just let me know.
https://docs.google.com/document/d/1IbJUxaVCemMNk4IKeQgbgufGl1yRcOYUlU48yFOoC8Y/edit?hl=en&authkey=CLzfnUo
It's based on participative economy theory (parecon), ushahidi, and a 1970s cybernetic system used to run the Chilean republic from 1971-2 (cybersyn).
Technologies would include:
Ability to bring in lots of management systems via links (gnu free call, tor etc)
node.js
openlayers
And I only got this far because in a related project I'm doing simpler versions of this stuff for Eivissa city council.
Ale
Making it like a social network app that connects to existing networks like Facebook, twitter, etc. would already give it a wide user-base already out there. The app could always check on the health of this secondary network and display it in the status bar of the app keeping awareness up.
It would be great if this was cross platform with iOS support - we need as many users out there as possible.