My brother and I frequently discuss the fact that, though many Americans are passionate about a wide variety of issues affecting our country, few seem to actually take the time to do anything about it. And who can blame them? Many Americans are so overworked, underpaid, and in fear of how they’ll make their mortgage payment or health insurance premium next month that they may not have time to attend a political rally or contact their representative on a certain issue? Well, now there’s an app that makes it easier for the average Joe to take political action and promote change — all from his iPhone.
ONE Campaign is essentially a call-to-action app. It lists a number of political issues or advocacy movements and gives you instant access to proven projects that are working to combat the issues (like vaccines for children, for example). You can then enlist your Twitter or Facebook friends to help spread the word and join movements that are important to you. But the best thing about the app is that it gives you instant tools so you can actually take political action. With a few taps you can call your Congressman or sign a petition to support your cause. The app knows who your Congressional leaders are based on the zip code you enter. So many political action apps are solely news-focused. They tell us the bad things that are happening and leave us angry or distressed. The ONE app allows us to take productive action on an issue as easily as we download a song. ONE Campaign is a free download.
Please forgive the blatant link-baiting title. JavaScript is fine. The world’s most-used programming language has a secure future — especially now id Software’s Doom has been converted to run in a browser!
The game is available from Mozilla’s Demo Studio; a resource which showcases HTML5, CSS3, and JavaScript technologies in Firefox and other browsers.
note: Where’s it gone?
The minute this post appeared, Mozilla pulled the Doom demo. I’m not sure why and it may only be temporary — I suspect it was overloading their servers. A video of JavaScript Doom can be viewed on YouTube while we’re waiting for it to return.
I’m conscious that SitePoint attracts readers who are far younger than me. If you’ve never heard of Doom, it’s a first-person shooting game which was released for the PC in 1993. While it wasn’t the first FPS — id Software’s Wolfenstein 3D can claim that crown — Doom revolutionized the genre. It’s pioneering 3D graphics, multi-player gaming, and graphic chainsaw-wielding violence was the inspiration for many of today’s blockbuster titles.
By modern standards, Doom is showing its age. It has antiquated blocky VGA graphics, 2D maps (walkways cannot pass over another) and limited control (no jumping or vertical aiming). But the game play remains astounding and Doom has been converted for a range of consoles and handheld devices. Now it’s been ported to JavaScript and can be played in a browser without plug-ins.
Unfortunately, JavaScript Doom is agonizingly slow in Chrome and won’t run in IE. Some versions of Safari are reported to work, but that wasn’t my experience in version 5.0.5. However, it works well on Firefox 4 and Opera; a mid-range PC should achieve 20-30 frames per second — probably better than the old 486 I used to play Doom back in 1993! There are a few graphical glitches but it’s playable.
Amazingly, the game was compiled from C to JavaScript using Emscripten and Clang then optimized with Google’s Closure Compiler. Video output is rendered on a standard HTML5 canvas element. Sound is handled using Mozilla’s non-standard Audio Data API but the effects are so nasty you won’t want them! If you’re interested, the source can be downloaded although the JavaScript is minified and unreadable.
If You Think That’s Impressive…
Fabrice Bellard has developed an x86 PC emulator in JavaScript. For fun.
It runs in all the latest browsers so he installed the 2.6.20 Linux kernel and released browser-based emulator. Yes, it’s running Linux in a web page.
The demo is limited to terminal output rendered in an HTML table but the implications are astonishing. My only concern is that someone will add X11, install a browser and recursively implode the web!
Have you seen any other great examples of cutting-edge JavaScript?
Anything Bjork ever does is noteworthy, musically speaking, and now that she’s decided to release her next album Biophilia, as a multimedia project comprised of 10 iPad apps, she’s also become noteworthy in a technological sense.More »
Having recently been part of an effort to preserve videos on Google Video, in light of its announced shutdown, it’s made me more aware how brittle our current culture is, with many many artifacts available only in digital form. There are conservation efforts such as the aforementioned one, part of a larger group called Archive Team. Google changed its mind and promised to keep Google Video online and try to move as much as possible to YouTube where it has permission from the original uploader. This is, obviously, a win for the archivists, who kept the effort going just the same and are still in the process of uploading all of Google Video to archive.org.
Contrast this with Friendster, where the Archive Team project was unable to save everything before the end of May, when everything was set to be deleted. Much has been downloaded and it will still give a good picture of what this early social network was like. Similarly, the Archive Team was able to rescue much, but not all of GeoCities, before Yahoo shut that down last year, releasing its collection as a massive 1 TB bittorrent file.
Now you may ask yourself is Friendster (or even GeoCities) worth saving? Answering that question purely myself, I’d say no, but I have no connection with those sites. Looking at the question however from the perspective of people who have spent many hours building these profiles and interacting with each other, I can see there’s clearly value there to those who used them. Answering instead as someone with a deep interest in history, it’s not for us to say what will eventually prove worth saving. Instead, that’s something for the historians, archeologists, sociologists and other interested parties in the future to decide. But they can’t do that if the information isn’t even there.
How often have we not wished more of a particular point in our history had been preserved? Ironically many of the analog writings of our past are in a better state than some of our digital ones, even when it’s often pointed out how easy it is to make bit-perfect copies of something in this day and age.
All of this, leads me to ask the following questions:
Do you agree the digital aspects of our culture should be better preserved?
Should we have, maybe even one on each continent or in each country, a modern Library of Alexandria?
(identical copies in different places to prevent ‘a fire’ from destroying it)
What would such a world-wide archival effort look like, technologically?
What should we do about copyrights and patents (and DRM) that might get in the way of preserving our heritage?
How do we go about archiving software for a computer that’s available only in a museum, to preserve interactive access?
What about the proliferation of file formats? Do we transform everything into a canonical form where we can, or do we store the original along with software to interpret?
I think we owe it to ourselves that this generation doesn’t look like a black hole when viewed from the future, and by extension, I’d like to make it easier on future historians to learn about us than it has been for us to learn about previous societies (e.g. Sumerians).
I’ll start off by saying that though little personal correspondence has been preserved of earlier times, we should recognize the right to privacy and any such posited archive would be allowed to include private communications only if you explicitly opted in. Valuable though these are for historians, if we preserve as much as we can of the digital domain, enough can be inferred from context that this would be an unwarranted intrusion.
But what about the wider issue of preservation of public content that can be wiped out by shutting off a power switch?