One of the blogs that I have on my feed list recently reposted this tidbit: There are only two debugging techniques in the universe: printf. /* */ Since I recently posted my own little list of some debugging techniques, I can’t resist weighing in on this assertion. While their list is a bit flip, changing …
Category Archives: Development
Debugging!
Here’s another Reddit stub dealing with a topic that is near and dear to my heart: debugging! Unfortunately, the comments on that article seem to focus more on the “fuzzy” aspects of debugging – the “go home and mull it over while watching TV” kind of stuff, rather than more concrete debugging techniques. Whenever I …
First Chance .NET Exception Handling
I saw this article posted on Reddit’s programming feed*, which talks about a Visual Studio debugging technique for getting first crack at exceptions, before any upstream handlers run. The Debug->Exceptions dialog can be used to set the debugger to break before any exception handlers fire for a particular exception. This is useful not only for …
Using GPPG and GPLEX with Visual Studio
Here’s a quick note on a problem I ran into awhile back. I was using the GPPG and GPLEX parser tools as part of a Visual Studio project – the input files for these tools generate C# source files which are then compiled into the project. However, I noticed a problem with the recommended project …
Optimization Tradeoffs
This recent post by Raymond Chen highlights some interesting memory optimization scenarios, and the wide-ranging impact of size optimizations. A quick summary: Changing a structure definition such that a bunch of Win32 BOOLs use one bit each saves memory in the struct, because BOOL is typedef’d as an INT. Accessing the bitfield data members requires …
Braid
Braid is a very good game that overcomes some ham-fisted writing and overly ambitious themes. I won’t really dwell on talking about the game in this post other than to say that I recommend it, and that there are some mild spoilers in the remainder of this post. I saw a post by the author …
Installers. Again.
This time, though, my gripe isn’t with InstallShield, but rather with whoever put together an installer I used recently. As part of my recent hard drive purge, I had to use a partition manager program to reset a drive to NTFS (from extfs) so I could overwrite it with the tools I had at hand. …
InstallShield Wastes My Valuable Time (Which I Could Be Using To Play a Game)
I’ve had to use InstallShield to create installers a couple of times. These were fairly unpleasant experiences — while InstallShield is indeed a pretty flexible tool, it also takes a lot of work to get anything accomplished. Their habit of releasing new versions of the package every year (and completely abandoning the previous versions) makes …
Continue reading “InstallShield Wastes My Valuable Time (Which I Could Be Using To Play a Game)”
Bad Release Practices
I recently ran into some issues with installing PHP on an IIS server, and, in the process of tracking down the problems, came to the conclusion that the PHP Group doesn’t do enough (any?) release testing, and still treats the Windows platform (regardless of whether or not Apache is used) as a second-class citizen. Why? …
Cats and Dogs
By way of this Coding Horror article discussing recent CAPTCHA breaks in Yahoo, Hotmail, and Google, I stumbled across the Asirra (Animal Species Image Recognition for Restricting Access) project at Microsoft Research. It’s a CAPTCHA system that uses pictures of cats and dogs, taken from Petfinder, to filter out bots from real people. I decided …