opengovernment / askthem Goto Github PK
View Code? Open in Web Editor NEWMonitor and interact with local governments in the United States
License: GNU Affero General Public License v3.0
Monitor and interact with local governments in the United States
License: GNU Affero General Public License v3.0
Issue for 8(f) in dev roadmap. When a Q reaches threshold ::
a) If member has verified Twitter acc't, deliver over Twitter
b) if member does not have verified Twitter, display prompt to user to sumbit manually
If no response in a week, send reminder email. Enhancements after launch will include more specific reminders to staffpeople and administrative dashboards for verified responders & elected officials.
After logging in I always get kicked back to the home page.
Some standard practices:
When a new question is posted, should the person who asked it automatically be signed on to it? Right now, I can post a new question, and then sign on to it as a separate action.
Here's an example: http://oglocal.herokuapp.com/il/questions/520e9587e78e4bbf31000002
As discovered in #13, ballotpedia has changed their URLs for images of elected officials without putting a redirect in place.
Thus all of our Person#image results that rely on ballotpedia are wrong.
We have URLs recorded that look like this:
http://ballotpedia.org/wiki/index.php/Images/ElectedOfficialName.jpg
but ballotpedia.org has changed the URLs to look like this:
http://ballotpedia.org/wiki/images/c/c3/ElectedOfficialName.jpg
Good on them for getting rid of that terrible index.php. Too bad they didn't go the extra distance and put a redirect in place.
The correct way to solve this is to contact ballotpedia.org and ask them to put redirects in place.
Problems with other solutions:
Both of the above are still options and can have their issues addressed, but if we can get ballotpedia.org to do the right thing, that would be best.
Should be quick. Get to it if it is fast.
When you are signing up and you enter an email that matches a person, say "[email protected]" if you have the pa data in your system, you should get a "Are you ...?" checkbox with an accompanying avatar.
The avatar is width=100% and huge. If we could get it to match other avatars, that would be great.
Right now overview pages are incredibly slow for a number of reasons (missing indexes, too many queries, etc.).
The first and easiest thing to do is add pagination for the lower and upper (people) tabs.
Paginated tab content replacement is done via JavaScript calls, but doesn't see to be working either. Fix in the process.
Clicking on the 'sign on' button for a question should:
Prerequisite for #20
On pages for questions, e.g. ::
http://oglocal.herokuapp.com/ny/questions/51b7763e3be48a6507000003
... goal is to allow users to follow the Twtr acc't of the creator of the question/petition. This creates incentive to publish & share Q's.
When in the user registration process should we allow a user to choose to attach a Twitter profile to her account?
Should it just be on personal profile page, and prompted with an email asking them to flip the setting?
Or should it be an option during standard user registration - to attach a Twtr acc't?
The rake tasks for importing OpenStates JSON (lib/tasks/openstates.rake) currently require access to these private methods:
The rake tasks had been working but (presumably) stopped working with commit 9ac2e49
Looks like the recipient list is being triggered by a callback on the zip code field. This is bad UI, especially if I have an account and my address info is already populated.
If no response in a week to a question that has reached its threshold, send reminder email.
This same job could also be used to generate a follow-up tweet once #60 is implemented.
Enhancements after launch will include more specific reminders to staffpeople and administrative dashboards for verified responders & elected officials.
Relates to #21
May be specific to federal legislator avatars.
Transferred from an ops issue..
From either PVS or DemocracyMap, the latter of which links to ::
http://www.nga.org/cms/governors/bios
.. then display after address lookup on EITHER the state tab OR its own tab called Governors OR a third tab (after federal/state) called Other.
We can loop in Phil on this directly if we like, he can probably hand off this table.
Each person (i.e. potential recipient) should be able to have a signature threshold specific to them.
However, the default threshold for each is set by the type person the person is. I.e. a state senator will have his or her signature threshold set to the default for state senators until such time as it is set to a different value.
We're not going to have a web UI for setting the signature threshold at this point. If you need to set a person's signature_threshold, you'll have to do it via the application's console for now. We'll come back to a web UI when we tackle having site administrator specific functionality.
A building block for #20, #21, and other pieces of functionality.
8(e) in dev roadmap
Re: 9 on G-doc dev roadmap, implement design for verified responders / responses into HTML to be able to answer questions on a question page. cc @walter
User story for 8(b) on dev roadmap, re: follow-up emails.
Let's say a registered user has published a new Q. The app should immediately follow-up with an email saying, roughly ::
Thank you for posting your question to AskThem - here's a permalink to your question, which you can share over email and social media:
[link]
... remember to circulate your question to reach the signature threshold, and we'll help you push for a public response.
For more info about how to gather support for your question, please visit our FAQ:
[link]
Thank you,
[contact info]
... then in the future, we'll want to have another follow-up prompt as Change and others do, but this is sufficient for now.
On pages e.g. :: http://oglocal.herokuapp.com/ny/questions/new#state_address_lookup
... default to federal electeds after address lookup. Currently defaults to state.
You can use 148 Lafayette St. New York NY 10013, our office address, if you like.
In theory getting to the point that server side validation fails during questions#create and the user is given back the form to try again because client side validations should have prompted the user to fill things out correctly along the way.
However it can happen. For example #54.
So we need the create action to also use the correct layout as the new action does.
It would also be good to give a flash message that validation fails and list the errors.
Person id is being wiped out from form values when zipcode is entered for user.
This page is referenced in the email sent out when a new question is posted (#19). Sounds like it should include info 'For more info about how to gather support for your question'
@davidmooreppf content?
Requirements:
This is for Walter & Steve both -- goal is to finish styling the social sharing prompt when a Q is published. Right now that's not yet hooked-up.
Aim is to basically replicate petition sites, where when a question is previewed and the publish button is shared, to immediately pop-up a modal window above question page ::
http://oglocal.herokuapp.com/ny/questions/51eedf080724cd8621000007
... w/ elements for email sharing, FB sharing & Twtr sharing, as on Change ::
http://cl.ly/image/3w1x080X311z
... or on We The People ::
http://cl.ly/image/1E2F0u313K1p
... that's more understated.
Or SignOn ::
http://cl.ly/image/310Y1j3O1L1T
... I'm partial to that layout, I think. So does this go to Walter first, then Steve to style? Realize it needs copy, but some placeholder copy is fine for now.
Steps to reproduce:
Confirmable seems to be set in user model for devise. Is email sending not yet active on production? If so, this ops issue should be prioritized first
@davidmooreppf is this a page for taking donations? Please flesh out content here.
Requirements:
In the older layouts, there was a "Sign in" link and form on the right side of the page during the question creation process. In the newer process if you're not signed in and you get to the third step (the "Your profile" step) and already have an account, you basically have to go back to the home page, login and then start the process over again. I'd say that's a bit less than optimal. Since the form is intelligent enough to know that your email is already taken, could it just sign you in? (since you're putting a password, too) Or maybe you could either sign in or create a new account at that stage?
On the staging site, it looks like whenever a new question is created, the user that created it is not being recorded.
Issue for 7(a) on dev roadmap.
On splash page, an elected official can input her email address and select that she's an elected official. Site admins can then manually verify her email address is official gov't one, and activate her as a class of user that can answer questions addressed to her.
As we discussed, in the future we may build an administrative dashboard page of all questions to a verified user - but not nec. for launch.
On http://oglocal.herokuapp.com/ny/questions/new, I think we should try ::
a) Default to address lookup instead of Twitter field. I think most people won't know how to search by twitter name.
b) Change "Home Address" to "Enter Your Home Address". Change "Where You Live..." to "We'll find and display your elected officials".
c) Get rid of "address" above address text field. If it's in text field, that's sufficient, don't you think? Input welcome on this.
re: Twitter, we'll see where we stand with the lookup of verified accounts and / or name lookup.
set up a Twitter account for AskThem, and using a gem like this to hook in to the app.
If elected official has verified Twitter acc't, send @ message linking to question page.
Relates to #21
Overview and people pages can be sped up by adding appropriate indexes to Person model.
Add indexes for the following:
Just an issue for 6(c) on dev roadmap.
When a new user signs a question, she gets an email to confirm her registration, then a follow-up email to share that question with her social network to push for an answer.
Needs fleshing out.
Slide 29 (“User Dashboard”)
https://www.dropbox.com/s/tv22bmn22cpqpzx/OpenGoverment-Product-and-Strategy.pdf
Change “Your Representatives” to:
Brian J. O’Neill, Philly City Council, 10th District (R)
Michael Nutter, Philly Mayor, (D)
State Rep Brian Sims (D) District 182
State Sen Lawrence M. Farnese Jr. (D) District 1
US Rep Chaka Fattah, (PA 2nd district) (D)
Select “Questions You’ve Supported” instead of “Question’s You’ve Posted”
Replace the three questions we have on the slide now with ::
US Senator Lisa Murkowski (R)
Q: What do you see as your biggest accomplishments since you’ve been in the Senate?
How do your accomplishments compare to your campaign promises?
(712 supporters, progress bar should be nearly full, 95% complete, question by Lorena Andrus)
US Rep John Delaney (D)
Q: Will you support H.R.1114, the End Political Kickbacks Act of 2013?
The bill prohibits for-profit recipients of federal funds from making contributions to any political party, committee, or candidate for public office, or to any person for any political purpose or use.
(635 supporters, progress bar should be 85% full, question by Nelson Gresham)
US Rep Jamie Herrera Buetler (R)
Q: Do you support tying student loan interest rates to financial markets? If not, what would you do to lower student loan interest rates?
(2134 supporters, progress bar completely full, question by George McPeak)
Merge the database data to one database and take out code that handles the two databases in the application.
Issue for 9(a) on dev roadmap.
As we discussed, for launch - a logged-in verified user can visit a page of any Q to herself, whether it's reached threshold or not, and have ability to enter an answer.
Ideal would be to allow verified responder to reply in the body of an email, but that may not be necessary if it's time-intensive.
It is not necessary for verified users to be able to add answers on other pages of Q's that are not to them. They can simply add comments if they desire.
Placeholder for minimum info display - give users access to council meetings & agendas on a city overview page.
Two menu items up top somewhere. Goes to list of browsable meetings, in whatever .pdf viewing solution we decide. Includes comments.
Down the road, a great goal would be to display questions about an individ. agenda, but that's not MVP.
To be refined for @walter & @derekeder w/r/t specific content for Philadelphia.
Finish styling ::
@davidmooreppf could you flesh out what should go on it here?
Requirements:
SLIDE 14 (“Question and Response Page”) on ::
https://www.dropbox.com/s/tv22bmn22cpqpzx/OpenGoverment-Product-and-Strategy.pdf
smaller changes
On the side of this slide, let’s say 437 supporters with 139 needed.
change councilman to senator
change tag a, tag b, tag c to agriculture, farm bill, wyoming
change list of supporters to different random names, not anyone famous, random photos (David Owens, Julia Doran, Brittany Shaw, Mariko Ha, Juliana Rincon, Raj Indra, Nasser Saleh, Isadora Roski)
US Senator Mike Enzi
Q: What are your accomplishments and stances related to Wyoming farmers?
A: I have been working for Wyoming’s ranchers and farmers since before I came to the Senate. We scored major victories in 2008 with the passage of the new Farm Bill. This is the first Farm Bill to contain a specific livestock title to promote competition and fairness in agricultural markets. It included language to implement Country of Origin Labeling (COOL). COOL provides consumers with important information about the source of food and allows our livestock producers, who produce the highest quality meats in the world, to remain competitive in a growing global marketplace.
The 2012 drought has hurt many crops and threatens yields in 2013. I have worked with my colleagues in the Senate to ensure that producers have tools available to them to help mitigate risk when it comes to adverse weather and other agricultural disasters.
I was an original cosponsor of legislation that would lift a ban on interstate commerce by the U.S. Department of Agriculture's Food Safety and Inspection Service (FSIS) and ensure that meat that has been state-tested can be sold across state lines. We already allow meat from foreign countries to be sold in our nation based on a promise that those foreign nations’ standards are the same as ours. This law has prevented Wyoming producers from selling their beef or lamb across state lines in the past, even when our state standards are stronger than federal standards.
Wyoming’s livestock producers can compete in a fair market, but they are at a disadvantage now to the large meat packers. We still need to amend the Packers and Stockyards Act passed in 1921 to prohibit continually growing practices that allow meatpackers to manipulate cattle prices.
The 2012 Farm Bill also includes language that helps the nation’s investment in animal health programs by making brucellosis and other livestock diseases a high-priority research initiative in the U.S. Department of Agriculture.
For conservation, we’ve made significant improvements to the incentives and financial assistance offered to landowners who use the Environmental Quality Incentives and Conservation Reserve programs. I am especially pleased to see that the program offers additional assistance to beginning farmers and ranchers since we all know that one of the greatest challenges to the future of agriculture is attracting young people into the industry.
Wyoming’s farmers and ranchers are some of the best caretakers of the land and help preserve critical wildlife habitat. We must continue to provide voluntary incentives so Wyoming’s open space can be protected in perpetuity.
I have fought to open and keep open U.S. agricultural markets to other countries including Korea and Japan. As a member of the Senate Finance Committee, I will continue to work to ensure that the United States continues to improve its market share for Wyoming beef overseas.
I am also the sponsor of a bill the U.S. Senate passed for the ninth year in a row that honors the late Senator Craig Thomas and cowboys all over the nation. The bill designated July 27, 2013 as “National Day of the Cowboy.”
See new version announcement:
http://blog.plataformatec.com.br/2013/08/devise-3-1-now-with-more-secure-defaults/
It makes sense to try to do this before launch so that the new ways of handling confirmed users are in place from the start.
After we have finished moving to a single database and we have nailed down the steps for setting up a development environment, remove this script.
Issue for 9(b) on dev roadmap.
Whenever a Q receives a response, goal is to deliver email alerts to ::
We could differentiate b/w questions that reached threshold and were answered, as well as questions that are near threshold and may be answered by a verified responder, but that may not be possible for launch. Would be sweet though.
... DRM can write copy for subject heading & body.
Goal is to show elected officials how they'll look if they verify their account on the site.
So here, for example ::
http://oglocal.herokuapp.com/ny/people?type=Person
... let's take second person listed, Thomas Abinanti. Just at random at the top of the page.
Design-wise, I'd like him to have a fairly-big green check mark overlaid atop his profile photo. Bottom-right-ish of circle avatar, n'est-ce pas?
Hover-wise, it should read "AskThem Verified". Could be longer I guess, but that should work.
If it's easier than picking a real elected official, we could create a sample page of a sample legislator, some stock photo, unverified on the left & verified on the right. We can loop in Walter if need be.
These guys seem to be pushing on some of the same wheels we are. Definitely worth checking out: https://github.com/opencivicdata/municipal-scrapers-us
Can you grab these from the app? If not, I can get them, but I'd have to first look up street addresses in each state, and then query their pages on staging.
WA US Rep Jaime Herrera Beutler (R)
MD US Rep John Delaney (D)
NH State Sen Bob Odell (R)
AR State Sen Stephanie Flowers (D)
San Jose Councilwoman Madison Nguyen (non-partisan elections)
US Senator Deb Fischer (R)
Both mongod and redis-server must be running for the app to function properly. This should be reflected in the README.
@walter shall I go ahead and add?
Issue for 8(c) on dev roadmap. Currently, on a Q page, adding your signature in the right-hand column just redirects to staging site homepage.
Goal is to have signatures actually count and be reflected in a timely way on various question listing pages.
There are a couple wrinkles here, but the first one is - from the user's street address, we seek to differentiate two types of signers: constituents and non-constituents.
For a Q to a MA senator, any MA street address signer is a constituent. For a Q to mayor of Boston signed by a resident of Worcester, or San Francisco, signer is a non-consituent obvs.
On the front end we may not display this diff. in progress bar, but it's necessary on back-end. Some elected officials will require this info when responding to Q's and we need to have it accessible in the database: how many constituents have signed this Q. Some elected officials may only respond to Q's where 51% of signatures are from constituents.
We maybe only need to generate this query upon request by elected official, as opposed to every time a signature is added, but it needs to be possible - open to input. Can break this into two stories if you prefer Walter.
Right now we require new developers setting up a development version of the application to download the full OpenStates dataset (5Gb+) in order to get working.
Downloading the full dataset can take a long time (over 24 hours) and also takes up a lot of storage space for the developer.
Modify the openstates:json:download rake task (and the update task by extension) to take an ONLY environmental variable that specifies a comma separated subset of states to have data downloaded for.
This should dramatically speed up set up of a new development environment by say only downloading data for Pennsylvania.
Also adjust README and perhaps other rake tasks accordingly.
On second page, e.g. ::
http://cl.ly/image/3O2t0V1B0l0j
... the field lengths don't quite seem inviting.
Should the Summary field be a speech bubble, like a comic? Too cute?
Should Full Question field be default to display three full blank lines in the box, to show that the goal is to add more copy there than in the summary? Feels somehow crowded or restricted. Realize I could be more helpful here.
I'll take a stab at refining the help copy on right-hand side, viz. for diff. levels of gov't. Will be shorter.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.