Category Archives: computers

Comparing Blosxom and WordPress weblogs

The old adage that “necessity is the mother of invention” is so true.  When we are frustrated, or our current approach to a problem does not produce satisfactory results, we often try something else, and in the process we may discover something new.

I have had a WordPress blog since May of 2007.  At the time, I did not know much about how blogs worked, and used the cookie-cutter approach provided by my web hosting service.  I started learning about WordPress themes, syndication, database backups, MySQL databases, phpMyAdmin, and many technical details that were necessary to interface the blog with my website seamlessly and reliably.

All was well until, one day, I noticed that the RSS subscription to my own blog had not been updated.  When I investigated, I found that my WordPress blog had been hacked.  Someone had modified the WordPress wp-blog-header.php file and added some code that would divert search engine requests to a variety of casino and porno sites.  The code was clever enough to avoid diverting direct accesses to the blog, thus reducing the chance of detection of the hack by someone who accessed the blog directly.  I restored the original code, and determined that the hack had been made possible by a buffer overflow through the blog comments.  I modified the WordPress code to prevent further changes.  I described the technique here.

My original WordPress database was in Latin-1 code page and I wanted to convert it to UTF-8 to make internationalization easier.  At the same time, I decided to upgrade the original version of WordPress that I had been using to the latest and greatest version.  Disaster!  The intelligible permanent links stopped working because the permalinks plugin from my host was not compatible with the new version of WordPress.  The solution required being able to modify the .htaccess file, which I was not allowed to do on my host system.  Disappointed, I decided to use an ugly default link format, and I had to modify my 404 processing (for pages not found) so that requests for pages from “permanent” links to my blog would be converted to blog searches to try to find the blog post.

It was at this time that I started looking for blogging alternatives to WordPress that did not involve a database, and I found Blosxom. Comparing WordPress to Blosxom is like comparing a modern automobile to a horse and buggy.  They both can get you to the same place, but the ride in the horse carriage requires a lot more tending.   So it is with Blosxom, but after a couple of days, I was able to convert my WordPress blog for use by Blosxom.  The real strength of Blosxom becomes evident if you want to create static web pages and remove the dependency on PHP and MySQL.  The dynamic version of Blosxom also works well, but unless you are a good Perl programmer, you better stick with WordPress.  If you are still interested, click on the following link.

Learn how to convert a WordPress Blog to Blosxom

Lucky Numbers Gadget – New directions in the Internet

There is a revolution in the way people communicate with each other.  Newspapers are getting thinner or going out of business.  Television programs keep saying “go to our website for more details”.  Almost everybody has a cell phone, and cell phones have evolved into multi-function devices that, besides carrying voice messages, take pictures or act like Global Positioning System (GPS) devices that show maps and provide directions.  The cell phones also can store and play your favorite music.  Many of these advances are due to the way that the Internet is developing.

Google has become the major search engine in the world and neither Yahoo nor MSN (now Bing) comes close to the breadth and depth of coverage that Google offers.  The greatest handicap for finding information has been the multiplicity of languages in the world.  Google is making great strides in its statistical translation approach.  A user can search in other languages and have the results translated into his native language.  It is now possible to search information in Arabic or Russian even if you don’t know these languages.  The translations are somewhat rudimentary, but they are understandable.  I can imagine that in twenty years many language barriers will disappear.

One of the latest trends in the Internet is the use of gadgets which perform functions such as displaying the weather, news, or other useful information.  Gadgets are XML containers with HTML and JavaScript that may be easily manipulated within web pages.  To get familiar with the technology, I developed the Lucky Numbers Gadget illustrated above.  It is amazing what you can do with less than 90 lines of code.  Anybody can now develop customized web pages by selecting the gadgets that they find most useful.

You can add the Lucky Numbers gadget to your iGoogle web page by pressing the button: Add to Google

Ectomorph, Mesomorph, and Endomorph Body Types

Body Types

In the 1940’s, psychologist William Herbert Sheldon proposed a classification of human physique into three categories.  An ectomorph is a thin person with small muscles and a delicately built body.  A mesomorph has well-defined muscles, large bones, and a torso that tapers to a well-defined waist. An endomorph has a rounded stocky body.  The words endomorphic, mesomorphic and ectomorphic are still used to describe body types in association with weight training for the purpose of gaining muscle, but modern science is dispelling the idea that body shape is an intrinsic feature that cannot be altered.  Only the bones seem to remain constant as a person gains or loses weight.

When I developed the Calorie Restriction Calculator, one of the criticisms was that it does not take into consideration the body types.  If it were possible to quantify the body type, the calculation of %CR could be made more accurate.  Recently, I came across some digital human modeling work done under Professor Zoran Popović at the University of Washington.  His team has used measurements from 250 human body models and created a parametrization set that allows generation of a variety of applications for human body modeling, including: morphing, texture transfer, statistical analysis of shape, and the modification of  multiple correlated parameters such as the weight and height of an individual.[1,2]  The software makes it possible to visualize how persons look when they get fat or lose weight.

[1] Digital Humans. [link]
[2] The space of human body shapes: reconstruction and parameterization from range scans. [link]

Swine flu forces students and parents to work from home

Don't Pollute e-commute

Many schools across the country have closed because of swine flu infections.  This has forced some parents to stay at home to take care of the kids.  These unexpected changes in schedules are a hardship for the parents and for the firms that employ them because it reduces productivity.

Some firms provide employees with the opportunity to work from home.  The work-at-home programs may be called telecommuting, e-commuting, e-work, or telework.  The firms that allow working from home may also provide equipment, such as computers, modems, and internet access.  The most effective way to work from home requires a connection for the computer and a separate line for the telephone so that both can be used at the same time.

When a significant portion of the employees work from home, a company is able to reduce its office space.  In addition, a company that allows telecommuting may be able to hire qualified individuals who live far away or who, because of disabilities or other obligations, may not be able to drive to the company location.

Telecommuting provides a “green” alternative to driving.  You don’t use gasoline.  You don’t have to fight traffic.  You don’t pollute and you reduce your carbon footprint.  However, you need to have discipline to get your work done in spite of the distractions that can be found at home.  You cannot just surf the internet or play solitaire and expect to get paid.

(OS 3) The system cannot find the path specified

Apache Web Server

Recently, I got a new computer and I had to install the Apache Web Server on a Windows platform to be able to test my CGI scripts locally before publishing them on the internet.  The installation went well and I could test CGI executables without problems, but HTML pages that used Perl scripts displayed the dreaded HTTP Status 500 – Internal Server Error.  My Apache error.log file had the entry:

[client] (OS 3)The system cannot find the path specified.
: couldn’t create child process: 720003:

This type of error occurs more frequently in Windows systems than in Linux or Unix systems.  The reason is that the shebang line of the Perl script (#!/usr/bin/perl) is used by the Apache web server to find a program to interpret the script.  In Windows systems, the Perl interpreter is normally installed as C:\Perl\bin\perl.exe, whereas in Linux/Unix systems the path is usually /usr/bin/perl, as indicated in the shebang line.  Although there are several ways of telling the web server where to find the Perl interpreter, I have found that the simplest solution is to leave the Apache configuration alone and store a copy of the Perl interpreter as C:\usr\bin\perl.exe.

In this way, I can test my Perl scripts in the Windows system with exactly the same code that will run in the Linux systems.  In the event that I upgrade to a new version of Perl, I have to remember to also change the copy in the local C:\usr\bin\ directory, or install the new version of Perl in directory C:\usr instead of the default directory C:\perl.

Click Here for a list of Free and Open Source Software

Scientific Psychic passes 7-million visitor mark

Scientific Psychic Statistics

The domain has been active since February 15, 2001.  The web site has continued its original goal of providing educational material and entertainment.  Some of the most popular pages are the optical illusions, games, diet calculator, verb conjugation, and hygiene. averages approximately 6000 visitors and over 16,000 page views per day.  Most of the traffic originates from English-speaking countries like the United States, the United Kingdom, Canada, Australia, and India, but there are visitors from many parts of the world where English is spoken such as Singapore and the Philippines.  This is an example of the country of origin of the visitors.

Scientific Psychic Statistics

Some of the web pages have been translated to other languages and it is not unusual to have Google refer French queries to the French version of the verb conjugation page.  The recent translation to Spanish of the diet calculator, and the pages about carbohydrates and hygiene already is attracting visitors from Latin America who search the web in Spanish.

Scientific Psychic® is registered in the United States Patent and Trademark Office with registration number 3,088,970.

Internationalization of web pages

English is the most common language in international trade, but there are many people in the world who do not understand English. Over 313 billion web pages have been published on the World Wide Web, and approximately 70% of them are written in English. Here are some global internet statistics of web content by language:

Language - Percent of web content
English 68.4%
Japanese 5.9%
German 5.8%
Chinese 3.9%
French 3.0%
Spanish 2.4%
Russian 1.9%

It is important to consider that the native language of people using the internet is not always English. About 30% of the web surfers are English speakers, but 15% speak Chinese, and 9% speak Spanish. Here are some statistics of the percent of users who surf the internet.

Language - Percent users - Number of users
English 30.1% 379M
Chinese 14.7% 185M
Spanish 9.0% 113M
Japanese 6.9% 88M
French 5.1% 64M
German 4.9% 62M
Portuguese 4.0% 51M

From these statistics, it is evident that Chinese and Spanish readers are being underserved. Web sites seeking to expand their global audience should consider translating some of their pages to make them accessible to speakers of other languages. uses the following national flags to indicate the availability of web pages in other languages:

English- English
Spanish- Spanish
French- French
German- German
Russian- Russian

To see an example of an internationalized web page see:

English Verb Conjugation and Inflectional Morphology

Free software gives new life to old computers

Last year, I had to get a new laptop computer because my old IBM Thinkpad with Windows 95 was basically obsolete. The computer had only one USB port and it needed an Ethernet card to connect with my desktop computer through my local area network hub. With Windows 95, the system would sometimes pause as I was typing a document, and it would stay in a state of limbo for about 30 to 40 seconds before resuming. This would interrupt the flow of ideas that I was trying to type, and during this time I could think of nothing but the top row of keyboard: #$%%*!, %$&^%$!, and @$%*!

I started using the old Thinkpad as a perch for my new laptop because I hated the idea of using it as doorstop, as a mean-spirited geek had suggested. At the time that I bought my new laptop, I also bought a copy of Linspire, a Linux-based operating system, with the idea that one day I would convert the IBM Thinkpad to Linux. Several months later, when I finally installed the new operating system, I found out that the old Thinkpad had regained some of its spark. Linux had fixed the intermittent pausing problem.

You can buy Linux systems- very inexpensively, but you can also download them free from the Internet if you have a broadband connection and you can create a 700 megabyte CD. The three most common Linux versions are Ubuntu, OpenSUSE, and Freespire, a free version of Linspire. Ubuntu has gained wide popularity because it provides online support through a large community of users. All three operating systems come with free web browsers (Mozilla Firefox), e-mail, and a free office suite (OpenOffice) compatible with Microsoft Office to handle spreadsheets, documents, and slide presentations. A wide array of Linux applications can be downloaded from the Internet.

I downloaded GCC, the GNU Compiler Collection, and now, I use my old IBM Thinkpad as a platform for testing the Linux 32-bit versions of my linguistic programs. This has become important now that many of the systems that I previously used for development have been replaced with machines that use 64-bit architecture.

The moral of this story is that you can recycle your old computer and make it useful again with a minimal investment.

Windows Briefcase synchronization problems with Vista

Windows Briefcase

The Briefcase feature in Windows helps you keep your files updated by automatically synchronizing multiple copies of individual files. If you use a desktop computer at the office, and you use a portable laptop computer when you are on the road, Briefcase synchronizes and updates the files on your desktop computer to the modified versions when you reconnect your portable computer to the desktop computer.[1]

The added security layers in Windows Vista create a peculiar problem for synchronizing .ZIP files, .PDF files, .DOC files created by MS Word, and .PCH files created by the C compiler of the MS Development Studio.  The problem with the .PDF and .DOC files seems limited to cases when the files are downloaded from an e-mail attachment and stored in a folder that needs to be synchronized.

The problem becomes evident when you try to synchronize a Briefcase and a message appears saying that the file cannot be accessed for copying.  Some files such as the .PCH files that can be regenerated by a compiler may simply be deleted from the source folder before the Briefcase is synchronized.  However, for other files, the solution is to create a copy of the file, delete the original, and rename the copy to the original name.  The reason for the problem seems to be that the files that cannot be copied do not have the “Authenticated Users” security attribute which is required to access a shared resource from another computer in the network.  The following images show the attributes of the original which cannot be synchronized and the copy.

Attributes of a file that cannot be synchronized:

Attributes of a file that cannot be synchronized

The copy of the file has the “Authenticated Users” security attribute:

Attributes for copied file

[1] How To Use the Briefcase Feature in Windows XP