Search Results: "benjamin"

21 November 2006

Benjamin Mako Hill: Writing and Writing Code

Over the years, I've published some of the articles I am most proud of on Advogato. As you can imagine, I was sad to see demise of Advogato announced early September and thrilled to see that by the end of the month, Steve Rainwater had stepped up to save the site. For a belated welcome of Advogato back from the edge of the grave, I've published a short essay about the effectiveness of an analogy of software and writing on the site. In it, I introduce the analogy and argue that it is useful in advocating free software and programming education and in justifying the disproportionately large amount of programming related projects in the free software world. Here's the intro:
Advocates of free and open source software, myself included, like to talk about the "democratizing" effect of free software. Others, especially non-programmers, are quick to point out that the only technical people can take advantage of half of the enumerated freedoms in FOSS. The freedoms to modify and collaborate mean little if you don't know to program. Over time, I have come to the conclusion that the only good solution to this problem -- and one that I was initially quite opposed to -- is to teach everyone to program. In considering this position, the processes of reading and writing provide a useful analogy when considering the processes of using and creating computer software. Additionally, the analogy provides an powerful justification for the fact that FOSS programmers produce a disproportionately large amount of software that is primarily of interest to FOSS programmers.
Please check it out on Advogato and feel free to leave a comment on my blog if you don't have an Advogato account.

Benjamin Seidenberg: How to set up an encrypted filesystem in several easy steps

Introduction: This guide will walk you through the creation of an encrypted filesystem using LUKS. LUKS is the Linux Unified Key Setup and is a standard format for linux hard disk encryption. It has a lot of interesting features such as using a key on a removable disk, keeping multiple keys, and more. This is the technology used by the Debian Installer (since etch beta3) and is quickly becoming a standard in the linux world. Who this guide is for: This guide is for anyone who wants to secure their data using an encrypted partition. While it is tailored to users of Debian, it should apply elsewhere in the linux world. This guide is intended to add an encrypted device to an existing install, if you are contemplating a fresh install, the Debian Installer will configure encrypted filesystems for you. Ready? Then let’s begin Prepare the partition (or other block device) to be used This can be a partition on disk, a logical volume in LVM or some other block device. For this example, I created a 40 GB volume in LVM. Install cryptsetup This utility provides an interface into the code in the linux kernel that handles encrypted block devices. It’s packaged for Debian in both testing and unstable, stable has an older version and I don’t know whether or not it will work in the same manner.
apt-get install cryptsetup Set up encryption on the partition: This initializes the partition for encryption and sets the initial key. People not using LVM will want a path like /dev/hdxY where hdxY is the partition on their hard drive that will be used for encryption. Important! This command will wipe out anything on that partition
cryptsetup luksFormat /dev/mapper/asimov--vol-crypto_test
WARNING!
========
This will overwrite data on /dev/mapper/asimov–vol-crypto_test irrevocably. Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase:
Verify passphrase:
Command successful.
Congratulation! You now have an encrypted block device! However, it’s not quite ready to use. Open and map the device: This opens the device (prompting for a passphrase) and maps it to a block device in /dev/mapper. This can be used like any other block device, and the encryption/decryption is transparent. The first path (/dev/mapper/asimov–vol-crypto_test) is the encrypted partition you set up earlier. The name (crypto_test) is the name of the volume, the block device will be mapped as /dev/mapper/<name>.
cryptsetup luksOpen /dev/mapper/asimov--vol-crypto_test crypto_test
Enter LUKS passphrase:
key slot 0 unlocked.
Command successful.
Create the filesystem of your choice on the device: This is just like setting up any other block device. I use ext3, others may prefer different formats.
mkfs.ext3 /dev/mapper/crypto-test Add the definition to /etc/crypttab: /etc/crypttab is a list of encrypted devices that are mapped on boot. The format is <map name> <path to device> <key file> <options> Since we’re using a passphrase, we don’t have a key file.
crypto_test /dev/mapper/asimov--vol-crypto_test none luks Create a mount point: This is where the encrypted device will be mounted on your filesystem.
mkdir /mnt/crypto_test Add the device to /etc/fstab: /etc/fstab tells the computer where to mount different devices on the filesystem. The format is
<source path> <mount path> <type of filesystem> <options> <mount options options> <dump frequency> <fsck pass> More information can be found by reading man 5 fstab. You will want to add a line like this: /dev/mapper/crypto_test /mnt/crypto_test ext3 defaults 0 2 somewhere in this file. Update the initial ramdisk. The initial ramdisk is used to jumpstart the boot process and load modules for the kernel that it can’t load itself (such as drivers for block devices that contain the modules it uses). I’m not sure if this is needed or not, but I wanted to be on the safe side.
update-initramfs -u -k all Congratulations Now your encrypted filesystem is completely set up! Reboot the system and you will see it prompt you for your passphrase during the boot cycle. Once the password has entered, the encryption is completely transparent. If you want to use your encrypted filesystem before rebooting, simply type mount /path/to/mountpoint.

20 November 2006

Benjamin Mako Hill: Hard Work

Our ice cream was out of the freezer a bit too long and got soft. When I went to extract it from its container, the ease with which I could scoop it led me to spoon out two or three times what I might normally have served myself. It's interesting to consider that perhaps my thinness is due at least in part to my laziness and frugality in obtaining food.

19 November 2006

MJ Ray: ePassport 0-day crack

And now, just when you thought the ID State couldn't get any dafter, it turns out the ePassport chips are an identity thief's friend. The UK is adopting ePassports when even the United States of Paranoia concluded its Radio-Frequency ID (RFID) technology:
"increases risks to personal privacy and security, with no commensurate benefit for performance or national security."
More from NO2ID:
"With a standard RFID reader bought over the internet for just 95.73, the campaign was able to prove that the same "contactless" microchips that are also to be incorporated into ID cards will "dramatically decrease [citizens'] security and privacy, and increase risk of identity theft" [FIDIS Press Release] ."
Time to get a RFID-proof wallet, like Benjamin Mako Hill and Andreas Metzler Mick commented:
"The more I hear about the UK in recent years the less I want to vist:
  • Fingerprints for beer.
  • Fingerprints to hire a car.
  • Biometric data on passports that are easily compromised.
  • Video Cameras on every corner.
  • Mandatory IDs in a few years.
  • British children claimed to be worst-behaved in Europe."
"The UK is starting to sound like The Clockwork Orange." "And then the plonkers claim "if you've nothing to hide what's the problem"?"

18 November 2006

Benjamin Mako Hill: Once Again...

Overheard on my flight back from San Francisco last week... over the PA system:
Once again, we are keeping our PAs to an absolute minimum on this flight.
Perhaps not an absolute minimum.

Benjamin Mako Hill: Small Subgroup of a Small Subgroup

With the new Charlie Card coming out, it seemed like it was about time to obtain an RFID blocking wallet. I liked the idea of buying a nice off-the-shelf wallet but the only pre-made RFID-proof wallet I've found is made of leather. I'd like to buy a vegan wallet. Here is the Venn diagram describing my problem:
/copyrighteous/images/vegan-wallets.png
If you know a wallet for those of us in the purple zone, leave a comment or let me know. Otherwise, I suppose I'm going to have to make my own.

16 November 2006

Benjamin Mako Hill: Dare to DReaM?

I went to a talk today by Sun scientist Susan Landau on Sun's DReaM/Open Media Commons DRM system that I've mentioned in the past. Landau used a variant of these slides to do a rough overview of the Sun system and the problems that it is trying to solve. Halfway through her talk, Landau showed a slide titled, "Users Matter: Creative Commons." Elaborating, Landau mentioned that she had been talking to a number of people -- both at CC and outside -- about the possibility of using DReaM to enforce the terms of CC licenses. I interrupted Landau to point out that CC licenses had an anti-DRM clause that, as far I knew, would make her system unusable on CC content. The CC anti-DRM clause, plus the resistance of the CC and iCommons community to accept parallel distribution language, are why it's impossible to play CC-licensed works on an unmodified PlayStation or XBox (these systems only play signed disks) -- even if you include an unencumbered copy alongside! Landau reassured me that I must be mistaken and that she had talked about DReaM in depth with CC leadership, lawyers, and technical advisory board members and she was sure her system was at least possible. Puzzled, I shut up. For most of the rest of her talk, Landau talked about fair use and how a DRM system might go about respecting it. In his qualified endorsement of the DRM system, Lessig mentioned that DReaM, "would be implemented to allow individuals to assert 'fair use,' and unlock DRM'd content, with a tag to trace misuse." At the time, I had a hard time imagining how fair use could be built into such a system -- separating fair from unfair use is remarkably resistant to technical solutions. Even bright light cases like verbatim copies every page of the Encyclopedia Britannica might be fair use if I were to make them into a paper m ch bust of Johann Gutenburg or use them to wallpaper a gallery wall. Landau's acknowledged the trickiness around fair use and suggested a compromise:
By default, works might be encumbered in the ways and to the degrees that the copyright holder wish. However, users could petition for an unencumbered "fair use copy" by identifying themselves and then checking some boxes and explaining (briefly) why they think their use for the work qualifies as fair. Once they've done this, the system would present the user with an unencumbered, watermarked, and fully traceable piece of media.
Conceivably, requests would be subject to some sort of review (at the very least to prevent automated requests) and non-fair uses of watermarked goods would be strictly tracked. If a "fair use" copy is found in the wild, the watermark would be traced and the originator would be held liable. Of course, anonymous fair use becomes impossible but, as Simson Garfinkel pointed out at Landau's talk, users may have a right to anonymous speech and to fair use but not to anonymous fair use. "Fair" enough. It is perhaps important to point out that DReaM does not currently implement this "fair use" system and that, one can only assume, the vast majority of DReaM users (e.g., Hollywood movie studios and their ilk) would have no little interest in giving their users a blanket ability to make "fair use copies" and would in most cases choose not to enable such an option. But let's return to the issue of DRM enforcement of CC license terms. While I was initially quite confused by the idea of DRM enforcement of CC license terms, it made much more sense when I looked at the CC anti-DRM clause itself:
You may not distribute, publicly display, publicly perform, or publicly digitally perform the Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement.
The emphasis (mine) points to the crux of the issue. The CC anti-DRM clause only blocks technological measures that overstep the boundaries set in the rest of the licensee. For the free licenses, that's a wide boundary that leaves little room for DRM. But as I've pointed out before, CC is a lot more than just free licenses. Landau mentioned that her group was primarily interested in using the DReaM system to enforce attribution and non-derivative work clauses in CC licenses -- a wise choice as non-commercial use is hard enough for humans to discern. As a result, the DReaM system might be used to make it impossible to remove attribution from CC works or might block modification to works marked as "ND." The catch that led me to believe that CC license blocked all DRM was the fact that I didn't think it would be possible for a DRM system to respect fair use. After all, each CC license includes an explicit affirmation that, "nothing in this license is intended to reduce, limit, or restrict any rights arising from fair use." The question that the possibility of a CC DRM scheme like DReaM hangs on is: to what degree does Landau's suggestion live up to the fair use legal bargain? Landau pointed out that a number of lawyers including Pam Samuelson and CC's technical advisory board and legal staff have been generally positive about her fair use permission-asking compromise. Honestly and on CC's own terms, it's hard to see why they wouldn't be. The loss of anonymous fair use was only ever a right we enjoyed by a fortunate accident. Watermarks are only there to "keep honest people honest." If you are not doing anything wrong, what do you have to hide? But DReaM enforcement of CC licenses is a bad thing and the bad taste that it inevitably leaves in many commoners mouths is not hard to explain:
  • Many commoners are not comfortable with the idea of DRM because it shifts power over users' computing devices away from the users and makes computers obey the will of a copyright holder. That's true of DReaM just as much as as it is of Apple iTunes or Microsoft DRM.
  • Many commoners are not completely comfortable with all CC licenses, so the idea of technical protection measures enforcing these terms, even those allowing for fair use lines and in line with the will of the author, is seen as dangerous.
To solve the first issue, CC needs a more strongly worded anti-DRM clause -- ideally one tied to a parallel distribution clause. To solve the second, we will ultimately need a new banner under which only truly free cultural works will reside. Susan Landau doesn't have it easy but she does seem to have the genuine best interest of consumers and users at heart. That's more than I can say about the vast majority of people in the DRM business. She's trying to walk a fine line and she's almost certainly being abused and heckled by folks in the industry who call her "communist" and by folks like me who feel that she's sacrificing essential principles in an attempt to compromise. The one thing we all agree on is that the ground she's treading is mine field. Yet while I sympathize with her, I must speak out against both her and DReaM. A DRM compromise at this stage would be insanity. This is a fight we have to win.

Benjamin Mako Hill: Ignorance is Bliss

A banker at my hippy bank had never heard of Google. I had to spell the name out and explain it to her! I've never imagined one could feel so happy about their choice of financial institution.

9 November 2006

Benjamin Mako Hill: Value

Mountain View is quite far from San Francisco International Airport so my shuttle to to UDS-MTV was expensive, but worth it. In any case, I'll be reimbursed for the ride by Mark Shuttleworth.

8 November 2006

Benjamin Mako Hill: iRony RockBox Installer

In my blog post yesterday I described iRony, an install party I helped organize for iPods. In the post, I pointed folks to some resources for holding similar parties. To help with mass installs at our party, I wrote a simple installer for RockBox in Python that would run on GNU/Linux. With a few modifications, the script could be relatively easily converted to also run on Mac OS X. While an unofficial installer exists for Windows, my installer, simply called the iRony RockBox Installer, seems to be the first installer for GNU/Linux. Of course, the installer is still largely rough and untested and is definitely unsupported by the RockBox team. If you get around to trying it, please send me feedback, advice, or and patches. You can grab it (and future version) here: http://mako.cc/projects/irony/

Benjamin Mako Hill: iPod Liberation!

About a month ago, I announced an iPod liberation party (i.e., an install-fest for free/open source software onto iPods). The summary, now several weeks after the fact, was that the party was a total success. More than fifty people attended and several dozens iPods were liberated. Pictures and information on the event are now online. Over the past few weeks, I've been polishing a RockBox installer that I wrote for the event, writing up an article published on NewsForge today, and documenting the process for those that want to hold their own similar events. If you are unconvinced on the subject of iPod liberation, read the NewsForge article written with others from my research group and Harvard Free Culture. Most of the rest of the information on our party and information on throwing your own party exists in sub-pages from the iPod Liberation page in the Free Culture wiki. I'm looking forward to seeing a whole string of similar parties run by LUGs and other interested groups. It's a great way to get out a message about software freedom, DRM and about freedom on devices other than computers.

7 November 2006

Benjamin Mako Hill: By the power of...

I was very happy to hear that the Masters of the Universe (MOTU) loved my suggestion and named their nascent governing board Council Grayskull.

4 November 2006

Benjamin Mako Hill: GECS Lives

I wasn't the only one to notice the striking similarly between the abnormal cow born recently in China and the unofficial mascot of one of my favorite free software projects. Thanks for the link Mika! See for yourself:
/copyrighteous/images/geglgecl.jpg
True, it's neither a goat nor particularly large, but it seems we can't far away. A very auspicious sign for free software!

3 November 2006

Benjamin Mako Hill: Noodles & News

/copyrighteous/images/someny_noodles-small.jpg

Someny noodles, so little time.

If you live in the bay area and you are still willing to talk to me after that pun, please get in contact with me. While it's been a while since I've been in San Francisco, I've got a flight out Saturday for the Ubuntu Developer Summit in Mountain View. I will have some time especially next weekend to hang out.

Benjamin Mako Hill: Akismet Plugin for PyBlosxom

I apologize for boring the vast majority of my readers who do not use PyBlosxom but I'm trying to at least mention each "released" projects here once for the sake of completeness even if it's only interesting to a small number of them. I posted a note a few months ago mentioning a stronger CAPTCHA I had created to deal with blog spam. A few friends pointed out that they were having excellent luck with Akismet which filters using a model similar to some of those old collaborative spam filters. Building off earlier work, I build an Akismet plugin for PyBlosxom. I've gone through a couple of iterations on the PyBlosxom lists and the results have been great. If you use don't use PyBlosxom, there are plugins for Wordpress (where the system originated) and I imagine for other blogging systems as well. Its an effective and attractive alternative to a CAPTCHA. You can grab my plugin on my PyBlosxom hacks page

1 November 2006

Benjamin Mako Hill: Revelation

Once, a friend of mine was cleaning a small tube and asked me to pass him a pipe cleaner. Immediately and simultaneously, I both realized that I had never questioned the name of my favorite craft supply and understood the answer to the question completely. Moments like this are like tiny tastes of enlightenment.

30 October 2006

Benjamin Mako Hill: Software Freedom Curriculum

About a year ago, I was working on OLPC during most of the time and thinking a lot about software freedom in the context of the project. My blog post on OLPC and Charges of Technological and Cultural Imperialism from last December is a great example of my thinking out loud about some of the issues. The attractive thing to me about OLPC was the idea of students getting a real, free software, free hardware, truly open platform unlike phones, calculators, and eBooks: closed paternalist platforms that seem to be the only real alternatives. This is a goal that OLPC has not achieved yet but has already come quite close to. People say that because modifying technology is often difficult, only a small percentage of users -- especially young users -- will take advantage of the malleability or "hackability" of a product. They are probably right. But part of why this happens is because when computers are employed in education, we use them as tools to accomplish predefined and preprogrammed tasks. Even when students learn to program, it's in a window (quite literally in a box) separate from the rest of the things that the computer does. And for someone working on a project in part so that they can spread technological freedom, this is a problem. Consider the fact that with only a small number of exceptions, the only advocates of software freedom I know are programmers or hackers. I don't think that this is because of some "programmer's sensibility" but rather because programmers understand a set of things about the malleability of software and the nature, effect, and context of computation that gives them perspective to understand how a concept like freedom might apply to something like software. In other words, to understand software freedom, you must first understand -- really understand -- what software is and what it is not, how it makes things possible and impossible, and how changing it can have important effects. The mentality I've described is currently a "hacker's sensibility" but I don't believe that you need to be a hacker to understand why software freedom is important. Proof, I think, is the fact that people think that a free press is important even if they don't publish or write very well. As an exercise, I took it on myself to write the beginning of a curriculum that teachers could use to teach students about software freedom and the concepts that I think are key to understanding it. It tries to come up with models for framing discussions and a series of activities to help teachers teach relatively young (i.e., middle school students) about issues of computation, information goods, and ultimately about software freedom. I wrote the curriculum about a year ago, showed it to a few teachers and colleagues, and then sat on it because I wasn't sure what to do with it and because I was concerned by my own lack of experience teaching outside of Universities. I'm still not entirely sure about incredibly basic things like what form a curriculum should take for this age group. I noticed recently that Wikiversity launched in August and it seems like the perfect place to put my curriculum for consumption by the world and for collaboration, discussion, and further development. You can see what I've got from this page and the pages linked from it:
http://en.wikiversity.org/wiki/Software_Freedom
The project still needs lots of work. It needs to be threshed out on its own terms and it needs to be broken down and integrated into Wikiversity as a series of learning projects, learning activities, etc. I've looked at the documentation around Wikiversity and I can neither understand how to do this nor find examples of large curricula in Wikiversity to which this has already been done. If you have experience on Wikiversity, your help would be welcome. If you are interested in using part of the curriculum, I would love to hear from you and to see your edits on the wiki.

29 October 2006

Benjamin Mako Hill: Myopia

Maybe I'm just uncultured but when I first heard the name of the Myopia Hunt Club, my thoughts leaned more toward my vice president than a golf club. Apparently, I wasn't too far off etymologically.

27 October 2006

Benjamin Mako Hill: I MIT Libraries

There are many things at MIT that I find I want to distance myself from (e.g., much of the military related research). Recently though, the MIT Libraries have been giving me a number of reasons to be proud to be an MIT graduate student. MIT has taken the brave step of the being one of the first major research universities to throw a stone at the publishers in the whole Open Access, scholarly publishing debate. The libraries have put up a bunch of information on open access issues and have created a copyright amendment form for all scholarly publication that will allow the institute and its authors to retain copyright over their work for publication in the institute archives, on the author's website, or even in an open access repository like PubMed Central. More importantly, MIT Libraries are offering to do all of the negotiation with the publishers on behalf of the authors. When it is MIT as a whole, and not just the one graduate student, post-doc, or professor on their own, it puts the authors in a much stronger to retain the openness of their work. It's not victory, but it's an important and essential step toward open access for scholarly publishing. But that's not it! The libraries have also recently stood up to Hoover's Online's attempt to hold the libraries responsible for, "activity Hoovers deemed or even suspected was fraudulent." When Hoover's gave the libraries the choice of saying yes to a set of unreasonable terms or walking away from an important research tool, MIT Libraries made the difficult but correct choice and walked away. Making a choice like that will surely get the libraries a lot of flak from MIT scholars who use Hoover's. But MIT made the right decision by standing up for their principles. The effect of large, powerful institution like MIT is usually to maintain the status quo. There's clearly a lot of external pressure from funders, politicians, etc. and internal pressure from academics and students who are doing well by the current system. MIT Libraries are using their power to make the whole system better and I haven't ever been as proud to be an MIT student.

26 October 2006

Benjamin Mako Hill: MVS

About a 6 weeks ago, I uploaded a great piece of software into Debian. The package is libwww-mediawiki-client-perl but you can also get it by installing the package mvs. The software seems to be a couple years old -- but it's new to me and I'm been thrilled with it so I thought I would share. The package is a library but its usefulness to me centers around a cute little command-line wrapper to the library called mvs. mvs essentially provides a simple CVS-like interface to an instance of Mediawiki that facilitates offline editing of Mediawiki pages and much more. Here's a quick little walk-through that I wrote for the README.Debian file that might give someone a pretty good description of how the software works:
Step 1: make a directory to store pages from this Mediawiki instance:
mkdir en-wp
cd en-wp
Step 2: log in to the host with your username/password:
mvs login -d wikipedia.org -l en -u 'Benjamin Mako Hill' -p password
Step 3: download a page that you want to edit by adding ".wiki" to the end:
mvs update Granrojo.wiki
Step 4: edit the file to make changes:
vim Granrojo.wiki
Step 5: preview your changes:
mvs preview Granrojo.wiki
Step 6: commit your changes into the wiki:
mvs commit --minor yes -m 'made spelling fix' Granrojo.wiki
And that's all there is to it! It brings a whole series of things that were almost prohibitively difficult through the web interface into reach (e.g., diffing two different pages to see if they've diverged) and its changed the way that I interact with Wikipedia in some exciting ways. Thanks to Mark Jaroski for writing and maintaining the software!

Next.

Previous.