Wednesday, February 13th, 2013

How to improve a government form (part 6)

A new version of the Homestead Exemption Application, now with fillable fields
It’s been a while since I’ve posted about government forms that can been improved (see earlier improvable government forms). Today’s such form comes to us from a repeat offender, the Montgomery County Auditor.

Their Homestead Exemption Application, which can be found on their informative Homestead page, is what you need to fill out if you are 65 or older or permanently disabled and want a reduction in property tax.

I guess it’d be ageist of me to speculate that perhaps most people 65 and older wouldn’t care whether the Acrobat form provided by the Auditor’s office had fillable fields, but I do know that others who complete this form on behalf of their clients wished the form were fillable. I was asked to make it so and did in a few minutes. Too bad the person who posted the original to the Auditor’s site didn’t think of doing that.

Wednesday, May 23rd, 2012

How to improve a government form website (part 5)

The Greene County Recorder website (click to embiggen) is a marvel of intriguing web design
Today’s government form that can be improved (see earlier improvable government forms) is actually not a form but rather a website, specifically the Greene County Recorder website, a site so rife with intriguing design choices that one might hardly know where to begin.

The document search page on the Greene County Recorder website, before and after
a tweak with Greasemonkey:

Before (with grey labels):

(click to embiggen)

After (with bold green ones):

(click to embiggen)

However, I do know where to begin, namely with the Document Search page. A co-worker came to me because he had a hard time seeing some of the result page’s labels, specifically those that are in light grey on a white background. This intriguing design choice isn’t just a matter of taste; it’s really rather difficult to read light grey on white.

Luckily the Interwebs offer us the ability to override web designers’s choices which we find “intriguing” (or with which we simply disagree). The tool that comes to mind for this job is Greasemonkey, an add-on originally for Firefox that allows web surfers to install or write scripts that change the look or behavior of a web page. Do you prefer Google Chrome? Greasemonkey user scripts are supported directly in Chrome. (Do you prefer IE? Why?! If you insist you can try this.)

You can find lots of Greasemonkey user scripts already written for popular websites, but I didn’t bother trying to find one for the Greene County Recorder website because, already having extensive experience with Javascript and CSS, I have no trouble rolling my own Greasemonkey scripts. This blog post is not intended to cover that topic fully (Google is your friend if you want to learn how) but rather is just to report on what I did about the Greene County Recorder website’s stupid choice of grey text on white.

An easy option for using Greasemonkey to change a web page’s appearance is to inject some custom CSS that overrides how certain elements appear. Luckily one smart thing the Greene County Recorder’s web designer did was to enclose each of the offensive grey labels in a SPAN tag tied to a particular CSS class: <span class="style1">. So all we have to do is change the CSS applied to the “style1” class. (Actually after I first tested this, I realized there was also one DIV with the “style1” class.)

So here’s a user script that changes all the style1 class SPANs and DIVs from light grey to bold and green (honoring the Greene County Recorder’s web designer’s overall choice of colors):

// ==UserScript==
// @name Fix grey labels on Greene County Recorder website
// @namespace
// @description Change formatting of style1 class SPANs on Greene County Recorder website
// @include*
// @include*
// ==/UserScript==

(function () {

var newstyle = "span.style1, div.style1 { color: #006400 ! important; font-weight: 900 ! important; font-size: 105% ! important; } ";


var ss = document.createElement("style");
var t = document.createTextNode(newstyle);

var root = (document.getElementsByTagName("head")[0] || document.getElementsByTagName("body")[0]);

If you too use the Greene County Recorder website and dislike their grey labels, you can install this Greasemonkey user script on your computer. If you”d prefer the grey labels be some color other than green or formatted in some other way, you can copy the script above and modify the line between the lines that say “EDIT ME” and “END EDIT ME.”

Thursday, September 22nd, 2011

How to improve a government form (part 4)

A new version of the Board of Review appeal form, now with fillable and calculating fields
Today’s government form that can be improved (see earlier improvable government forms) comes from a department of the Montgomery County Auditor, specifically the Board of Review, which has a handy form that you must complete if you wish to complain about the county’s valuation of your property. Except that the form that the Montgomery County Auditor provides isn’t quite as handy as it could be.

The auditor’s form would be handier, of course, if it had fillable fields (why any IT person, even one working for government, would post a PDF form to a website without making its fields fillable, I do not know), but if you take a closer look at the form, you might notice some ways in which the form could be even more user-friendly. Notice that the form has two sets of fields for parcel numbers — wouldn’t it be nice if, instead of the user’s having to copy and paste parcel numbers, the form automatically set the values of the second set of fields based on what was entered into the first set? Also, notice that some of the fields on the form require calculations. Making life easier for users by keeping them from having to copy and paste is one thing, but preventing mathematical errors is even more important, and something one might think the auditor would want.

Luckily both these tasks—automatically copying values from one set of fields to another and automatically calculating fields’ values based on the values of other fields—are easily accomplished in Adobe Acrobat. I don’t claim to be particularly intelligent just because I figured this stuff out—Google is my friend and should be yours (as well as the friend of any IT person whether working for government or elsewhere). I did feel inclined to post what I found here though to make Google even smarter and helpful to future Googlers looking to improve their government (and non-government) forms.

Calculate tab on field properties dialog box
Right-click on a field, choose “Properties”, go to the “Calculate” tab, click on “Custom calculation script” and click “Edit.”
Where you need to go to make a field smart is the “Calculate” tab on the field’s property dialog box. You’ll be doing a “Custom calculation script.”

To have a field’s value set automatically to the value of another field, use a formula such as this:

event.value = this.getField("Parcel_number1").value

In this example, “Parcel_number1” is the name I assigned to the first parcel number field on the form. Assigning names that mean something when you set up the fillable fields will make your calculations easier.

To calculate a field’s value automatically based on one or more other fields’ values, you might use a formula such as either of the following examples.

The first example:

if (this.getField("Fair_Market_Value1").value == 0) { event.value = ""; } else { event.value=this.getField("Fair_Market_Value1").value * .35; }

sets a field in Column B on the form to 35% of the value of the field in Column A, but it also checks to see whether the field in Column A actually has a value. Failing to do that would mean that the field in Column B would be set to 0.00, which is ugly if there’s no other data on that row.

The second example:

if (this.getField("Fair_Market_Value3").value == 0) { event.value = ""; } else { event.value=this.getField("Thirty_five_percent3").value - this.getField("Current_taxable_value3").value; }

is very similar to the first example but uses two fields’ values to calculate the value of a third.

Even if you’re not proficient in Javascript, you can copy examples and modify basic equations to match your needs, can’t you? Sure, it might take more of your time than simply printing a form to PDF and uploading it to your website, but think of all the time you’d be saving your users, and if you’re uploading a form to a government website, you’re a public servant, aren’t you, and so your job should be to serve the public by making things easier for them.

Bonus tip: If you need to pop between enabling the editing of form fields and going back to data entry so you can test your work, SHIFT-CTRL-7 is a handy keyboard shortcut.

Friday, July 1st, 2011

How to improve a government form (part 3)

A new version of the Request for Foreclosure Mediation form, now with fillable fields
Our latest government form that can be improved comes not from the Ohio Department of Jobs and Family Services (read about a JFS form in part 1 and part 2 of this series) but rather from the Snapshot of the Montgomery County Common Pleas Court forms page claiming all the forms are fillable
Put a claim like this on a web page and you might want to make sure to follow it
General Division of the Montgomery County Common Pleas Court, which has a rather interesting forms page.

What’s interesting about the Court’s forms page is that they grok an important feature of a good form, having fillable fields. We know they understand this because they make the claim that their “PDF forms are interactive and may be filled out electronically.” However, the very first three forms on the page of forms make this claim a lie.

The reason I discovered this is that a paralegal with whom I work asked me if I could fix one of the Court’s forms that she uses a lot, and of course I could and did, in about 5 minutes.

The Court deserves kudos for recognizing that their forms should be fillable and for the fact that all but three (unfortunately the very first three) of the forms they’ve posted are in fact fillable, but come on, whoever posted those three forms was really slacking. It takes very little time to make the forms fillable, and why would you post forms to a page that points out that all the forms are fillable without making sure that in fact is true?

Tuesday, June 21st, 2011

How to improve a government form (part 2)

If you’re just joining us, you might want to read yesterday’s post, “How to improve a government form (part 1),” that introduces the Ohio Department of Jobs and Family Services’s new JFS 84221 form.

As mentioned yesterday, something good about the new JFS form is that it’s in Microsoft Word format and set up as a fillable form. However, it seems that the fine folks at JFS could learn a thing or two about fillable forms in Word.

Also as mentioned yesterday, a challenge with the JFS 84221 form is having it competed in accordance with the government’s rules. One challenge in particular is correctly completing the “Number of people in househodl by age” section. Each age group must be completed; if a household has no members in a range, that group may not be left blank but instead must have “0” or “--” in it (nothing else is acceptable, not “none” or “N/A” or “X”). In addition, the total field must be filled in, and correctly (you might be surprised, or then again you might not, how many people cannot add).

Number of people in household by age as designed by JFS with dumb fields
“Number of people in household by age” section
as designed by JFS with dumb fields

What the JFS seems not to have realized (or perhaps they did but chose not to implement—more on that below) is that in Word all the above problems can be solved. Want to make sure that a field is always completed or has a default value? Want to do a total automatically? Word can do that!

To tell Word what you want to do, right-click on each of the fields to be changed (after you unprotect the document—see yesterday’s post to see how) and change the properties as shown below.

Properties for the total field

Properties for the age range fields
For each of the age range fields:

  1. Change the type to “Number”
  2. Set the default number to “0”
  3. In “Bookmark” give the field a meaningful name (this makes the total equation easier to understand)
  4. Check the “Calculate on exit” box

For the total field:

  1. Change the type to “Calculation”
  2. Change the expression to “=Number60+Number18+NumberBirth” (these field names should be whatever you used above)

Presto! You now have a JFS 84221 in Word that has household fields that cannot be left blank, filled in with anything but numbers or totaled incorrectly.

Number of people in household updated with smart fields
“Number of people in household by age” section updated with smart fields

There is one challenge with this updated form, which may well be the reason that JFS chose not to implement these features—if you print this form without filing anything in, you’ll get a hardcopy with “0” in each of the household fields, making it unsuitable for someone to complete by hand. If you need blank forms for people to write on, you’ll want the original form (or yesterday’s form that eliminates the temptation to sign in the wrong box).

However, something I’ve learned while managing Cross Creek’s Feeding Friends food pantry, is that you really don’t want to let clients fill out forms on their own. The rules for filling out the forms correctly are complicated, leaving you with the choices of pedantically making clients fill out new forms to correct mistakes (something that I see as disrespectful and that takes too long) or of having intake volunteers fill out the forms as they interview clients.

So why did I bother with improving JFS’s fillable form? Because, with the introduction of this new JFS 84221 form that takes effect in July, we’re going to have every single one of our clients complete new forms next month. To make that manageable, I and other Feeding Friends volunteers are going to use the new fillable form to enter our existing recent clients’s data, so the clients, unless they’ve had some change in address or household, won’t be bothered next month with completing new forms. They’ll each get a nice new form, pre-printed with their information, to sign (inside the “Signature” box).

Those of you who are savvy about Foodbank Dayton might well be asking, “Well what about the Virtual Case Manager software that was demonstrated at a recent Miami Valley Hunger Coalition meeting? If you were using that, wouldn’t you avoid all this hassle?” Maybe so, and I have some opinions about that, which I’ll share in another post.

Monday, June 20th, 2011

How to improve a government form (part 1)

A slightly improved version of Ohio’s
JFS 04221 form (in PDF format)

The Ohio Department of Jobs and Family Services has released a new version of their JFS 04221 form, Federal and State Funded Food Programs — Eligibility to Take Food Home. This is the form that people picking up food at government-subsidized food pantries have to fill out to affirm their eligibility. Because the food pantry I volunteer for (Feeding Friends, a program of Cross Creek Community Church) gets food for a fee from Foodbank Dayton, our clients are required to complete this form. As the Feeding Friends team leader, it’s part of my job to try to get our clients to fill the form out in accordance with the government’s rules, and that’s more difficult than you might think.

One of the difficulties is that the forms are not supposed to have any extraneous marks on them. No cross outs, no circling words on the form, etc. Something minor related to this is that people are supposed to sign the form inside the box that has the title of “Signature,” but very often people sign above that box. Poorly designed signature box Why? I guess because there’s such a tempting blank space above the “Signature” heading and then people are used to putting their signatures on a line that has the word “Signature” below it.

Yes, it should be obvious when filling out this form, after having put your name inside the box marked “Name” and your address inside the box marked “Address” and your city inside the box marked “City” that your signature should go inside the box marked “Signature,” but guess what? For many of the people filling out this form, it’s not obvious.

Fortunately this problem is really easy to fix—format the “I certify” text so that there’s no tempting blank space above the “Signature” box and people signing the form will have no alternative but to sign the form inside the “Signature” box. The JFS folks even distributed the new form in Microsoft Word format, which is why it’s easy to fix this problem, but they oh-so-cleverly password-protected it so that it couldn’t be altered.

Except that if you have access to the internet, the password is easily circumventable. As pointed out on the page “Can I crack a password protected Microsoft Word file?”, all you have to do is to save the file in XML format, open the XML file in a text editor, remove the <w:documentProtection> tag, save the file and then re-open it back in Word.

So here’s how I changed the signature block on our copy of JFS 04221:
Better designed signature box
People who get the form with this box won’t be signing above the line unless they decide to sign on top of printed text.

As mentioned above, JFS distributed their new form in Microsoft Word format, and they even set it up as a fillable form. However, that too has room for improvement, which will be part 2 of “How to improve a government form.”

Blog tools
Government forms (6)
AJ Wagner (2)
Amazon Kindle Fire (4) (2)
American Express (2)
American Family Association (3)
Amy Grant (2)
Berlin (4)
Books (15)
Candi Cushman (1)
ChMS (3)
Christianists (16)
Christianity (21)
Christmas (2)
COM101 (4)
Computer tips (20)
Conservatives (6)
Cross Creek Community Church (28)
Cute actors (4)
Dan Savage (3)
David Esrati (9)
Dayton (52)
Dayton Art Institute (3)
Dayton Christian High School (2)
Dayton City Paper (5)
Dayton Daily News (16)
Dayton Dialogue on Race Relations (4)
Dayton Gay Mens Chorus (11)
Dean Lovelace (3)
Derek (9)
Dick Chema (2)
Diversity Dayton (2)
Driving (4)
Drunkenness (6)
English (2)
Epiphany Lutheran Church (3)
Exodus (2)
Facebook (13)
Fairborn High School (6)
False prophets (2)
Feeding Friends (2)
Firefox (2)
Flash (2)
Frankfurt (3)
French films (3)
Gary Leitzell (11)
Gay (85)
Gay bars (2)
Geekiness (5)
German (3)
Germany (34)
Good Friday (3)
Google (2)
Grafton Hill (4)
Greasemonkey (2)
Greek Orthodox Church (2)
Hamburg (2)
Hebrew (3)
Issue 1 (5)
Joey D. Williams (2)
Köln (3)
Ken Blackwell (2)
Kiva (1)
Lüneburg (20)
Library (2)
München (2)
Mark Luedtke (1)
Marriage (23)
Mary Cheney (2)
Mazer (4)
MeetFred (3)
Microsoft (10)
Mike Turner (3)
Movies (14)
My stupidity (5)
Nan Whaley (1)
Natalie Barney (1)
Neon Movies (10)
Occupy Dayton (4)
Ohio (2)
Olive (2)
Oregon District (4)
Panera (7)
Park Layne (3)
Parking (5)
Parties (2)
Paul Noah (1)
Paul Pyle (4)
Photos (49)
Politics (36)
Proposition 8 (2)
Racism (3)
Remembering (34)
Republicans (4)
Reviews (9)
Scams (5)
Sean Harris (1)
Sirius (1)
Snow (6)
SPAM (5)
Stivers (2)
Teaching (6)
Telemarketing (3)
Tomatoes (2)
Travel (12)
TV Guide (2)
Typing (6)
Uncle Bill (10)
Verizon (5)
Web design (bad) (17)
Web hosts (4)
Whining (61)
Wright State University (6)
Writing (5)
Yellow Springs (2)