Closed jswest closed 9 years ago
@gabeisman, here's the etc gallery homepage with gifs so you can see what multiple gifs would look like. http://etc-gallery.com/
On Sat, Nov 8, 2014 at 8:44 PM, John West notifications@github.com wrote:
A note on this PR
This shouldn't be merged yet, as there is still work to do, but I wanted to create a PR where we could talk through the design and architecture of this new interactive and the new homepage structure. Ports the "Narrow Practice" interlude
In response to #53 https://github.com/Etc-Gallery/knock-at-the-gates/issues/53, this creates an interlude that used to be called "Unusual Punishment", but its first name was DPIC map, as it is, in fact, a map of the DPIC data. What this does:
- A straight port of the interlude from the dab-interludes repo. I had to finagle a few things, but mostly it was clean.
- A reproducible pattern for generating the data in the right form, provided you have the correct data input.
- A .md file that explains how I got this data and how it is merged.
What this doesn't yet do:
- Add the initial text, which will be written by @Galenlbeebe https://github.com/Galenlbeebe.
- Do the calculations necessary for @Galenlbeebe https://github.com/Galenlbeebe to create that initial text. Viz., what percentage of executions are accounted for by what number or percentage of counties.
New design elements for the "homepage"
In response to #54 https://github.com/Etc-Gallery/knock-at-the-gates/issues/54 I created a quasi-homepage, though the interactives and essays will still be situated in a single-page-with-scroll setup. What this does
- Adds a hamburger dropdown menu
- Adds a primary navigation underneath the first narration pane and before the stream of interactives and essays. Each navigable interactive or essay will have an animated .gif or static image that shows what you'll see as well as the title and subtitle of the interactive.
What this doesn't yet do
- Fix the copy for the first narration pane so that it doesn't reference a single interactive.
- Do much of anything nicely. There's a lot that could be DRYed up, and even more that's just hackey and gross, especially in the app.js file. I tried to mark a couple of places with // TODO comments, but there might be more. I don't want to deploy until @GabeIsman https://github.com/GabeIsman has had time to take a peek and make sure nothing is too gross.
Questions
- @GabeIsman https://github.com/GabeIsman, what do you think about this? Will we suffer a performance hit if we have all these interactives lined up in a row? At some point, should we start lazy-loading them based on the user's location? (FWIW, I don't think we'll need to do that, yet.
- @Galenlbeebe https://github.com/Galenlbeebe & @GabeIsman https://github.com/GabeIsman, should we add design elements to encourage scrolling? Particularly after the first narration pane, it sees like the user will need some prompting.
- @GabeIsman https://github.com/GabeIsman & @Galenlbeebe https://github.com/Galenlbeebe, do you think the animated .gif effect will be too crazy when there are multiples on the page?
A basic single-page architecture
Really piggybacks on what @GabeIsman https://github.com/GabeIsman did before. It's a little gross, but it works, and I think I get to close #55 https://github.com/Etc-Gallery/knock-at-the-gates/issues/55 when we merge this in. Questions
- @GabeIsman https://github.com/GabeIsman, if you think we're going to have UX or performance problems with the interactives/essays all in a scroll, then we'll have to change this, but what do you think?
You can merge this Pull Request by running
git pull https://github.com/Etc-Gallery/knock-at-the-gates narrow-practice-interlude
Or view, comment on, or merge it at:
https://github.com/Etc-Gallery/knock-at-the-gates/pull/77 Commit Summary
- adds the hamburger button and dropdown menu.
- adds the scripts and the data for the narrow practice interlude.
- adds markup fro the primary-nav, and adds markup for the new interlude.
- adds the scripts and styles and vendor dependencies for the new interlude.
File Changes
- A data/interludes/a-narrow-practice/counties.csv https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-0 (473)
- A data/interludes/a-narrow-practice/counties.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-1 (1)
- A data/interludes/a-narrow-practice/raw/counties/clean-fips.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-2 (1)
- A data/interludes/a-narrow-practice/raw/counties/dpic-counties-with-counts.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-3 (1)
- A data/interludes/a-narrow-practice/raw/counties/dpic-counties.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-4 (1)
- A data/interludes/a-narrow-practice/raw/counties/fips.csv https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-5 (3236)
- A data/interludes/a-narrow-practice/raw/counties/fips.csv.md https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-6 (22)
- A data/interludes/a-narrow-practice/raw/counties/nonstandard-dpic-county-names.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-7 (1)
- A data/interludes/a-narrow-practice/raw/dpic/dpic-corrected-counties.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-8 (1)
- A data/interludes/a-narrow-practice/raw/dpic/dpic.csv https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-9 (1380)
- A data/interludes/a-narrow-practice/raw/dpic/dpic.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-10 (1)
- A data/interludes/a-narrow-practice/raw/maps/us-10m.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-11 (1)
- A data/interludes/a-narrow-practice/raw/maps/us-10m.topo.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-12 (1)
- A data/interludes/a-narrow-practice/us.topo-index.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-13 (1)
- A data/interludes/a-narrow-practice/us.topo.json https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-14 (1)
- M public/css/style.css https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-15 (38)
- A public/images/last-words.gif https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-16 (0)
- M public/js/app.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-17 (75)
- A public/js/interludes/a-narrow-practice.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-18 (148)
- M public/js/interludes/last-words.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-19 (2)
- A public/js/vendor/topojson.min.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-20 (530)
- M public/main.min.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-21 (3)
- M public/main.min.js.map https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-22 (2)
- A public/scss/_a-narrow-practice.scss https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-23 (65)
- M public/scss/_header.scss https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-24 (3)
- M public/scss/_last-words.scss https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-25 (65)
- M public/scss/style.scss https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-26 (56)
- A scripts/interludes/a-narrow-practice/build.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-27 (37)
- A scripts/interludes/a-narrow-practice/clean-county-names.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-28 (100)
- A scripts/interludes/a-narrow-practice/dpic-to-json.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-29 (38)
- A scripts/interludes/a-narrow-practice/isolate-dpic-counties.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-30 (74)
- A scripts/interludes/a-narrow-practice/merge-counts-and-fips.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-31 (70)
- A scripts/interludes/a-narrow-practice/readme.md https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-32 (43)
- A scripts/interludes/a-narrow-practice/standardize-dpic-counties.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-33 (67)
- M server.js https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-34 (10)
- M views/index.html https://github.com/Etc-Gallery/knock-at-the-gates/pull/77/files#diff-35 (52)
Patch Links:
- https://github.com/Etc-Gallery/knock-at-the-gates/pull/77.patch
- https://github.com/Etc-Gallery/knock-at-the-gates/pull/77.diff
— Reply to this email directly or view it on GitHub https://github.com/Etc-Gallery/knock-at-the-gates/pull/77.
I think the gif's should be fine, not too concerned about that.
I AM concerned about the scrolling structure of this. IMO we should not put any interactives on the home page (similar to the etc gallery home page). We are already suffering from the performance of that (pretty laggy on my macbook air, which I think is mostly due to svg blur). I think the lined up interactive thumbnails indicate a click-to-view structure. There is no indication that scrolling would do what it does.
I would rather see click-only interactions where clicking a thumbail takes you to a new view (same page) that has ONLY the interactive on it. Click the page title to get back to the home page. Interactive thumbails show up underneath each interactive to aid navigation.
I'll take a quick pass through the code as it stands on this branch and make any changes that seem super necessary. I'll also take a stab at the multi-view approach.
Made an initial pass at one way we could basic multi-view style setup. It's buggy.
Fixes the multi-view style setup by implementing a "router" of sorts.
A note on this PR
This shouldn't be merged yet, as there is still work to do, but I wanted to create a PR where we could talk through the design and architecture of this new interactive and the new homepage structure.
Ports the "Narrow Practice" interlude
In response to #53, this creates an interlude that used to be called "Unusual Punishment", but its first name was DPIC map, as it is, in fact, a map of the DPIC data.
What this does:
What this doesn't yet do:
New design elements for the "homepage"
In response to #54 I created a quasi-homepage, though the interactives and essays will still be situated in a single-page-with-scroll setup.
What this does
What this doesn't yet do
// TODO
comments, but there might be more. I don't want to deploy until @GabeIsman has had time to take a peek and make sure nothing is too gross.Questions
A basic single-page architecture
Really piggybacks on what @GabeIsman did before. It's a little gross, but it works, and I think I get to close #55 when we merge this in.
Questions