Skip navigation

Category Archives: Computers

New blog location!

Advertisements

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 »

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 »

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 »

I’ve been using fluxbox for a year or two, but I’ve decided to give another WM a shot for a while.  However, just because I am trying something out doesn’t mean that I want to change my usual bindings.

I’ve been using gnome for a day or so now.  Instead of rebinding all of my application startup keys, I’ve mostly been using ALT+F2 to launch whatever I want, which is pretty effective.

Anyway, to get to the point, Gnome’s default resizing operation is ALT+Middle click as opposed to ALT+Right click (ALT+Left click is move, which is pretty standard).  Read More »

Not many people know that I run Gentoo (a source-based linux distribution) at home. Largely this is because most people don’t care. But for those who may care, I’ve decided to explain how Gentoo is better, at least for me.

Gentoo is known for taking a lot of time to set up – which is well deserved. Gentoo typically takes 1-3 days to complete a full install, and requires more work in maintenance than most other distros.

However, as I developer, I find that it is quite nice.
Read More »

Interestingly enough, I recently upgraded to xorg-server 1.5 from 1.3. I removed my xorg file, and it works passably. It’s choice of graphics drivers is a little annoying – I’ve been using radeonhd and getting 3-5000 frames in glxgears. Now I’m getting about 1000, and it pegs my cpu.

However, all functionality on my mouse is auto detected – horizontal and vertical scrolling, backwards and forwards buttons. This means that my previous posts on scrolling are now obsolete – but that is life.
Read More »