What's New -  February 2004

[Home]

February 23, 2004: When I posted Simon last week, I discovered that the Windows Beep procedure used to produce the sounds does not work under Windows 95, 98, or ME.  I found and used  a substitute procedure which outputs directly to the PC speaker for those systems.   Here is a BeepEx Demo posted in Delphi-Techniques with the replacement beep procedure details.  (Also shows how to generate an equal tempered musical scale if you are into that sort of thing.)

February 22, 2004:  A daughter gave me Bill Bryson's book "A Short History of Nearly Everything"  a while ago.  At 500 + pages, it's not so short, but it is the most interesting book I've read in the past year so  I'm passing it on as my "book of the month".    Each time I pick it up I  learn new fascinating facts about some science - Geology, Archeology, Astronomy, Oceanography, Biology, Chemistry, Physics - name a physical science and chances are that Bryson will tell you something about it that you didn't know.   He sometimes poses simple questions for which no one knows the answer.  

 Here are a few  examples from my current chapter,  "Small World" 

  • 14,000 people per year die in U.S. hospitals of infections they did not have when they were admitted.

  • A kind of Single Cell slime mold starts life as a single celled spore.  When food is scarce, 100,000 or so of them somehow get together and form a slug that can travel to a more desirable location.  Eventually,  when conditions are better, the cells of the slug transform themselves into a stalk (built from cells) topped by a ball containing spores (built from other cells) which are released to start the cycle again. 

  • The Great Swine Flu epidemic of 1918 killed an estimated 20 to 50 million people, the worst in history.  Most  people who contracted it died.  Even today, scientists do not know where it came from, where it went, or why it largely bypassed infants and the elderly, concentrating its deadly effect on those in the prime of life.     

  • If you totaled all of biomass on earth, 80% of it would be made up of living things too small to be seen by the naked eye! 

A great book for teenagers considering possible vocations.  Now I just need to find one that is as well written and that emphasizes mathematics, engineering,  and computer programming  before my grandkids make their choices.

   

February 17, 2004:  It's been a while since we posted an new game or puzzle. Here's a PC version of the classic memory game, Simon.  It was written by Delphian Shane Holmes with a few changes by me.  The computer generates increasingly longer sequences of lights and sounds which the player must duplicate.  The game ends when you make a mistake.  My record so far is 12.  I'll bet the grandkids can do better. 

February 14, 2004: The first time I tried a practical application of the "minimize to tray" code posted a few days ago, I decided that it needed simplifying.  Today I posted SystrayDemo2 which uses an excellent freeware CoolTrayIcon component written by  Troels Jakobsen.   With a few small changes, it only takes a couple of additional lines in the program to implement minimizing and restoring apps from the tray notification area (a.k.a. the systray).   

February 10, 2004:   Here are a couple of more Delphi Techniques demo programs I wrote this week.  I plan to leave my weather station data capture program running, so it makes sense to use the Systray area to access it and save taskbar space.   Here is a Minimize to Systray demo that shows what is required.  Mainly a matter of figuring which Win API functions control the appropriate windows and icons. 

Also, a few weeks ago I described a problem in the Reaction Times program when I used comma as a field separator in the statistics files.  This was fine here, but a user in Norway reminded me that they also use commas as decimal placeholders - making it quite difficult to make sense of the resulting files!   I corrected that problem by offering a choice of delimiters but  thought that Windows really knew what character was used locally as the decimal placeholder.  It knows that and more than 100 other items of information about your country or locale.  Here is a Locale Constants demo that shows how to access the information.