It’s almost impossible these days to find a monitor or laptop that isn’t wide screen. They are even making their way into bed room size televisions. Is this the wonderful progress of technology, bringing us fantastic products for lower prices every day? Not really. It’s actually just a marketing ploy to let them use a bigger number, much like the Athlon 4800+ which actually runs at 2500mhz.

Monitor sizes are quoted in diagonal measure, just as TVs have been for decades. This has worked well because the aspect ratio used to be constant at 4:3. But when we start playing with the shape of the screen, things get very different. If you have a 20” diagonal screen, at normal 4:3 aspect ratio, the screen is 16” across by 12” tall. This gives an area of 192 sq in. But if you have a 20” at 16:9, you get a screen that is indeed wider at 17.4”, but it’s also shorter, at 9.8”. This gives a screen area of only 170.9 sq in. That’s 11% less than the normal aspect ratio screen.

You can calculate the area of a screen by squaring the diagonal measure (20 * 20 = 400), then multiplying by 0.427 for widescreen, or 0.48 for normal 4:3. If you come across the somewhat unusual 16:10 ratio, it’s closer to widescreen, with the ratio being .449.

For a TV, especially if you like to watch movies in their original aspect ratio, widescreen makes sense. For computers, it doesn’t. Not only do you get less area, but the way that computer interfaces are designed, you usually lose space where you need it most: the top (title bar, menu bar, buttons) and bottom (status bar, taskbar) of the screen.

This is Ruby to easily calculate area of a screen given an aspect ratio and nominal diagonal. It’s both easier to type on the web than real math, and can be dumped directly into irb to do your own calculations. The diagonal measurement is the hypotenuse of the triangle. The height / width is the tangent, so we get the angle using arc tangent.

```def height(diagonal, aspect)
diagonal * Math.sin(aspect)
end
def width(diagonal, aspect)
diagonal * Math.cos(aspect)
end
def area(diagonal, aspect)
width(diagonal, aspect) * height(diagonal, aspect)
end
normal = Math.atan(3.0 / 4.0)
wide = Math.atan(9.0 / 16.0)
# area of a 17" 4:3 screen
area(17, normal)
=> 138.72
# area of a 17" 16:9 screen
area(17, wide)
=> 123.489614243323
#ratio of wide screen / normal
area(1, wide) / area(1, normal)
=> 0.890207715133531```