happyjack27 / autoredistrict

Programmatically makes a fair congressional district map (prevents gerrymandering)
GNU General Public License v3.0
89 stars 15 forks source link

Achieve 20% test coverage #40

Open carlschroedl opened 8 years ago

carlschroedl commented 8 years ago

We need to ensure that the app works and continues to work as it grows. Insert all normal reasons for testing here. We could do 20% in terms of line coverage, or branch coverage, either is good with me; this is just a milestone on a march to a more stable codebase. Should probably use JUnit to run the tests. I'm not sold on any particular tool to measure coverage. I've heard coveralls is cool.

happyjack27 commented 8 years ago

i'd like to focus on enhancements and bug fixes now. (not so concerned about #32 though, that can wait.) i made a "To do - priority" category.

On Fri, Jan 29, 2016 at 8:56 AM, Carl Schroedl notifications@github.com wrote:

We need to ensure that the app works and continues to work as it grows. Insert all normal reasons for testing here. We could do 20% in terms of line coverage, or branch coverage, either is good with me; this is just a milestone on a march to a more stable codebase. Should probably use JUnit to run the tesets. I'm not sold on any particular tool to measure coverage. I've heard coveralls is cool.

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40.

carlschroedl commented 8 years ago

As a prospective contributor, I would like to work on enhancements and bug fixes too, but I cannot do so quickly and confidently without reading large swaths of the codebase and performing tiresome error-prone manual tests. Deferring implementation of tests defers the ability of others to effectively contribute to this project. If not now, then when should we implement this very modest test coverage goal?

carlschroedl commented 8 years ago

I suspect that prospective users (legislature, judicial committee, citizen committee, etc.) will be reluctant to adopt this software without positively awesome test coverage.

happyjack27 commented 8 years ago

i assure you their reluctance will be for reasons not nearly as sophisticated.

On Sun, Jan 31, 2016 at 3:03 PM, Carl Schroedl notifications@github.com wrote:

I suspect that prospective users (legislature, judicial committee, citizen committee, etc.) will be reluctant to adopt this software without positively awesome test coverage.

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177609978 .

happyjack27 commented 8 years ago

test coverage is something that seems to me will take a long time.

automatic tests are more error-prone than manual tests, since they only cover a small subset of what can go wrong. all changes must be manually tested. every individual feature addition or what-not should be manually tested immediately. automatic tests are no substitute for this.

Deferring implementation of tests does NOT defer the ability of others to effectively contribute to this project.

i will be happy to guide you through the code. (one thing that would be nice is a sort of map of the code.)

i'd like to get the priority items out of the way, as this software is being used now and it is a waste of users time to not get those finished. these will also help you get comfortable with the code. pick one and i can guide you through and answer any questions.

On Sun, Jan 31, 2016 at 3:19 PM, Kevin Baas happyjack27@gmail.com wrote:

i assure you their reluctance will be for reasons not nearly as sophisticated.

On Sun, Jan 31, 2016 at 3:03 PM, Carl Schroedl notifications@github.com wrote:

I suspect that prospective users (legislature, judicial committee, citizen committee, etc.) will be reluctant to adopt this software without positively awesome test coverage.

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177609978 .

carlschroedl commented 8 years ago

This is how I felt when I read "automatic tests are more error-prone than manual tests": wow

What is so spectacularly special about this project that makes it immune from mainstream software best practices?

carlschroedl commented 8 years ago

Sorry, I'm frustrated about our differences of opinion. Lest this spiral out of control, I want to I thank you for your offer to guide me through the code. I re-iterate my thanks to you for working on this project in the first place.

happyjack27 commented 8 years ago

nothing at all.

there's nothing special about "software best practices", either. just because they are "best practices" doesn't mean they're good ideas or that they are always top priority.

appeal to population holds no sway. http://skepdic.com/adpopulum.html

decisions are to be made by a rational and specific consideration of specific merits, not whether or not they are popular.

On Sun, Jan 31, 2016 at 3:36 PM, Carl Schroedl notifications@github.com wrote:

This is how I felt when I read "automatic tests are more error-prone than manual tests": [image: wow] https://camo.githubusercontent.com/8ed7faf225f52396b659a560fd7023a8a27397b6/68747470733a2f2f692e696d6775722e636f6d2f4b424e635a682e6a7067

What is so spectacularly special about this project that makes it immune from mainstream software best practices?

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177621565 .

happyjack27 commented 8 years ago

if you want to work on the test case thing, go right ahead. i'm just saying that I have other priorities right now, and I'm happy to help you get your feet wet.

On Sun, Jan 31, 2016 at 3:44 PM, Kevin Baas happyjack27@gmail.com wrote:

nothing at all.

there's nothing special about "software best practices", either. just because they are "best practices" doesn't mean they're good ideas or that they are always top priority.

appeal to population holds no sway. http://skepdic.com/adpopulum.html

decisions are to be made by a rational and specific consideration of specific merits, not whether or not they are popular.

On Sun, Jan 31, 2016 at 3:36 PM, Carl Schroedl notifications@github.com wrote:

This is how I felt when I read "automatic tests are more error-prone than manual tests": [image: wow] https://camo.githubusercontent.com/8ed7faf225f52396b659a560fd7023a8a27397b6/68747470733a2f2f692e696d6775722e636f6d2f4b424e635a682e6a7067

What is so spectacularly special about this project that makes it immune from mainstream software best practices?

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177621565 .

carlschroedl commented 8 years ago

Ok. Thanks for clarifying. I want to be clear that I'm not advocating for increasing test coverage because it's popular. I'm drawing on experience from dozens of enterprise projects in which testing has been a worthwhile investment. The automated tests ensured that the software was correct and continued to be correct as features were added, removed and refactored. I view the correctness of this software as equally or more important than an enterprise app, so I want to make a dent in test coverage to increase assurance that the software functions correctly, and continues to do so. I'm glad that you would welcome such contributions. I understand that you are not interested in accomplishing that task right now.

happyjack27 commented 8 years ago

yeah, i think that's accurate. and i do recognize the value of automated tests and i like it, and i welcome that and appreciate it.

On Sun, Jan 31, 2016 at 3:58 PM, Carl Schroedl notifications@github.com wrote:

Ok. Thanks for clarifying. I want to be clear that I'm not advocating for increasing test coverage because it's popular. I'm drawing on experience from dozens of enterprise projects in which testing has been a worthwhile investment. The automated tests ensured that the software was correct and continued to be correct as features were added, removed and refactored. I view the correctness of this software as equally or more important than an enterprise app, so I want to make a dent in test coverage to increase assurance that the software functions correctly, and continues to do so. I'm glad that you would welcome such contributions. I understand that you are not interested in accomplishing that task right now.

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177629289 .

carlschroedl commented 8 years ago

Awesome! Thanks! Also, I'm glad to hear that we have some communication with a user group. I'd like to learn more about them!

happyjack27 commented 8 years ago

Well, sounds like 1 at the moment, but it's a big one. This site: http://www.fairvote.org/ and this organization: https://en.wikipedia.org/wiki/FairVote They are a nation-wide organization focused on advocating for multi-member districts. (I think they're focus is a little broader, but that's their main focus right now, i believe.) Staff of 11, according to wikipedia.

their senior policy analyst got in touch with me a few months ago. they want to use the software to design districts for all 50 states, and they're planning on doing a write up on it, at the bare minimum in their blog: http://www.fairvote.org/blog_hub So it's potentially huge press.

they like the program for it's focus on fairness. when they first contacted me, the program could do multi-member, but not the way they wanted, they wanted some 5 seat districts and some 3 seat districts in the same map. so i added that in for them along with a few other tweaks. they've since provided a few more suggestions which you can see on the board. i think it's an awesome relationship - very mutually beneficial. it occurs to me that redistricting all 50 states probably would be impossible for an organization that size without this software. state governments often spend millions to redistrict just one state. (where all that money goes, your guess is as good as mine. suffice it to say if they're bidding it out i'd be happy to be the lowball bidder.) anyways, any time we can save fairvote, multiply that by 50.

On Sun, Jan 31, 2016 at 4:50 PM, Carl Schroedl notifications@github.com wrote:

Awesome! Thanks! Also, I'm glad to hear that we have some communication with a user group. I'd like to learn more about them!

— Reply to this email directly or view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-177646326 .

Noreaster76 commented 1 year ago

I assume this issue still applies, correct?

happyjack27 commented 1 year ago

I don't even know what it means. You're welcome to work towards it.

On Tue, Oct 17, 2023, 9:13 AM Gabe Heafitz @.***> wrote:

I assume this issue still applies, correct?

— Reply to this email directly, view it on GitHub https://github.com/happyjack27/autoredistrict/issues/40#issuecomment-1766507915, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAPM2QLHHD4GJ5LVHJYEV4LX72HCBAVCNFSM4BZ5BMNKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCNZWGY2TANZZGE2Q . You are receiving this because you commented.Message ID: @.***>