One is the transpose of the other. I am not 100% sure, but I believe that OpenGL and directX use opposite conventions for row/column order.
I think the left matrix is OpenGL's style, and the right DX style.
You can move between the two by using rows as columns and columns as rows.
yeah that's right... for some reason a matrix representation in OpenGL is symmetric to the standard representation in DirectX and mathematics. So in DirectX (standard) Mij = OpenGL Mji. If you have the OpenGL Programming Guide (the red book) read page 106.
I almost forgot, you are wrong about the order. The left matrix that ttom wrote is the standard matrix form that DirectX also uses. The right matrix is the transpose of the the standard which OpenGL uses.
Really? One of my degrees is in mathematics and I've never used the matrix form on the right in school or in any of my textbooks. That's why I was calling the matrix on the left "standard".