Archive for the ‘Technical’ Category

.NET scripting

Friday, September 29th, 2006

I was doing some research on .NET scripting this afternoon and I ran across this really great article on some of the possibilities out there. Articles from the mothership are available here and here. Maybe Dusty and I should consider adding this as a section to our book, VBScript is an option…I’m sure the kids would love it…

Found my Eigenfaces paper

Friday, September 22nd, 2006

I found a paper I’d misplaced for a while (previously mentioned here).  It’s my old Eigenface project from CSCSI 5561 at the University of Minnesota (Computer Vision class).  Just thought I’d throw it up here in the hopes that Google would index it and someone else working on face recognition might find it useful.

.NET Resources

Wednesday, September 20th, 2006

Maybe this is clear to everyone else, but as I’ve been working on some internationalization problems for the .NET application I’m writing, and I’ve been having a tough time finding clear tutorials on the web on how to work with .NET resouces. As part of my give back to the Net initiative, I’m going to give a quick tutorial myself from what I’ve learned, in the hope that it will save other people some time.

(more…)

Picture weirdness

Thursday, September 14th, 2006

I’ve been trying to track down what’s been causing problems with uploads to the new version of gallery (gallery2).  It will freak out and abort uploads when it reaches certain pictures.  I thought it was weird that it would consistently not be able to upload particular pictures, and do fine with all the rest.  At first I thought it was an issue with the new version of gallery and my iPhotoToGallery plugin that I use to upload, but today I tried to upload some of the errant pictures through the web interface, and it still freaked out.

What I realized was that the pictures that are giving gallery2 problems are those that have been rotated locally on my new computer.  The new mac has a more current version of the iLife suite, and it seems that something strange is happening when I rotate pictures.  Either the jpeg manipulation libraries on gallery2 have a bug in them, or the new version of iPhoto is doing something nonstandard with the jpeg files.  I still need to investigate it further, but at least now I know where to look at the problem.

Dummynet ISO

Tuesday, September 5th, 2006

Mike and I were trying to create a network throttling device, and we stumbled upon Dummynet. Everything seemed cheeky until we realized that they only offered a download as a bootable floppy disk image. I don’t know about everyone else, but I haven’t kept floppies in years. We couldn’t find one in the entire house. As an alternative, Mike downloaded a floppy image to cd image tool so we could create a bootable CD instead (the floppy image provides a mini-BSD distro with the tools installed). bin2iso is available here, or if you’re interested in the dummynet cd iso, that can be found here. No guarantees if it will work, as we haven’t tested it yet.

Problems with Visual Studio.NET 2003

Friday, July 28th, 2006

I’ve normally avoided writing programming related entries on this blog, simply because most people who read my blog really don’t care. I thought I’d post this one on the off chance google will pick it up, because I spent several hours searching for the solution to this problem to no avail.

A couple different times while working on a customer project, I ran into the following compiler error:

error CS1583: ‘C:SVNRootValidChecktrunkValidCheckUIobjDebugCSC298.tmp’ is not a valid Win32 resource file

Not the exact same error, of course, the .tmp file changed each time, but I couldn’t figure out what was causing it. I was able to determine that a few other people had enountered this error message as well, but every solution I found involved checking DLLs or rolling back your code until the problem went away.

The latest time I encountered this error was immediately after I had changed the icon for the application I am developing. That cued me off that this might be some sort of unrecognized resource error. Clearly the error indicates that there is a problem with the resource file, but previously I couldn’t track down anything wrong with the resources, and the given file is a temporary one the compiler generates as it is compiling the .resx files, so it’s tough to figure out what’s causing the problem. This time, I knew it had to be with the icon I had just changed. Sure enough, when I replaced the icon with a dummy icon, the error went away.

The next thing I actually had to do was figure out what was wrong with the icon. I’m using Axialis IconWorkshop, so I opened up the offending icon and took a look. After much trial and error, I found that the largest version of my icon in the .ico file were being compressed. When I removed this option, everything worked file. Axialis indicated that this was a “Vista” option, so I’m not sure how it was checked. Windows itself displayed the icon fine, but apparently this older version of Visual Studio didn’t know what to do with it.

Another thing to note is that I only saw the error message when the problematic icon was set as the application icon (for the whole project), not for an individual window. When I used the icon elsewhere in the app, there wasn’t a problem. This might have been because when I used it for individual windows, it was using the smaller versions of the icon, which weren’t compressed.

Hope this solution gives other developers another thing to check when they run into this error in the future.

Found it!

Wednesday, April 26th, 2006

After a couple hours of debugging, I located the culprit! I inserted some inter-thread signaling to force execution to follow a particular order until I got a deadlock, and then tracked down the bug. Now I just have to go back and get rid of all those print statements Shoe and Dusty had me put in… You know life is getting bad when your blog is being used as a place of communion for your friends across state boarders to get together to give you crap.

Race conditions

Monday, April 24th, 2006

So I was doing a little testing this afternoon on some Serial communication auto-configuration logic I had written for work, and things that I had previously thought were working kept failing. This stuff is asynchronous six ways to Sunday, so I reverted back to the tried and true method of debugging — print statements. Unfortunately, the delay caused by the IO corrects the problem I had been witnessing. The next few days are sure to be fun as I try to figure out what kind of race condition I’m looking at. Good times.