Hacker News new | past | comments | ask | show | jobs | submit login

You have no idea how complicated sending message to Members of Congress is.

There's no way to email legislators directly. The only way is to fill out their forms. Each form is unique, and many have CAPTCHAs.

To do that, we first had to develop an open source dataset that describes to a computer the steps necessary to submit messages via each contact form for 538 representatives. That was quite a lift, but was made possible by about 100 volunteers who chipped in. The dataset is called contact-congress, and is online here: https://github.com/unitedstates/contact-congress

Then we had to create a system to fill in the forms based on the dataset. The system we designed is called phantom-of-the-capitol and it does that by firing up 3 browser windows on an AWS instance each time a user submits a message. If the legislator has a CAPTCHA, we take a screenshot and return that to the user. The code for that system is here: https://github.com/EFForg/phantom-of-the-capitol




WOW! That is terribly bad then! You are very correct, I thought it was just some email account they had in their name, not something like that. Great work arounds for the captchas too, nice idea. Honestly, I never even new they had forms that you had to fill, I typically call them on the phone and don't bother with email.

Still though, any thoughts on using the eff phone integration here to also prompt users to call the congresscritter?

Awesome work. Sometimes it is nice to see how much hard work goes into some simple idea.


Wow that contact-congress data set alone is awesome. Thanks for doing that leg work!


Wow thanks for explaining, that's a lot of good work.


Ahh yes, unitedstates/contact-congress. I remember when I tried to contribute, several reps had multiple topics listed in a <select>, but the <option>'s value was the same for multiple topics and the tests kept failing.... good times




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: