Monthly Archives: January 2009

Troubleshooting C++ TR1 problem in Visual Studio 2008

Patrick Getzmann and I have been exchanging email about a problem he had using some sample code I’d written for working with regular expressions in C++. I wasn’t much help, but Patrick figured it out. I wanted to post his

Tagged with: ,
Posted in Software development

Browser war streamgraph

From FlowingData:

Posted in Computing

Log concave functions

Log concave functions have some very interesting and useful properties. I’ll list some of these shortly after a three definitions. A function is convex if the line segment joining two points on the graph lies above the graph. In symbols,

Tagged with: ,
Posted in Math

First anniversary post

This blog began one year ago today. Thank you for reading my posts and thank you for all your encouragement, online and offline. If you enjoy reading this blog, please help other people discover it. Maybe you could tell a

Posted in Uncategorized

Five principles for object oriented software engineering

In Scott Hanselman’s latest podcast, Robert C. Martin explains the SOLID principles for object oriented software design. SOLID is an acronym for the following: Single responsibility principle Open-closed principle Liskov substitution principle Interface segregation principle Dependency inversion principle Related blog

Tagged with:
Posted in Software development

PNG vs JPEG

Bill the Lizard answered an image compression question on StackOverflow by pointing out the image below that shows the difference between PNG and JPEG compression when applied to line drawings. The image comes from lbrandy.com. The left side of the

Tagged with:
Posted in Graphics

Convex optimization

I’ve enjoyed following Stephen Boyd’s lectures on convex optimization. I stumbled across a draft version of his textbook a few years ago but didn’t realize at first that the author and the lecturer were the same person. I recommend the

Tagged with: ,
Posted in Math

Introduction to computer virtualization

New post by Thomas Guest: Tell me about … Virtualization

Posted in Computing

Making screencasts with Jing

After seeing Jing as the top recommendation in a list of teaching tools, I decided to look into it. This two-minute video gives a good introduction to what the tool can do. In a nutshell, Jing makes it very easy

Posted in Computing

A priest, a Levite, and a Samaritan walk into a bar …

A rabbi, a priest, and a preacher walk into a bar. The bartender looks up and says “Is this some sort of joke?” Many jokes follow the pattern of three people doing something. The first two establish a pattern as

Posted in Uncategorized

Taking your code out for a walk

I posted two articles on the Reproducible Ideas blog this morning. Taking your code out for a walk Just because you haven’t changed your code doesn’t mean it still works. CiSE special issue on reproducible research The latest issue of

Tagged with:
Posted in Computing

Hard disk array failure probabilities

The acronym RAID originally stood for Redundant Array of Inexpensive Disks. The idea is to create reliable disk storage using multiple drives that are not so reliable individually. Data is stored in such a way that if one drive fails,

Tagged with:
Posted in Computing

Leaky abstractions and hockey stick learning curves

Michael Lugo wrote a blog post Turtles all the way down that links to a cartoon in which someone explains how a compiler works by diving through layers of abstraction from software to hardware to electrons to quantum physics. You

Tagged with:
Posted in Computing, Software development