Hanging chads were a problem because we tried to use machine-readable ballots. That's the whole point.
Here's a better system: you go into the voting booth. They have some envelopes and stacks of preprinted ballots, each with one candidate's name. You take a ballot for the candidate you want, and put it in the envelope. Then you come out of the booth and drop the sealed envelope in a box.
After polls close, they open the box and all the envelopes, and count the ballots, in the open. Anyone can go watch. If an envelope is empty or has more than one ballot inside, the vote doesn't count.
> Here's a better system: you go into the voting booth. They have some envelopes and stacks of preprinted ballots, each with one candidate's name. You take a ballot for the candidate you want, and put it in the envelope. Then you come out of the booth and drop the sealed envelope in a box.
Works well for elections with one race; those with a dozen offices being elected and an equal number of ballot measures make that... impractical.
This is the system used in Germany, all votes are hand-counted. And it's also used for very complicated local elections that allow very fine-grained votes for individual candidates.
The size of the ballots isn't the issue; the issue with “provide pre-marked ballots from which the voter chooses the one matching their preferences and discards the rest” for multi-race elections is the number of pre-printed ballots that have to be given to each voter to take to the booth and select from.
With 5 offices with 6 candidates each and 10 yes/no measures (a fairly modest ballot for a California election) this would require each voter be handed a packet of nearly eight million ballots to choose from.
I don't know about that specific one but elections with complicated rules and multiple votes (where you can "kumulieren" and "panaschieren") are usually counted with the help of software where the election officers manually enter every ballot into the computer after inspecting it visually and have to trust that the displayed end result is correct (although there are some manual consistency checks).
Here's a better system: you go into the voting booth. They have some envelopes and stacks of preprinted ballots, each with one candidate's name. You take a ballot for the candidate you want, and put it in the envelope. Then you come out of the booth and drop the sealed envelope in a box.
After polls close, they open the box and all the envelopes, and count the ballots, in the open. Anyone can go watch. If an envelope is empty or has more than one ballot inside, the vote doesn't count.