  Random linear codes (RLCs) are well known to have nice combinatorial
properties and near-optimal parameters in many different settings. However,
getting explicit constructions matching the parameters of RLCs is challenging,
and RLCs are hard to decode efficiently. This motivated several previous works
to study the problem of partially derandomizing RLCs, by applying certain
operations to an explicit mother code. Among them, one of the most well studied
operations is random puncturing, where a series of works culminated in the work
of Guruswami and Mosheiff (FOCS' 22), which showed that a random puncturing of
a low-biased code is likely to possess almost all interesting local properties
of RLCs.
  In this work, we provide an in-depth study of another, dual operation of
random puncturing, known as random shortening, which can be viewed equivalently
as random puncturing on the dual code. Our main results show that for any small
$\varepsilon$, by starting from a mother code with certain weaker conditions
(e.g., having a large distance) and performing a random (or even pseudorandom)
shortening, the new code is $\varepsilon$-biased with high probability. Our
results hold for any field size and yield a shortened code with constant rate.
This can be viewed as a complement to random puncturing, and together, we can
obtain codes with properties like RLCs from weaker initial conditions.
  Our proofs involve several non-trivial methods of estimating the weight
distribution of codewords, which may be of independent interest.
