Two New Must-Have Mac Programs: USBOverdrive X and DoubleCommand

Posted on 27 May 2009

Today I started working the lab as opposed to from home which has made me use a new mac pro. I love mac, I own a MacBook and it works great. But mac desktops are a different question. The macbooks trackpad works great, has the sensitivity I want, I can move my finger from one side of the pad to the other and get all the way across the screen, perfect! On the mac pro with the might mouse its as slow as a dog and the accelration is driving me nuts. So I started off on a google trek to find a solution.

Things I've Learned Working With Embedded Systems

Posted on 23 April 2009

So here will be a collection of things I've learned while working on an embedded system, so far just wiring it up and testing the chip. For those interested I'm using an ATMEGA8-16PI.

C#: Thread Safty with Monitor.TryEnter() and Thread.Sleep(0)

Posted on 20 April 2009

For my Embedded Systems class I'm working on a project where we are doing some webcam capture and video processing/effects work. To make life simple we are using OpenCV, which rocks. Our language of quote-in-quote choice is C# and to work with OpenCV we are using EmguCV wrapper/binding/what-have-you. So, while working on code that has to capture a video frame, process the frame to do face detection and a video effect, then draw a frame to display to the user I decided to throw everything into its own frame.

The Power of Generators: Simple Animation Example for MatPlotLib

Posted on 06 April 2009

Information Gain in Discretized Timeseries

Posted on 05 March 2009

I've been learning about information gain and playing around with it and its relation to timeseries data. For several reasons it is sometimes desirable to descretize timeseries data. For one it limits the number of unique values attainable by any time series, so for a finite lenght series there are only a finite number of possible different series.

Another Reason To Love Decorators: Pickled Functions

Posted on 15 February 2009

The more I work with python the cooler it becomes, especially the more I let my mind think of way out there things to do with the tools python provides. In my work I frequently find my self writing code in this order:

Chainned Comparisons, Generators, For-Else Loops and N-ary-Operators

Posted on 13 February 2009

So one of the coolest things I just found out about python is that it will let you chain comparisons, so 1 < a < 10 works. Even 1 < a < 10 < b < 25, and so on, you can even get really crazy and try a < 5 > b, wich is a funky way of saying a < 5 and b < 5, pretty cool huh!

Function Closures in Python

Posted on 09 February 2009

So today I used my first function closure in Python. I had always wondered why/how someone would use them, but today after reading an article earlier this morning I ran across a place to use them while coding this evening. Here we go:

Sync your iPhone/iPod to Multiple Computers

Posted on 06 February 2009

One thing that I don't like about the way iTunes handles things is thats not multi-computer friendly. I have my desktop running windows, my macbook and my iPhone. And I want the music on them to be the same, all three of them. Now before today, and really I should have googled this before today, I had always just been faced with the "Do you want to sync with this computer? Doing so will erase all the files currently on the device." message which I clearly didn't want to do. Then today, after finally googling the problem I came across the answer.

Tight Convex Hulls: Who Are My Neighbors?

Posted on 02 February 2009

In one of my research projects we have a set of points on a two dimensional plane that when given a single point from that set we want to be able to know who its "neighbors" are. For our work we have the mesonet stations spread across the state of Okalhoma and we want to be able to select the neighboring stations. There are a couple of methods that are intuitive but require setting a parameter, something I'm not fond of. Also we have the concept of multiple levels of neighbors, so my first neighbors, my second neighbors and so on.