This is an interactive map that shows where people are using the F-word on Twitter.
I created this application to expand my development skills and to tinker with some public APIs.
<object data=http://www.fbomb.co width=”100%” height=”600px”> <embed src=http://www.fbomb.co width=”100%” height=”600px”> </embed> www.fbomb.co </object>
###Inspiration My inspiration for this application actually came from a discussion I had with two colleagues of mine while doing co-op at BlackBerry, Ryan Seys and Elliott Ro. We were talking about how people misuse and abuse the english language. As the conversation devolved swearing was brought up. In particular we talked about how swearing can completely undermine ones argument. Earlier that day we had been talking about the personal projects we were working and, somehow at this point we circled back to that topic. From there our conversation wound it’s way to how it’d be neat to map where people swear. Within a few minutes and iterations of ideas the concept for the app was born.
###Launch It took me a few months to get around to coding this application, I originally wrote using Ruby on Rails however ended up re-writing it using CoffeeScript on Node.JS. I wrote it over the weekend of October 19th - 20th and published it that Sunday.
###Reaction Overall this app has gotten a positive reaction, some people have different ideas of how it should have been implemented (other languages, customizable, etc.). However, I believe that many of those changes would detract from the actual intent of the app.
I am surprised by how wide spread the attention has been for for this website, however I agree that it is pretty entertaining and, in my humble opinion worth the 30-60 seconds it generally receives.
###Privacy In the world we live in today I understand how this app could be potentially frightening, particularly because of how it clearly demonstrates how simple it is to pinpoint individuals solely based on their message. These fears are justified, however my app does not attempt to exploit/invade anyone’s privacy.
The way I designed my site was such that it has no persistent data. On the server itself the tweets are cached for about a max of 10 seconds then erased. Re-tweets on the site’s Twitter feed will disappear if the original post is deleted. Lastly, client side data is only kept in the view, the objects passed back are periodically cleared as well.
###Technical Stuff ####This project is all open-sourced under the The MIT License and available here This site was originally written Ruby on Rails, see the code. However as I publishing it I started to have issues with the tweet stream gem I was using. Since I didn’t really need any of the benefits of using Rails for this project, I opted to re-write the server in a framework I’m more comfortable with.
I did my initial re-write using JS on Node.js. This didn’t take too long since I already had much of the logic figured out from my work with rails. Therefore, I decided to push myself and attempt to re-write it in CoffeeScript.
Please feel free to peruse my code and check out the site, if you have any suggestions I would love to hear it.
I have made this project as simple as possible to clone by open-sourcing the code and providing instructions. See it here: http://github.com/mgingras/fBomb
The actual site has drifted away from the original concept, and not all of these could, or should be in both sources (see change-log below). The current(ish) code is still all available here - And of course, if you haven’t seen it, check out the site
Changes since initial completion:
I added code to capture tweets tagged with a ‘Place’ that will hopefully cause more tweets to appear. Most of these tweets use a bounding box, their location is mapped at the center of that box.
Now using the coordinates tag instead of the geo tag as the primary mapping coordinate, since the geo tag is being deprecated.
I have added a Twitter account, @Fbomb_co, which will sporadically re-tweet “F-Bombs”.
Switched client/server communication to use WebSockets instead of GET(s) on an interval.
Cleaned up the UI and made pop-up more informative
Send me an email with any suggestions!!
|The Washington Post||LA Times|
|The Vancouver Sun||TopNews Arab Emirates|
|New York Post||Gigazine|
|NBC||NY Daily News|
|The Ottawa Citizen||The Charlatan|
|Kurir||Complex: City Guide|
|India Today||Wall Street Insanity|
|Muck Rack||Elite Daily|
|Think Defence||Google Maps Mania|
|The Times of India||The Scotsman|
|The Daily Dot||deadline|
|The Times Scotland||Bachelor|
|Twittermania||International Business Times|