Let $k = \mathbb{F}_p$ be the finite field of order $p$, and let $V = k^m$ be a finite-dimensional vector space over $k$.
I would like to pick a random vector subspace of dimension 2. What random process achieves this explicitly? Does it generalize nicely to $d$-dimensional linear subspaces?
I know that Gaussian binomial coefficients will count them for me, but I actually want to pick one explicitly.
Simply pick random vectors $X_i$ uniformly until you get a family $(X_1,X_2,\ldots,X_k)$ of rank $d$.
Here is a better approach to generate a random basis uniformly :
Start with $B_0 = (e_1,\ldots,e_m)$ the canonical basis of $S_0 = V$. Pick uniformly randomly a nonzero vector $X_1 \in S_0$, find a nonzero coordinate of $X_1$ and replace the corresponding basis vector with $X_1.
You get a basis $B_1 = (X_1) \cup (e_2',\ldots e_m')$. Let $T_1 = Vect(X_1)$ and $S_1 = Vect(e_2',\ldots,e_m')$
To pick your second vector, add together a random vector $t_1$ uniformly from $T_1$ and a nonzero random vector $s_1$ uniformly from $S_1$, again, find a nonzero coordinate of $s_1$ and replace the corresponding $e_i'$ with $X_2 = s_1 + t_1$.
Now you have a basis $B_2 = (X_1, X_2) \cup (e_3'',\ldots,e_m'')$, and so on. Stop whenever you have enough vectors.