Bitwise Evolution

Musings of a Portland-area hacker with a bent on improving digital lifestyles.

Category: tech

Cracking down on application clutter (or: my ${HOME} is my castle!)

There was once a time when your home directory was treated as a nearly sacred place, a safe haven where you had near complete control. This trust was only breached for very special reasons: user specific settings and background storage for applications could go in “dot-files”–the hidden files or directories that begin with a “.” [...]

Creating Wizards in Java

A recent project at work required building a multi-step dialog to manage the interface between a user and an expert system (and some fairly advanced NLP to boot). On the surface this looked like a fairly standard Wizard problem — design a bunch of screens with questions, and then collect the answers as the user [...]

Day to day Memoization

Memoization (not memorization) is the process of remembering the results of a computation for use later. (I think of it as “making a memo” to look back on later.) Memoization is the core to any dynamic programming implementation, and allows many simple algorithms to run in linear or polynomial time when they would otherwise take [...]

Creating a secure webauth system: Part 1 — HMAC

This is the first in an n-part series about web authentication for a system where user identification and attribution is important, but content protection is not. This entry assumes that a secure method has been used to negotiate a shared secret — as the result of username / password authentication over https, for example. Obviously [...]

Things I need

There are many small apps that I wish I had, here’s a short list of the ones that come to mind at the moment: A process monitor that shows the top consumer. I often tack my system(s) to the max, and therefore run out of cycles frequently. While this is sometimes the result of batch [...]

mt.el: posting from emacs

MT + Emacs + Markdown & Geshi? Is it possible? We’re here to find out :) I just got around to installing ml.el in emacs, and this post is essentially a test to see if markdown syntax will work (and round-trip to Movable Type and back to emacs — it seems to come from mt [...]

Linux, ASP.Net and Apache

The mono project, which aims to provide an OSS alternative to the .Net framework, is capable of serving ASP.Net pages (amongst other things). On Friday I sat down to do this, and realized that while there are many pages that describe the process, none that I could find, covered all the info needed to actually [...]

Blog migrations

I’ve moved Bitwise Evolution to yet another blog — this time I’ve moved from WordPress to MovableType. The motivating factor was that WordPress made it extremely difficult to post correctly formatted code along with other content. WordPress also doesn’t store a non-html version of each post, so you can’t easily edit old content without hacking [...]

Polymorphic Generics in C#

Generics are great for adding some level of type safety to C#, but you may run into problems when using Generic classes with objects that aren’t of the exact Class or Interface indicated by the generic type template. Enter Generic Constraints. Generic Constraints let you restrict the number of types a type variable can apply [...]

Vanity, chapter 1

…empty pride inspired by an overweening conceit of one’s personal attainments or decorations; [1913 Webster] I’m a sucker for pretty desktops and window managers. This weakness has yet to make me succumb to the lure of a full Gnome (or KDE) desktop, however. (Although I did play with the hack kludge known as XGL/compiz for [...]