Using Node.js and coffee-script to send subversion commit notification emails

A small team at work is using a Subversion server for managing the code of various automation scripts and other things. The server is a Windows server and has the CollabNet flavor of Subversion installed on it with it running a Windows service exposing the SVN protocol for clients to connect to. I had to start doing some occasional stuff with these repositories and thought it would be useful to have it send out an email notification whenever someone committed something.

Continue reading

Controlling Java from Node.js – a simple JSON based RPC protocol

This is an introductory example of creating a simple JSON based protocol for communicating with a Java program from a Node.js JavaScript application. You might want to do this if, for example, there is a Java library that gives some sort of fantastic benefit that you’d have a problem replicating in a Node.js script by itself. In this example, we will only be sending some basic message back and forth. In a more real world scenario, and a future article I plan on writing, you could have messages that do whatever you want on the Java side so that those actions would then be controllable from the Node side.

Continue reading

Organizing Outlook using the Razer Naga MMO 17-button mouse

A couple of years ago, or so, I bought a mouse with a ludicrous number of buttons on it. The life of the Razer Naga MMO is intended to be spent helping its owner slay monsters in video games. The five top buttons and twelve side buttons can seem overwhelming at first. But all seventeen can be put to good use after some practice, even at the office.

One of my several Razer Naga MMO mice.

One of my several Razer Naga MMO mice.

Continue reading

A simple Magic 8 Ball costume that actually works

A working Magic 8 Ball costume.

A working Magic 8 Ball costume.

I was keeping my usual self quite busy this past Halloween. I wanted to do an original costume that I created myself for wearing to weekend parties. Unfortunately, with my busy schedule, I put it off until pretty much the last couple of nights. With Halloween actually coming early during the week, I lost the luxury of the weekend to work away on it. So, having to do a rush, last-minute job after work, and wanting to do something novel, I thought of how the iPad has accelerometers and I could take advantage of it to make a working Magic 8 Ball costume! You shake the belly, you see the answer float away and back with a new random answer. Totally do-able, easy! Oh … and you don’t even need to be a software developer to do this. You don’t need a Mac nor Xcode to create the app, as this app is just a simple webpage and some JavaScript.

Continue reading

Tweaking web2project – overriding the Help button

Overview

When I moved to a new position a few months back, the team that I shifted to had just started using web2project for managing and tracking project activity. It comes with the ability to setup various custom fields and do all sorts of project manage-y things that I try to avoid and let the PMPs deal with.

But despite all of the features of web2project, my peers still wanted more than it offers out of the box. There are a number of ways in which it is lacking flexibility or configurable options that my teammates need. I needed to address their concerns while avoiding altering the PHP source code of the application as much as possible. Doing so will make it easier to deploy official upgrades to the application while retaining our customizations.

Continue reading

D-LINK DIR-825: Invalid MAC Address issue and Javascript hack

A few months ago I decided to invest in a new Wireless N router with simultaneous dual-band capabilities. I found the D-Link DIR-825 router to be a good fit for my needs and took a gamble on a somewhat pricey router. So far, the experience has been acceptable, but there is one really annoying issue.

Sometimes, when trying to add an IP Reservation (necessary for port forwarding, etc), the device you are trying to reserve for is not allowed to be added to the list of reserved address. When clicking the “Save” button, you receive a message stating …

Invalid MAC Address

Continue reading

Adding simple, sexy help to your Access application

I was recently granted the honor of taking over maintenance of an internal Access application at my day job. One could view this as a side effect of openly knowing things about many technologies where others don’t. Anyways, this application was written by a project management group and was not created by experienced programmers. They did an okay job with the system, but one useful feature that was missing was any sort of help information for the different forms in the application. One of the first things I did was add this help feature to every single form. Continue reading

Excel byte bits and reversed bit order bytes

I forget now the reason why I came up with this spreadsheet real quick one day. I’m sure it was to help explain something to somebody at work, but I digress. This is a neat little bit of math and a fun spreadsheet to look at. It shows all 255 values available to a single byte, the bits, and then the reversed bit ordering and its corresponding decimal value. I also added some conditional formatting to give it a touch of visual spice. Continue reading