Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Tuesday, December 09, 2008

Guerilla Refactoring

In the world of software development, refactoring is the process of updating code (usually for the better). But the problem may exist where management sees the existing application as "good enough" and doesn't want to allocate any budget towards fixing what in their eyes "aint broke".

Enter guerilla refactoring.

I must admit that I fall victim to this. I find lots of things at work that could be expanded upon, or made better, which would drastically increase the use of the package, make it more robust, or simply more elegant and orthogonal. I ensure that it doesn't eat into my work time, and the end product is usually something that I will directly benefit from, but hopefully also something that will make someone else's life better/easier/simpler.

P.S. I recommend this podcast from NPR.

Thursday, October 05, 2006

Leslie Lamport

I just stumbled upon Leslie Lamport's website, which has electronic copies of most of his published work.

I've studied some of Lamport's work in the past (mainly in regards to Lamport Logical Clocks & totally ordered multicasting, etc) and was recently doing some digging to find out how & why he created the LaTeX extensions to TeX.

That was when I came upon his papers.. wow.

Saturday, September 09, 2006

kd-tree creation tutorial

I've started work on the walkthrough mentioned in my previous post. It doesn't touch on topics such as searches of the completed tree, but sticks to the theory behind the creation and balancing of the resulting tree.

The graphic(s) for the walkthrough were created using graphviz. I wrote a small utility module in python that is used by the tutorial to generate the images.