Skip navigation

Category Archives: Software

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.

Advertisements

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 »

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 »

Cross platform software can be difficult to debug.  Having a set of virtual machines on hand that can be used for testing can be quite handy.  Here are a few resources I’ve found for pre-made disk images.

VMWare Player images (seems to have much less variety):

ThoughtPolice

Gentoo (didn’t find a VirtualBox image)

VirtualBox images (large variety):

VirtualBoxImages (mainly torrents, large index)

VirtualBox Images (direct download, hosted on sourceforge)

HelpDeskLive (older)

I think that should cover most open-source OSs.

As far as windows goes, one option is to roll your own and save it in its initial state.  If you have access to the MSDN, most OS releases are quite readily available.

My standpoint on Linux vs. Mac vs. Windows: strengths of various operating systems, with Linux being the standard of comparison.

A quote from Facebook:

“I highly recommend MAC – they are fabulous, and things of beauty. And personally, I would stay away from Linux – not the most enjoyable OS to work with. Then again, with all the updating of packages and stuff – that might really appeal to you:)”

Off the top of my head; posted in response

Read More »