Accounts

June142013

How Geeks Opened up the UK Government (Guardian) — excellent video introduction to how the UK is transforming its civil service to digital delivery. Most powerful moment for me was scrolling through various depts’ web sites and seeing consistent visual design.

Git Push to Deploy on Google App Engine — Enabling this feature will create a remote Git repository for your application’s source code. Pushing your application’s source code to this repository will simultaneously archive the latest the version of the code and deploy it to the App Engine platform.

March202013

At a recent board games night hosted by Greg Brown (@practicingruby), we played a game called “Pandemic” that made me rethink the meaning of games. I won’t bother you with a detailed description; it’s enough to say that there are four or five players who take turns, and the goal is to defeat outbreaks of disease.

What makes this game unique is that you’re not playing against the other players, you’re playing against the game itself. It’s almost impossible to win, particularly at higher levels of difficulty (which Greg encourages, even for newbies). But you quickly realize that you don’t have a chance of winning if you don’t cooperate with the other players. The game is all about cooperation and collaboration. The players don’t all have equal abilities; one can move other players’ pieces around on the board, another can create research centers, another can cure larger swaths of disease. On your turn, you could just move and do whatever you think is best; but once you get the hang of it, you spend a good bit of time before each move discussing with the other players what the best strategy is, whether there are other effective ways to accomplish the same goal, and so on. You’re always discussing whether it would be better to solve a problem yourself, or move someone else so they can solve the problem more effectively on their turn.

In some ways, it’s not all that different from a role-playing game, but there is never any advantage to stabbing another player in the back or striking out on your own. But at the same time, even though it’s radically collaborative, it’s challenging. As I said, it’s almost impossible to win, and the game is structured to become more difficult the longer it goes on.

It’s a great example of rethinking gaming and rethinking competition, all in a little game that comes in a box and is played with pawns on a board.

August132012

Who has the gumption to jump into the crowded market for collaboration tools and call for a comprehensive open source implementation? Perhaps just Miles Fidelman, a networking expert whose experience spans time with Bolt, Beranek and Newman, work on military command and control systems, a community networking non-profit called the Center for Civic Networking, and building a small hosting company.

Miles, whom I’ve known for years and consider a mentor in the field of networking, recently started a Kickstarter project called Smart Notebooks. Besides promising a free software implementation based on popular standards, he believes his vision for a collaboration environment will work the way people naturally work together — not how some vendor thinks they should work, as so many tools have done.

Miles’ concept of Smart Notebooks is shared documents that stay synchronized across the net. Each person has his or her own copy of a document, but they “talk to each other” using a peer-to-peer protocol. Edit your copy, and everyone else sees the change on their copy. Unlike email attachments, there’s no need to search for the most recent copy of document. Unlike a Google Doc, everyone has their own copy, allowing for private notes and working offline. All of this will be done using standard web browsers, email, and RSS: no new software to install, no walled-garden services, and no accounts to configure on services running in the cloud.

The motivation for the system comes from observations Miles has made in venues as small as a church board of directors and as large as an Air Force operations center. When people come together, they bring copies of documents — agendas, minutes, presentation slides — and receive more documents. They exchange information, discuss issues, and make decisions, recording them as scribbles on their copies of the documents they carry away with them. Smart Notebooks will mimic this process across the Internet (and avoid a lot of manual copying in the process).

Miles draws models from several sources, including one of his favorite tools that died out: Hypercard (he sometimes refers to Smart Notebooks as “HyperCard, for groups, running in a browser”). He also looks to TiddlyWiki (a personal wiki implemented as a single local file, opened and edited in a browser) as a model for smart notebooks, coupled with a peer-to-peer, replicated messaging model inspired by USENET News’ NNTP protocol. The latest HTML5 standards and the new generation of web browsers make the project possible.

Miles’ goal is a system that can let people collaborate in peer-to-peer fashion with minimal reliance on a central system hosted by a company. Users will simply create a document in their browser (like editing a wiki page), then send copies via email. Everyone stores their own copy locally (as a file or in their browser’s HTML5 Web Storage). Changes will be pushed across the net, while notifications will show up as an RSS feed. Opening one’s local copy will automatically pull in changes.

Miles is particularly looking for a couple of larger sponsors — folks organizing an event, a conference, a crowdsourcing project, an issue campaign, a flash mob — who are looking for a better coordination tool and can serve as test cases.

March082012

Add Torrent Links to IMDB (Userscripts) -- a glimpse at what the Internet could look like: from the site you research movies on, with one click you could then launch the download. If only the company that ran the movie research site had rights to the OneClick patent and the ability to offer movies for download. Oh wait, those aren't the barriers. If only the movie companies would cease being nutjobs insisting on flogging their DRM-hobbled nags when the black market has x264 racehorses for less. They're not competing on price, they're not competing on convenience, they're competing on the expected value of litigation. Now *that's* a business model!

JeOS -- I hadn't heard this term before: Just Enough Operating System. Take a standard distro, and strip it down to the bare essentials that you actually need.

Font Awesome -- a font with a zillion pictograms and icons. "An iconic font designed for use with Twitter Bootstrip".

Collabograte -- a collection of integration recipes for collaboration tools so you aren't broken on the "how do I get this thing set up with LDAP auth?" wheel which others have reinvented with their nose to the mixed metaphor grindstone. (via Karik Subbarao)

November022011

Thoughts on Web Application Deployment (OmniTI) -- if your web site is your business, this stuff is critical and it's under-taught. Everyone learns it on the job, and there's not a lot of standardization between gigs.

Github Enterprise -- GitHub Enterprise is delivered in the industry-standard OVF format, which means you'll be able to run it on virtualization layers like VMware, VirtualBox, and Oracle VM. An increasingly common way to sell web apps, but it'll trigger GPL-style distribution terms in software licenses.

SparkleShare -- open source sharing tool that markets itself as "like Dropbox". Uses git as a backend, so you can share via github.

Whatever Happened to Programming? -- When I was fourteen, I wrote space-invader games in BASIC on a VIC-20. If you were interested in computers back in 1982, I bet you did the same. When I was 18, I wrote multi-user dungeons in C on serial terminals attached to a Sun 3. [...] Today, I mostly paste libraries together. So do you, most likely, if you work in software. Doesn’t that seem anticlimactic? Any time you are in the "someone else's code is almost right, make the changes to improve it" situation, you're doing unsatisfying programming. It's factory assembly of software, not craftsmanship. Welcome to the future: you have been replaced by a machine, and the machine is you.

Overlapping Experiment Infrastructure (PDF) -- they can't run just one test at a time, so they have infrastructure to comprehensively test all features against all features and in real time pull out statistical conclusions from the resulting data. (via Greg Linden)

Google Web Security Tutorials -- the classes given to new recruits, including Jarlsberg, a bug-ridden very vulnerable demo app for would-be security gurus to fix. I like the idea of releasing antitheses, bad code that can be just as instructive as good code.