We define a new product on orbits of pairs of flags in a vector space over a field k, using open orbits in certain varieties of pairs of flags. This new product defines an associative Z-algebra, denoted by G(n,r). We show that G(n,r) is a geometric realisation of the 0-Schur algebra S0(n,r) over Z, which is the q-Schur algebra Sq(n,r) at q=0. A pair of flags naturally determines a pair of projective resolutions for a quiver of type A with linear orientation, and we study q-Schur algebras from this point of view. This allows us to understand the relation between q-Schur algebras and Hall algebras and to construct bases of q-Schur algebras. Using the geometric realisation, we construct idempotents and multiplicative bases for 0-Schur algebras. We also give a geometric realisation of 0-Hecke algebras and a presentation of the q-Schur algebra over a ground ring, where q is not invertible.