Skip navigation

New blog location!

In 1994 President Clinton passed and signed the Communications Assistance to Law Enforcement Act, requiring telecommunications companies (carriers and providers only) to have the ability to intercept commumications and allow access to this data at the request of the government – in other words, provide mechanisms for government wiretapping.

Since then, technologies have advanced and the structure of the internet has progressed. Many services provide encrypted peer to peer chat, which is inherently resistive to wiretapping.

The Obama administration is drafting a bill requiring that all communications services be capable of complying with wiretap orders. Setting aside privacy implications (especially in the context of the Bush administration’s warrantless wiretapping), the added burden on communications services will slow innovation and herald an era of unnecessary beaurocratic regulation on what is our generation’s frontier.

Python’s imp module is a bit of a bear, but thanks to the groundwork in this thread, I got it straitened out. Here’s some lightly tested sample code.


import imp
# the path variable is optional, but possibly necessary
tmp = imp.find_module("module", ["relative/path", "/absolute/path"])
try:
# the names of the two constants do not seem to matter
  module = imp.load_module("name", tmp[0], "path", tmp[2])
finally:
  tmp[0].close()
module.thing

This is how I created a tarball that, when extracted, gives a fully functioning install of python 2.6 w/ mysql – while leaving all of the original binaries in place.  The destination of the tarball must be decided at compile time. You may need to recreate the tarball if any of the software packages this is based on (the *-devel packages found below) are upgraded.

The creation process will modify the build server, though the resulting tarball will be completely clean (can be untarred into any similar server with identical software versions and file locations without modification).   You may want to wipe your environment after successfully testing deployment.
Read More »

If emacs isn’t your thing, or you prefer a modern IDE (read: GUI) for development, I recommend IntelliJ IDEA.  An open-source, community edition was just released, and it is definitely worth giving a spin – I’ve been a fan since I first tried it a couple of years ago.

Being at a university where the first language taught is Java, but transferring from an institution where C++ was dominant was a bit of a pain.  IntelliJ got me through my Java-based courses.  I tried and managed with Eclipse and NetBeans for the first semester – but we were given a significant initial framework.

Enough of my praise for IntelliJ.  Let’s get started!
Read More »

I’m in an Italian diction class (for singing), and as part of that I get to translate texts sometimes.

Having Spanish at my disposal is quite useful, as I can guess most things, and most things I’m not so sure about can readily be translated into Spanish.

As such, I’m not so sure that these will be useful to many, but they are useful to me.

So, first, an italian-spanish dictionary
next, the drae (Diccionario Real Academia Española)
and an old spanish-english dictionary for those words not found in the italian-spanish dictionary (deh and fida come to mind).

Yes, this is unusual for me. Yes, it is unusual. Yes, it is. Yes.
I was going from one place to another – to speed things up I swung (literally) through two restaurants, and while going through, the person I was with and I snatched some food from tables that hadn’t yet been bussed. In the second place we got in trouble, the owners came and confiscated our chicken, and offered us rice, taking the person I was with. Read More »

More than anything, this post succinctly describes how to get up and running with Clojure + Emacs. Virtually no thinking is required if you are working from a default install of Ubuntu, and not much more is required for any linux distro – you just need to know how to use your package manager.

Furthermore, if any of these steps would cause you trouble (deleting .emacs* comes to mind), you probably already know how to handle it.
Read More »

Emacs starter kit:
improves advanced configuration of emacs

OpenDNS:
basic web filtering

Gizmo:
make and receive online calls

Google Voice:
very nifty phone enhancements

(the above two can be combined to give free skype-in/out type service)

WARNING: This blog post was posted at approximately 3 AM. As a result, it is not very well defined. Had I been thinking, I would have been more to the point. As it is, I may repost more info about the Seagate HD when it is successfully RMAd.

One of my hard drives is making sounds that indicate that it could fail at any time; In order to prevent any losses, I ordered a new drive. I spent a while copying all of my data from one drive to the next (I generally have 2 drives in my computer at a given time; the drive closer to failure contains data that is broadly available online, so losses should be minimal if anything happens, while my personal data is semiannually burned to disc and regularly synced to my brother’s computer). At any rate, I finished the migration, and started updating my install on the new drive.

The next morning I got up and found that my computer was making a horribly disturbing sound. The update process had blocked on a prompt for my acceptance of a license agreement. Read More »

Follow

Get every new post delivered to your Inbox.