All posts by Charles N. Burns

The Solid State PC

A silent PC is one that makes absolutely no noise, and by necessity has no moving parts (including fans). Such systems usually use very low-end hardware limited to trivial tasks such as running a cash register. The system introduced today, a Solid-State PC (SSPC) is a powerful quad-core i5 PC which runs most software faster than the majority of modern PCs, yet uses less than 25W idle.

Continue reading The Solid State PC

How to Create 4KB Aligned Partitions in Windows XP and Linux

There has been some news regarding the new Western Digital “EARS” series “Advanced Format” hard drives and the associated performance problems. While these drives can be faster than older drives because of the larger sector size, a partition formatted without the correct alignment can slow to less than a third.

Read on for brief instructions on how to fix the problem in Linux and Windows XP.

Continue reading How to Create 4KB Aligned Partitions in Windows XP and Linux

Introducing “CNB ImageGuide”

Should you save your image as PNG or JPG? ImageGuide is a program which helps you choose the best format..

Web images are usually saved in either .JPG or .PNG format, but unfortunately most people have no idea which is best for their picture.

The top image should be saved as JPG. The bottom should be saved as PNG.
Top: Photos should be saved as JPG. Bottom: Simple images should be saved as PNG. Both: Notice the lost detail and corruption when the wrong format is used.

The very simplest rule of thumb is:

  • If it’s a photograph, use .JPG
  • Otherwise use .PNG

Graphs, charts, and screenshots are often (incorrectly) saved as .JPG even though as PNG they would look better and be smaller. An extreme example is this image of every color. Saved as .PNG, it’s only 58KB. As .JPG, it is 1.1MB — 19 times larger and even at that size it looks blocky compared to the PNG version.

Unfortunately, even many surprisingly knowledgeable website authors seem to lack this knowledge.

In order to help people make the most of their pictures and their time, I’ve written ImageGuide — a program which aims to make it absolutely as easy as possible to pick the best image format, or even choose for you. You can download it here

Continue reading Introducing “CNB ImageGuide”

Building Qt Static (and Dynamic) and Making it Small with GCC, Microsoft Visual Studio, and the Intel Compiler

Qt can easily be made into a smaller library than the default install provides.

This article will show you how to build Qt, the popular C++ framework from Nokia, so that it is both small and, if you prefer, available for static linking. Your Qt applications will be smaller, possibly faster, and can be distributable as a single executable.

Also answered: How small can Intel’s C++ compiler make a large library? How does Microsoft fare? Three compilers (settings tuned for small file output) and their resulting code size is compared.

Continue reading Building Qt Static (and Dynamic) and Making it Small with GCC, Microsoft Visual Studio, and the Intel Compiler

How to statically link Qt 4

Make your entire Qt application work entirely from a single file.

qtlogoI was downloading Ubuntu Netbook Remix for my EeePC 900A and found that it’s installer is not a CD image, but a raw image meant to be written to a USB FLASH drive. After downloading their handy image writer, I found that this simple utility came with quite a few support files, including a surprising 13.5MB of .dlls.

This image writer tool was written using Nokia’s Qt software, which allows easy development and distribution for all the major platforms from a single C++ source base. This program was compiled in the same way most Windows software is today — with “dynamic linking”, requiring the Qt libraries, among others, be shipped with the program as separate files.

This is fine for large software projects, but it’s a little cumbersome for small tools like this one. Many programs can be distributed such that all necessary files are built into the executable in a process called static linking. Sometimes it is nice to be able to download just the program itself and not have to worry about making sure various DLLs are included (though setting up an installer largely eliminates this problem).

Static linking has its advantages and disadvantages, but when not done, running a program unaccompanied by even one support file will result in a cryptic error for the user:


These 4 steps are all you need to make your entire project result in a single, easy-to-distribute .EXE file:

  1. Complete your Qt project using normal debug libraries.
  2. Compile the Qt libraries for static linking (needs to be done only once).
  3. Add the necessary lines of code to include any Qt plugins you may need.
  4. Compile your release version with the static libraries.

Continue reading How to statically link Qt 4

Fujitsu’s Esprimo Green: “Zero What”?

Fujitsu announced that their showing at CeBIT 2009 will include what they call a “zero-watt PC“. The name is misleading not only that these computers draw full power except when in standby mode (or off), but also in that this may not actually save even the humble standby power drawn by a typical PC.

The details will be revealed at the show, but Fujitsu will likely use technology similar to their own “zero-watt monitor” which, “works by storing electricity into additional capacitors within the device.” Capacitors, like any means of storing electricity, have to be charged, so this is nothing more than time shifting the energy usage — not eliminating it. With the small overhead of charging and discharging, “zero standby power” devices may end up using more energy than their ordinary counterparts; the “energy savings” being analogous to saying that cell phones draw zero power from the outlet when on battery power.

Standby current draw, while small, can be significant when a large number of devices add up. Still, foregoing a single use of your toaster can save more power than is used by a PC in standby uses in a week.

Fujitsu’s new PC may have other power-saving features which aren’t so inconsequential. The light sensor on their zero-watt monitor, for example, can reduce brightness (and power) in accordance to ambient lighting conditions. This shows they are working on power conservation from many angles, even if some of those angles are rather obtuse.

Will these new “zero-watt” computers save electricity?