The reason I’ve been putting in so many late hours since the first of the year is now live to the world. The new Cuyahoga County Board of Elections site is now live. Our whole group has done pretty much nothing but recode the site from the ground up since January 1st. I put together a site tour to show off all of the new bells and whistles, but I’ll touch on my favorites here.
My Voting Information
The My Voting Information page is a great one-stop-shop for personalized voting information, all of which is public record. If you enter your last name and date of birth you get detailed results concerning your polling location, ballot, district information, past election participation [not your votes, just the elections you’ve voted in], poll worker participation and community outreach events in your city. There’s even a Google map which will give you directions from your home to your polling location.
Election Results Wizard
The Election Results Wizard lets you follow only the races you’re interested in instead of having to scroll through the huge master results list.
Events Calendar
The Events Calendar lets you search for the events that you’re interested in, and only the events you’re interested in.
Validation, Accessibility
Working within the design constraints [not a big fan of having to use #EF3E42] and the constraints of the ASP.NET CMS was great for the most part. I’m still having fits trying to get the server to stop spitting out so much trash code, but I’ve learned a lot about styling within .NET itself. Despite that, I’m at a loss of what to do with the remaining validation errors since even the three images missing alt attributes are inaccessible because they aren’t hard-coded. I managed to give them title attributes, but can’t figure out the alt text trick. I’m trying to convince the developers to take the Google Map API key out of the web.config and put it back into the script where it typically is because ASP.NET doesn’t allow code blocks within the header. This means there are script references outside of the header. And, ASP.NET labels spit out everything between Update: I’ve whittled down the validation errors to one, the onClick attribute that’s called as a user control for the site search. That’s definitely one for a developer to look at. The alt attributes were inserted by using a text=”” attribute in the asp:hyperlink line. I’m used to a text attribute actually spitting out text, so that wasn’t an intuitive choice for me. The Google API isn’t called until someone actually clicks on a directions link, so there are now no scripts outside of the header, and all those span tags can be gotten rid of by using ASP:Literal elements instead of ASP:Label ones. That simple switch cleaned up about 80% of the trash code that I was seeing upon viewing source. I’m learning even more. Maybe I’ll even learn some programming here in a bit. tags which the validator also chokes on because block-level elements can’t be contained within inline elements.
There might be a better way to go about this, but I’ve not had the chance to take an ASP.NET course yet, and it is new hat to the developers as well. Those guys are friggin’ heroes though, no doubt.
In accessibilityland, unfortunately the site is heavily dependent on JavaScripts. There isn’t really anything I can do about that as a designer, and most of the interactive items depend on it. I made sure to provide access keys and tab indexing where it would be helpful and we’re now providing an accessibility statement, at least. There is always more to be done, but the honest truth is that accessibility becomes a low priority when the limits of time, money and interest are more concerned with other things. On the bright side, the new site is worlds better than the old one for those who use alternative browsing methods.
The End
In the end I hope that [as cheesy as it sounds] my work on the BOE site will help improve the electoral process and experience for folks in Cuyahoga County. Although I say so myself, the Cuyahoga County Board of Elections site is the best board of elections site I’ve seen. I hope it influences others to step up their game as much as the Web Group at the ISC has these past two months.
Time for a beer.
Very nice.
Thanks for your hard work, Adam.
It was really easy to find my voting info, and a bit worrisome to find I’m listed as Party: “X”.
Is that a checkmark or an undefined?
I’m an X too. That’s the value that the DB returns for folks who’ve never declared a party affiliation.
Hmm.
From the FAQ : “a person’s political party affiliation is determined by choosing to vote a party ballot at a partisan Primary Election.”
So, I can vote in a party’s Primary on Tuesday without having previously registered for that party…?
that’s not cheesy, it’s awesome.
Yup,
You can declare a party affiliation at the polls, and you can switch affiliation at the polls at every primary if you so choose. At least, that’s how I understand it. Or you can just vote on the issues if you don’t want to declare a party. That’s what I’m going to do.
Looks great, but I about plotzed when the site wouldn’t acknowledge me and called me “unregistered” — I called and in less than 5 was told that I was, indeed registered.… *whew!*
Yeah, the voter database isn’t up-to-the-minute.
looks great adam, can’t wait vote!