nomnomnom — regularly eat your cookies from Chromium

Cookies on websites both suck and are incredibly useful. They are useful because it’s convenient to not have to re-enter usernames and other stateful pieces of data. They suck because cookies are used to track you and they remember things that the website considers useful but you may not.

By the way, if you don’t have the EFF’s Privacy Badger extension installed, go install it. Privacy badger does care.

Let’s say you like to read the NYTimes but you may find that the 10 article limit per month to be a bit restrictive. After all, you go to your local library and read the gray lady there but sometimes well, you also re-read them online. But instead of reading the article you receive a bunch of indistinguishable-from-malware popups about reading more than 10 articles per month. How to get rid of them?

Well, you can just go clear your cookies in Chrome/Chromium. But chrome stores cookies in a SQLite database so you could make a script to go into the database, and remove offending entries. If you were to go and do that, say on Linux, you might end up with a SQL file like this:

delete from cookies where host_key LIKE '%nytimes%';

If that file was called nomnomnom.sql, you could have a script called nomnomnom.sql that did

sqlite3 $CHROME_COOKIES < ~/bin/nomnomnom.sql

Then you could add this to your crontab to say, get rid of the nytimes cookies everyday. As an example.

BeagleBone Black I2C References

I’m planning on heavily using I2C for my CryptoCape. I’m still working through issues, but I wanted to capture some of my research in this post. As I’m currently experimenting, please treat this information as notes and not as definitive information. Feel free to post corrections in the comments and I’ll update the content.

The BeagleBone Black (BBB) has three I2C buses (thanks to Smith Winston providing most of this information at his discussion post):

Back in (BeagleBone) Black

After a short hiatus, I’ve dusted off my BeagleBone Black (BBB) and started tinkering again.  This time I replaced Angstrom with Ubuntu 13.04.  Angstrom is a good distribution for the truly embedded projects, i.e. ones that require a small footprint and low-level IO, but for more application-level play, I think Ubuntu is a bit more user friendly.

Continue reading “Back in (BeagleBone) Black”

Cross-compiling applications for the Beaglebone

Yesterday I blogged about building Emacs on the Beaglebone. While this is great Sunday night fun, it’s not the most efficient way to compile applications for this device. The original Beaglebone has a 720 MHz processor and 256MB of RAM. My desktop has a 2.8GHz processer and 12GB of RAM. The turtle does not beat the hare in this race. It would be nice if I can compile an application on my desktop and send the compiled binary to the Beaglebone to run. Well, welcome to cross-compiling! Continue reading “Cross-compiling applications for the Beaglebone”

BeagleBone usb console driver Mac OS X

I’m now the proud owner of a BeagleBone (purchased from Adafruit)!  There will be more details in the coming posts, but first I want to make sure I let people know about this issue.

BeagleBone rev A6

If you have a 64 bit Mac and you want to connect over /dev/tty.usb to the BB, you need to install the 64 bit FTDI driver: here.  As of this post, it was version 2.218 for Mac OS X, 64 bit.  Then you should be able to access the serial console as discussed in the README.

Unfortunately, I just got this as the new BeagleBone Black was announced yesterday.  If I mysteriously fry this BB I guess I won’t be too upset when I have to get the BB Black… Continue reading “BeagleBone usb console driver Mac OS X”

Hello world from ChrUbuntu!

After following these instructions, my Chromebook is now running ChrUbuntu!  The install is fairly painless and the instructions worked for me without any modifications.  It took about 15 minutes for my Chromebook to switch into “developer mode,” but after running the script and a few reboots later, I can dual-boot into Linux!

Emacs on chrubuntu with some disk usage stats in the corner.
Emacs on ChrUbuntu with some disk usage stats in the corner.

Thanks to the great work over at that blog and to this motivated reader for posting some awesome links to some Linux on the Chromebook material!  At the moment, I just have the vanilla ChrUbuntu sources but per the comments there seems to be active community members trying to fix various issues.  Most notable is that the touchpad is less responsive than in ChromeOS… [Update 21JAN13: I’ve post a script to fix this issue here]

While I don’t support Canonical decision to leave in its surveillance search feature, ChrUbuntu seemed the easiest Linux distro to get up and running right now.  Plus, ChrUbuntu is based from Ubuntu 12.04 and I don’t think Canonical’s search appeared until 12.10.  Thankfully, thanks to the diligent work from the EFF (this is a great organization, I just re-upped my membership), they have a post on how to remove this “feature.”

My first apt-get was for Emacs of course, in which I’m happily typing away.  The Chromebook’s “search” key acts like a “super” key (Windows key) in ChrUbuntu so I found this post which shows how to switch it.  Once you get used to the ctrl key located to the left of the “a” key, it’s very hard to switch back…  I tried to get emacs24 but there were some issues.  For some reason, I couldn’t add the ppa for emacs24 to apt-get and when I tried to build by source there were a lot of missing depends on x-windows and various ncurses libraries.  So, I decided not to push it too far right now and be content with emacs 23 (which installed with apt-get just fine).

If you plan on using the Chromebook as a pure consumption device or if you never heard of Linux(?!) than ChromeOS may be fine for you.  But actually, if that’s the case, a tablet may be better because you probably don’t need a keyboard.  Otherwise, if you want to do *anything* else, try ChrUbuntu.  Firefox is the default browser, but it may be possible to install Chromium if you really want.  And if you have never tried Linux, the Chromebook is a well priced laptop, with which you can experiment.  Just be sure to understand what’s working and not before you make the plunge.

I dropped-sideways from Coursera

My future potential will be forever blemished by my lack of completion in Coursera’s Fantasy and Science Fiction class.  So, it’s a good thing it’s not on any permanent records 😉 The class was well-organized and by-far one of the best English-literature classes I’ve taken.  The professor’s video lectures alone are worth signing up just to see.  In fact, his lecture on interpretation is a great explanation of why readers have different views of a book and why some are wrong.

Honestly, the timing of this class was not very convenient.  It came smack in the middle of my Database final, leaving the military (for good this time), and moving back home.  But, I still found time to go to the Philadelphia’s Linux User Group (PLUG) and hear some anecdotes by Eric Raymond.

The PLUG Penguin by Stephanie Fox.

There was about 20 Penguin-heads in attendance and after an hour of lively discussion from Virtual Machine hosting to the Carrington event, ESR took the podium.  He told of several anecdotes, some which I intend to post about in the near future, but the one that fits well with my Coursera experience was his tale of Culture Hacking.

On his blog, ESR advocates the creation of a “ground truth” document by software engineers, who find themselves working on hardware, or a system, with less than adequate documentation.  Simply put, it is the process of document assumptions about how the system works prior to writing any code.  Some enlightened commenters expressed thanks to ESR for naming a practice for which they’ve routinely performed. Culture. Hacked. This practice now has a name to which others can refer and spread.  While it may not be the catchiest name, the fact that the idea is now named gives it weight.  In fact, this is one of the few things that stuck with me from Gravity’s Rainbow (that and I want a banana greenhouse on my rooftop):

“Names by themselves may be empty, but the act of naming…”

So, in the spirit of a new J.J. Abrams show, I officially bestow this name: Drop Sideways: The act of no longer attending a MOOC.  I would call it pulling a “datko” but something tells me that thousands of others are doing the same thing.  Besides, at my last job, I’ve heard some shout “datko!” when there was just enough coffee in the pot, for a half cup :p