The problem seems to be because you are treating (0, 0) as the bottom left; in OpenGL (0, 0) is the center of the screen.
To say this is counter-intuitive is silly, it is fully your opinion to say so.
I presume you have a 50x50 window you are trying to fill?
To get your desired behaviour you would need the following:
glBegin(GL_QUADS);
glVertex2i(-1, -1); // bottom left
glVertex2i( 1, -1); // bottom right
glVertex2i( 1, 1); // top right
glVertex2i(-1, 1); // top left
glEnd();
and a diagram
(-1, 1)--------------------------(1, 1)
----------------------------------------
-----------------(0,0)-----------------
----------------------------------------
(-1,-1)------------------------(1, -1)