## Wallpaper: Mais où est donc Marie-France ?

24/05/2009

A new wallpaper fresh from yesterday. Shot at the annual outing of Club Photo Boisbriand.

"Mais où est donc Marie-France ?" 1920x1200 Wallpaper

## Not Loosing the Perspective

19/05/2009

My first true computer, a TI 99/4a (which I talk about also in a previous entry), had 16 or 48 KB of RAM, depending whether or not you had one of the memory expansion cartridges, and that limited quantity of memory severely curbed the complexity of the programs one could write on the machine. However, the limited complexity of the programs, the relative crudeness of the development environment (a BASIC shell) and the slow execution speeds weren’t very obvious to me back then. They were somewhat mitigated by the novelty of the computer itself as a machine, and by the perpetual intense excitement of discovery. The arduous design of programs to save memory, fit more graphics or more code, or even getting our programs to work at all was less about constraints than challenge.

The same kind of constraints—or challenge—followed me over the years as I moved on to different computers. Despite their being more powerful, both faster and sporting more memory, the challenge remained there because while the computers got better, so did I at programming. I kept asking more out of the machine, writing increasingly complex programs needing either more memory or more speed, often both. That meant better algorithms, better data structures, and better implementations1.

## The Fizzbuzz problem

12/05/2009

You are given the following assignment:

You are to write a program that must fulfill these simple requirements:

For the numbers from 1 to 100,

• If the number is a multiple of 3, print fizz instead of the number.
• If the number is a multiple of 5, print buzz instead of the number.
• If the number is a multiple of 15, print fizzbuzz instead of the number.
• Otherwise, print the number itself.
• Each output should be followed by a new line.

Can you code that and get it right in less than one minute? In less than two? How many retries will be necessary? Open your favorite editor for your favorite programming language. Ready? Set? Go!

## Suggested Reading: A Field Guide To Genetic Programming

09/05/2009

Riccardo Poli, William B. Langdon, Nicholas F. McPhee — A Field Guide to Genetic Programming — Lulu, 2008, 240 pp. ISBN 978-1-4092-0073-4

This is not an ordinary textbook as it does not follow the expected pattern but is rather an extensive survey of the field of genetic programming. Each chapter introduces a major concept or issue in genetic programming and covers the subject in a rather authoritative way, supported by copious documentation—the last 57 pages of the books are occupied by the bibliography.

## Suggested Reading: An Introduction to Genetic Programming for Scientists and Engineers

09/05/2009

David A. Coley — An Introduction to Genetic Algorithms for Scientists and Engineers — World Scientific, 2005, 227 pp. ISBN 981-02-3602-6

This short book introduces the major concepts in genetic programming under the angle of multi-objective optimization in high-dimensional spaces. We learn about the elementary operator of genetic programming such as cross-over, mutation, and candidate selection (with or without elitism). A good quick introduction to genetic programming, with just the right dash of math!

## Suggested Reading: The Trouble With Physics

09/05/2009

Lee Smolin — The Trouble with Physics: The Rise of String Theory, the Fall of a Science, and What Comes Next — Mariner Books, 2006, 392 pp. ISBN 978-0-618-91868-3

In this book, the physicist Lee Smolin tries to explains us in what kind of predicament modern physics is today. He starts by enumerating the five great questions that modern physics must answer:

• Unify general relativity and quantum mechanics; that is, formulate the theory of quantum gravity
• Solve a number of problems within quantum mechanics
• Unify forces, that is, explain all of them within a coherent theory
• Explain the numerous natural constants, that is, explain why they have their specific values and not some other
• Explain weird cosmological phenomena such as “dark matter” and “dark energy”

## Calibrating your LCD for Better Results

05/05/2009

When you’re designing interfaces or adjusting your color photos, you must be able to rely on your computer screen for color accuracy. As you may know, I am an amateur photographer and, consequently, I often post-process my pictures to make them actually presentable. However, I would never do such a thing on my Dell laptop because the matte LCD screen is… well, let’s say not up to the task. Red ends up somewhat salmony, so I really can’t use it to do any kind of decent photo processing. My old Vaio, on the other hand, with its glossy display renders stunningly deep and vibrant colors.

But just how much can you trust your display? Can you adjust it without buying the rather expensive color calibration gizmos yet have decent results? In this week’s post, I present my techniques (meaning: tricks) to calibrate LCD (most also apply to CRT) screens.

## Coughing up bacon (or Why the Swine Flu won’t kill you just yet)

03/05/2009

Last week, while friends and I were discussing the sensationalistic news coverage of the swine flu pandemic, I was joking that if you were not coughing up bacon, you were probably OK.

I fact, I wasn’t so much joking about the flu itself than about how (dis)information is presented in sensationalist news channels such CNN, Fox, or even Montréal-based LCN. Earlier this week, news were that the flu had already caused tens, maybe hundreds, of deaths, but that data was presented as if, you know, you just catch the swine flu and you die right away from it. However, on Thursday morning, on the radio, I heard that the Mexican authorities recounted “swine flu” death to… less than ten. To really understand what’s going on, you really have to do some research, and sometimes what you discover is radically different from what you’ve been told.