July 2, 2008 by Dave Dyer
An interesting software event occurred today: I fixed a bug in a “C” program, which I have known must exist for about 10 years. During those years, I’ve made several concerted attempts to find this particular bug, but I never could pin it down. It was a rare glitch in a system with many major glitches, so fixing it was only a quixotic quest for perfection, not a necessity. I finally stumbled into a repeatable test case while debugging some newer code.
What has this got to do with “C”? The bug was a simple fencepost error, where a buffer was overrun by 1 byte. This could have been detected automatically, and would have been in some more modern languages. It’s not clear that this could have been detected by anything other than a permanent runtime system which always checks – a specialize test environment might have run for years without producing the right kind of input data.
I worry about the uncountable millions of lines of “C” code that run everything from my desktop computer to the planes I fly in. They can’t really be replaced or rewritten. “C” is an easy target because it’s such a wonderful language for producing buggy code.
My top ten list of way to be screwed by “C”
This happened to be a type of problem that could have been detected automatically. There are plenty of other bugs that can’t be found that way, or by any known method. In some sense, the worst bugs are the ones you don’t know exist until you see a result you don’t like. There’s no way to avoid those.
Posted in software reviews | Leave a Comment »
April 7, 2008 by Dave Dyer
Digital frames started out a few years ago as expensive novelties, but the prices have plummeted and I’ve joined the movement. I place mine on my desktop, within arm’s reach but not in the direct line of sight. I like mine so much I’ve bought more and given them away as gifts.
So far I’ve bought four different frames from different manufacturers. They’re not quite idiot proof yet, but anyone advanced enough to photoshop his own digital photographs will have no problem getting them loaded and running. The hardware is pretty solid and standardized – basically a small LCD, USB interface, some amount of internal memory, slots that accept most of the common camera memory cards, and of course, a power brick. Some have WI-Fi. Some have remote controls. It all works.
The on-board software is pretty awful now, but is bound to improve. Part of the problem is the no computer required requirement, which currently also means your computer is irrelevant. Everything about what the frame actually does is controlled by pushing combinations of buttons to scroll through multiple levels of menus. Yuck. Other things are just inexplicably dumb:
- The “random” slide show always starts with the same picture. Sure, it seems to diverge eventually, but some photos are seen much more often than they should be.
- There is a low, unpublished, absolute limit on the number of different photos that will cycle through the slide show. Each model seems to have it’s own limit, and none advertises what their’s is; but don’t bother cramming all 20,000 of your digital pictures onto one card. For now.
- Frames accept and store huge images in their internal memory, although they can only display limited scaled down versions.
The software can only get better.
I predict that the days of the traditional photo-of-wife-and-kids on the desktop are numbered. The photo-on-the-wall may follow soon. It’s a mystery to me why my expensive flat panel TV can’t double as a digital frame already.
Posted in software reviews | 1 Comment »
January 24, 2008 by Dave Dyer
I’ll start the legitimate games second of this blog at the current endpoint of the story; with my latest on-line game: Fanorona. Fanorona is a traditional capturing game, played mainly on the island of Madagascar, where it is reputed to be the national game. It is pretty much unknown everywhere else. I discovered Fanorona while random-walking through the game space.
Some games require an effort to understand and appreciate; not Fanorona. The opening phase of the game is a flat-out massacre of most of the pieces. No subtle training is needed to appreciate what’s going on! After the massacre, cleaning up the remaining wreckage is a surprisingly subtle positional game.
Fanorona was an ideal candidate to add to my game site, Boardspace.net. It’s unencumbered by intellectual property issues, it’s a short game with immediate appeal, and it’s not widely known or available elsewhere. So it has been added.
Now a few words about Boardspace. I’ve been in the computer programming “game” for a long time, and at every stage of the industry’s development, I’ve been writing games for whatever computer equipment was current. For the last three years, I’ve been sole proprietor of Boardspace, a site devoted to abstract strategy games which you probably have never heard of. It’s strictly a hobby; not a business. There is no revenue, only expenses; but it not a very expensive hobby. Web sites are cheap.
I’ve seen a lot of smart people trying to combine fun and profit, but I haven’t seen any really succeed at it. The desire for profit always seems to drive out the fun. My solution to this conundrum is to separate them strictly. I do programming for a living, and I don’t complain too much if it’s not always fun. I also do a lot of programming strictly for fun.
Posted in Games | Leave a Comment »
Extending the rule of Law
March 30, 2009 by Dave DyerHere’s a modest proposal. Dick Cheney and Donald Rumsfeld should be kidnapped by Spanish commandos and transported to an unnamed location. This is perfectly legal according to the Obama administration. (at least it would be legal if we did it.)
Once in this unnamed location, they should be waterboarded until they admit that they are being tortured.
At which point they can be resurfaced in a Spanish court to plea guilty to crimes against humanity.
Posted in Commentary | Leave a Comment »