Descent is a method of obtaining information about the set of rational solutions to a system of polynomial equations. The idea which goes back at least to Fermat is to replace the given system with finitely many other systems that are more complicated but less likely to have solutions. Geometrically, one is replacing the variety defined by the original equation with a finite collection of unramified coverings with the property that a rational point on the original variety must lift to a unique covering. Often, elementary means can be employed to show that none of the coverings have rational points. There is an algorithm which computes such a covering set, but for a generic plane quartic curve the naïve approach requires working over a number field of degree 1.4 million. Building on ideas of Bruin-Poonen-Stoll, I will describe how by using ramified coverings one can bring this down to 28 (making actual computations feasible). A key role in establishing correctness of the algorithm is played by "generalized jacobians" introduced by Lang and Rosenlicht in the context of geometric class field theory.