Here is a fun little brain teaser that took me about an hour to figure it out. Bill Gates took longer, but didn't have the advantage of looking at a series of previous rolls (he memorized his). The answer to the roll above is 2.
Sunday, July 16, 2006
Petals Around the Rose
Here is a fun little brain teaser that took me about an hour to figure it out. Bill Gates took longer, but didn't have the advantage of looking at a series of previous rolls (he memorized his). The answer to the roll above is 2.
Sunday, July 09, 2006
Chaos Manor Reviews
One of my favorite writers, Jerry Pournelle, has been publishing his Chaos Manor column in Byte Magazine for darn near forever. It was one of the first magazines I subscribed to in High School and only gave up the subscription after Steve Ciarcia moved on to create Circuit Cellar Ink. Jerry has one of the first 'blogs' at his www.jerrypournelle.com site and I have been reading that for years now -- well before there were such things as 'blogs'.
CMP, the owner of Byte, has finally pulled the plug on it and now Jerry and some of the other columnists from Byte are running their own site at Chaos Manor Reviews. Its worth checking on a daily basis, as is the main Jerry Pournelle site.
CMP, the owner of Byte, has finally pulled the plug on it and now Jerry and some of the other columnists from Byte are running their own site at Chaos Manor Reviews. Its worth checking on a daily basis, as is the main Jerry Pournelle site.
pyGTK for Cross Platform Development
I've been debating the pros and cons of various development environments, from VC++ 6 to the new C# Express from Microsoft to MinGW with GTK+ or wxWidgets. I've finally settled on Python and GTK+ and Glade as the best choice.
This wil provide me access to the massive Windows client base while retaining my love for Linux and elegant designs. Python allows rapid application development, can be packaged up as only the compiled python code for distribution and can be optimized by writing processor intensive sections in c and linking them in.
That said, I now need to go write some code.
This wil provide me access to the massive Windows client base while retaining my love for Linux and elegant designs. Python allows rapid application development, can be packaged up as only the compiled python code for distribution and can be optimized by writing processor intensive sections in c and linking them in.
That said, I now need to go write some code.
Friday, July 07, 2006
Grokking the source
Back in the 'good old days' if you wanted to tweak a program on your system you downloaded the source from the author (if you hadn't already), made your changes and were done. It isn't quite as straightforward these days.
I'm trying to tweak cpufreq to idle down the CPU when the laptop lid is closed. Normally that would be a good use of the acpid event system. Execpt that my lid only generated an even when its closed, not when it is opened back up! So I'm going to add an option to cpufreq to check the lid status in /proc/acpi/button/lid/LID/state and when its closed set the CPU to its minimum frequency. Should be easy, right?
Nope. Not when you are running Fedora Core and their modified version of cpufreq. Apparently their startup script passes it a nice level (-n). This wouldn't be so bad except that it gets passed by the daemon function and doesn't appear in my debugging echos. Arrgh.
So, I guess I'll do things the 'redhat way' and create a new diff for my changes and rebuild it as a rpm.
Progress? Maybe. But I'm starting to feel like a unix curmudgeon.
I'm trying to tweak cpufreq to idle down the CPU when the laptop lid is closed. Normally that would be a good use of the acpid event system. Execpt that my lid only generated an even when its closed, not when it is opened back up! So I'm going to add an option to cpufreq to check the lid status in /proc/acpi/button/lid/LID/state and when its closed set the CPU to its minimum frequency. Should be easy, right?
Nope. Not when you are running Fedora Core and their modified version of cpufreq. Apparently their startup script passes it a nice level (-n
So, I guess I'll do things the 'redhat way' and create a new diff for my changes and rebuild it as a rpm.
Progress? Maybe. But I'm starting to feel like a unix curmudgeon.
ssh and the GNOME Desktop
As much as I hate the bloat of the GNOME desktop, I tend to use it on most of my machine. Its easier than trying to maintin something else. I also use openssh extensivly, and normally have a shell or 10 open to different machines. My laptop is seutp to run a backup once a day to one of these remote machines, it uses rsync over ssh so I have to either enter my password (hard to do in a script launched from cron) or the ssh agent needs to have the key loaded.
The easy way to do this is to have it ask you when you login. This is really easy to do:
Go to Desktop->Preferences->More Preferences->Sessions->Startup Programs
Click on 'add' and enter /usr/bin/ssh-add then click on close. Log out and back in and you should have a dialog asking you for your ssh password.
Now if I could just convince Firefox and Thunderbird to use ssh-agent for their authentication...
.cp
The easy way to do this is to have it ask you when you login. This is really easy to do:
Go to Desktop->Preferences->More Preferences->Sessions->Startup Programs
Click on 'add' and enter /usr/bin/ssh-add then click on close. Log out and back in and you should have a dialog asking you for your ssh password.
Now if I could just convince Firefox and Thunderbird to use ssh-agent for their authentication...
.cp
Sunday, July 02, 2006
Microsoft Windows Kill Switch?
I came across this article over on Bruce Schiener's blog. Apparently Microsoft is refusing to respond to reporters valid questions about WGA and the possibility that they may be able to disable your system sometime in the near future.
As we have mentioned previously, as the WGA Notifications program expands in the future, customers may be required to participate. [emphasis added] Microsoft is gathering feedback in select markets to learn how it can best meet its customers' needs and will keep customers informed of any changes to the program.
Thursday, June 22, 2006
No trunc() in VC++ 6?
I must be too used to Linux, where the world makes sense. It appears, unless I am totally missing something, that VC++ doesn't have the 'standard' rounding functions like trunc() and round()!
Here's the MSDN floating point page, and they are nowhere to be found.
Here's the MSDN floating point page, and they are nowhere to be found.
Thursday, March 02, 2006
Sunday, February 19, 2006
Sometimes things do 'Just Work'
and contrary to popular belief they aren't always Microsoft Products. I reinstalled XP on a desktop the other day (so I can do some cross-platform pyGTK programming). Its a plain-jayne Celeron 2.9GHz machine that I picked up on sale at Tiger Direct a few months back. Wouldn't you know it, XP hasn't got a clue as to how to install the Audio drivers. After digging about for a considerable amount of time I finally came up with the motherboard CD and got that working.
Then I tried DVD playback, I wanted to watch Firefly while cleaning my guns. I had bought a $15 license for a Sonic DVD codec when I bought WinXP online. I downloaded the package from Sonic (I had printed out the instructions so I knew it was right!). The darn thing didn't work! Windows Media Player still says it ain't got a clue as to how to play the DVD.
Under Linux I use Xine to play DVDs, but it hasn't been ported to Windows. But Mplayer has. Ironically I can never get mplayer to work properly under Linux. On Windows it was a different stopry entierly. I downloaded the Windows pre-compiled binary and a full load of codecs. Unzip the binary to c:\ and the codecs into the c:\mplayer\codecs directory. Then run
Now I have a clean gun and Windows XP that can play DVD's without having to bother with those damn closed apps that won't even work with your legal license. So how do I get my $15 back from Sonic?
Then I tried DVD playback, I wanted to watch Firefly while cleaning my guns. I had bought a $15 license for a Sonic DVD codec when I bought WinXP online. I downloaded the package from Sonic (I had printed out the instructions so I knew it was right!). The darn thing didn't work! Windows Media Player still says it ain't got a clue as to how to play the DVD.
Under Linux I use Xine to play DVDs, but it hasn't been ported to Windows. But Mplayer has. Ironically I can never get mplayer to work properly under Linux. On Windows it was a different stopry entierly. I downloaded the Windows pre-compiled binary and a full load of codecs. Unzip the binary to c:\ and the codecs into the c:\mplayer\codecs directory. Then run
mplayer dvd:// from a command window and off you go!Now I have a clean gun and Windows XP that can play DVD's without having to bother with those damn closed apps that won't even work with your legal license. So how do I get my $15 back from Sonic?
Wednesday, February 15, 2006
Islamist Hackers Target Michelle Malkin
According to Michelle Malkin the peace-loving Islamist movement has been trying to take down her blog, probably because she has been showing those horrible disgusting cartoons of their so-called prophet. Look at the cartoons and compare them to some of the things that have been drawn and displayed about the Christian faith in recent decades.
If Christians were as 'peace loving' as the Muslims appear to be we'd have had riots in the streets 20 years ago over crosses dipped in urine and paid for with tax-payer money. But we didn't.
Think about that.
If Christians were as 'peace loving' as the Muslims appear to be we'd have had riots in the streets 20 years ago over crosses dipped in urine and paid for with tax-payer money. But we didn't.
Think about that.
Sunday, February 12, 2006
Watch those old scripts
There's a popular perl script for processing web forms into emails. It has some checks to make sure it cannot be used to send spam. Except that it didn't check enough.
The Subject form field can be exploited to send a spam message by sending a subject, followed by a \n and then the headers and body of a spam message. This has been fixed in this version. But the subtag field may still be used to explot this script (maybe, I haven't tried it).
So, it pays to go over what you are posting on your webpage, especially if it was written by someone else.
The Subject form field can be exploited to send a spam message by sending a subject, followed by a \n and then the headers and body of a spam message. This has been fixed in this version. But the subtag field may still be used to explot this script (maybe, I haven't tried it).
So, it pays to go over what you are posting on your webpage, especially if it was written by someone else.
Backwards compatibility?
One of the great features of Unix is that the small apps that you use to build applications change very slowly, if at all, over time. ESR makes the point in "The Art of Unix Programming" that programs should maintain compatibility. Well, I guess that's no longer true. I'm trying to build some rpms for one of my projects and both tar and rpmbuild no longer work the same way they did a year ago (yep, the code is stable and I haven't built a new release in over a year).
tar has changed how 'strict' it is about accepting arguments like --exclude. It used to handle it fine if they were at the end of the argument list. No longer. And rpmbuild is barfing on the Copyright: entry in the .spec file of all things.
I really, really dislike fighting with my tools. Especially on Unix which has historically been the most stable and reliable of the OSes.
tar has changed how 'strict' it is about accepting arguments like --exclude. It used to handle it fine if they were at the end of the argument list. No longer. And rpmbuild is barfing on the Copyright: entry in the .spec file of all things.
I really, really dislike fighting with my tools. Especially on Unix which has historically been the most stable and reliable of the OSes.
Subscribe to:
Comments (Atom)