All congressional districts should be based on existing county lines. They tend to be compact and adjacent to other counties similarly drawn. Current congressional coverage is about 750,000 people. Each county more than that would be divided geometrically to include the required number. Each county less than that would be combined with an adjacent county until the required number is reached. Snakes, splotches, distant areas would all be prevented by this fair system.
We would have much better governance if congressmen needed to represent people of varying beliefs. As it is now I think there are only about 25 districts that are not extremely one way or the other. The writers of the constitution never dreamed that computers would be able to snake up and down individual roads, connecting voters and gerrymandering.
American citizens would probably vote for a constitutional amendment to require compact districts. Politicians, on the other hand, would never allow it.