Creating a deviation table from a GPS.
Some GPS devices let you set headings to magnetic. I have a Garmin GPS 76: it lets you set the heading to magnetic, and it automatically adds (subtracts) variation. You can also manually input the variation.
I''ll plan on using my GPS 76 to check my compass deviation (another to-do item). It definitely seems like like the most economical alternative.