Code for America Fellowship Reader 2015

An introduction to the pracitice of civic technology.

  1. What We Wanted To Do

    http://www.thisamericanlife.org/radio-archives/episode/61/transcript

    April, 1997 by Ron Carlson

  2. On Strategy: The strategy is delivery. Again.

    http://mikebracken.com/blog/the-strategy-is-delivery-again/

    January 6, 2013 by Mike Bracken

    I had the pleasure of working for Mike, at GDS, before I joined Code for America. When this man says "the strategy is delivery" he really means it. Above all else, there is a critical need to create better services for our users and we should never let anything stand in the way, be that policy or politics. - Frances

  3. Readme Driven Development

    http://tom.preston-werner.com/2010/08/23/readme-driven-development.html

    August 23, 2010 by Tom Preston-Werner

    Tom Preston-Werner’s 2010 advice on development driven by clearly-defined ideas saved in a README. - mike.

  4. Norris Numbers

    http://www.teamten.com/lawrence/writings/norris-numbers.html

    Lawrence Kesteloot, June 1, 2014

    Code for America’s fellowship specializes in the delivery of alpha-stage apps to government partners. A typical fellowship app should top out at 2,000 lines of code. Lawrence Kesteloot explains why. -mike.

  5. Enduring CSS: writing style sheets for rapidly changing, long-lived projects

    http://benfrain.com/enduring-css-writing-style-sheets-rapidly-changing-long-lived-projects/

    August 7, 2014 by Ben Frain

    CSS is the worst. It’s the weakest part of the front-end webstack, and it will save you pain later if you have some coping strategies in your back pocket. Future-you will be thankful. - Frances

  6. Cargo Cult CSS

    http://www.kapowaz.net/articles/cargo-cult-css

    October 21, 2013 by Ben Darlow

    Yo, don’t be dogmatic about markup and stylesheet syntax. Scroll to the bottom for some bare-bones guidelines on writing CSS well without swearing fealty to a particular methodology. - mike

  7. Web App Mistakes: Condemned to repeat

    http://isolani.co.uk/blog/standards/WebAppMistakesWeAreCondemnedToRepeat

    November 13, 2012 by Mike Davies

    Davies offers a heavily-opinionated take on client-side applications. A rule of thumb to remember for apps written while at CfA is that Internet Explorer 8 compatibility will be a requirement sooner or later. If you can skip script-based approaches and client-side loading complexity in favor of simple 1990s-age web techniques, do it. -mike.

  8. Why mobile web apps are slow

    http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/

    July 9, 2013 by Drew Crawford

    This is an article about mobile web apps, but we’re including it here because it’s also an article about the core complexity of interactive development with Javascript. Government partners are an especially difficult consumer of web apps written with client-side code, because they frequently use browsers as old as Internet Explorer 8. Do not attempt a browser upgrade campaign with your city. Instead, assume that your front-end interactive development will be harder than you estimate and degrade gracefully to plain HTML and server-side processes where you can. For another take on this topic, watch Alice Bartlett’s talk at EpicFEL 2014, “Burn Your Select Tags” (search for it on Youtube). -mike.

  9. The emperor’s new clothes were built with Node.js

    http://notes.ericjiang.com/posts/751

    June 4, 2014 by Eric Jiang

    Eric Jiang offers a caustic take on the weaknesses of Node.js. While Code for America encourages quick-turnaround experiments with a variety of languages and tools, we've found Node.js to be especially lacking in two important areas: the Node ecosystem is too reliant on quickly-changing conventions, and government partners don’t know how to cope with server-side Javascript.

    When in doubt:

    • Write code
    • Not too much
    • Mostly procedural

    -mike

  10. Why You Should Never Use MongoDB

    http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/

    November 11, 2013 by Sarah Mei

    We’re including this article to clarify why you should in fact never use MongoDB. Mongo’s strengths are typically described as its free-form, schema-free nature, but as you’ll learn from Sarah Mei’s essay this is also a serious weakness for your application. If you believe that you need an unstructured, key-value store for your application look into PostgreSQL’s JSON column store. -mike.

  11. Publishing Open Data – Do you really need an API?

    https://www.peterkrantz.com/2012/publishing-open-data-api-design/

    March 19, 2012 by Peter Krantz

    This piece may provide useful argument fodder for your conversations with partner governments. The decision to open government data is often assumed to be identical to the decision to adopt swishy new web platform features, but see Albuquerque’s open data portal for an example of a high-quality static file data site.

    See also Paul Ramsey’s What's so hard about that download? for a developer’s take. - mike.

  12. What's so hard about that download?

    http://blog.cleverelephant.ca/2012/12/whats-so-hard-about-that-download.html

    December 2, 2012 by Paul Ramsey

    Developer experience. Actually a pretty huge deal - while the author might not call it that, this is a detailed UX teardown of the data access process of one of the more advanced North American local governments. We need to figure out how to affect this, which isn't easy. - Cyd

  13. Stevey's Google Platforms Rant

    https://plus.google.com/+RipRowan/posts/eVeouesvaVX

    October 12, 2011 by Steve Yegge

    Steve Yegge’s platform rant was an instant classic when it leaked in 2011. Code for America fellowship projects aren’t expected to be platforms as part of the normal first-year experience, but it’s worth understanding what the ramp from fellowship prototypes to products and platforms looks like. - mike

  14. The Web Is a Customer Service Medium

    http://www.ftrain.com/wwic.html

    January 6, 2011 by Paul Ford

    This is as good a description as I've ever seen of the gulf that people have to cross to truly understand the impact of the internet on their business. Most of our government partners start the year on the far side of it, and finding ways to get them over it is critical work for fellowship teams. By and large, we've seen showing it work much better than saying it, as you might expect - but it's good to really ground yourself in what "it" is. - Cyd

  15. Coding, Fast and Slow: Developers and the Psychology of Overconfidence

    http://blog.hut8labs.com/coding-fast-and-slow.html

    April 22, 2013 by Dan Milstein

    Dan Milstein offers one of the strongest justifications for agile and lean software development, grounded in Daniel Kahneman’s psychology text “Thinking Fast and Slow”. In short: no one knows how to estimate software because writing code is identical to learning, so it’s best to use an approach that’s suited for unknown timescales and outcomes.

    “No Deadlines For You! Software Dev Without Estimates, Specs or Other Lies” is an excellent follow-up post to this one. - mike

  16. Slow Ideas

    http://www.newyorker.com/magazine/2013/07/29/slow-ideas

    Atul Gawande, July 29, 2013

    One of the most profound things I’ve ever read about how substantial innovations actually get traction (or don’t). It made me realize all over again the critical role that the Fellows play in the project of transforming government. Even when it feels rough, even when it feels like you’re making no progress (there will be some times like that), you’ll be doing the great and difficult work described in this piece. By being present, as friendly, trustworthy people who are there to help, you’ll be changing minds bit by bit, the entire year. - Cyd

  17. Organizational Skills Beat Algorithmic Wizardry

    http://prog21.dadgum.com/177.html

    June 19, 2013 by James Hague

  18. Let’s Respectfully Redesign Government

    http://www.codeforamerica.org/blog/2014/06/09/lets-respectfully-redesign-government/

    June 9, 2014 by Molly McLeod

    2014 Fellow Molly McLeod did a 1/2-hour unsolicited redesign of a government form that ended up on the front page of Reddit. Afterward, she reflected on good practice for crtiquing design in the government space. Extra good news: Molly is joining the CfA staff and will be around to geek out about this and all design-related topics. - Cyd

  19. A recipe for starting & prototyping new projects

    http://blog.memespring.co.uk/2014/07/27/starting-a-new-project-prototyping-a-recipe/

    Richard Pope, 27 Jul 2014

    This is far from the only way to start a project, but it’s a pretty darn decent sequence to take as a baseline. The critical thing is getting past the beautiful-soap-bubble idea stage as quickly as possible. I like the piece because Richard doesn’t just set that as a principle, he says exactly how he does it. - Cyd

  20. Usability Testing Demystified

    http://alistapart.com/article/usability-testing-demystified

    October 6, 2009 by Dana Chisnell

    An oldie but a goodie on one of the most basic and powerful practices of user-centered design. If you’ve never run a usability test or user research, this is a great overview of something we encourage every fellow to get involved in. If you’re already a pro, it’s still worth a re-read. By the way, Dana Chisnell has done a ton of this work in ballot design and other civic spheres. She recently joined USDS and I’ll be very surprised if we don’t see her at CfA HQ sometime in 2015.

    As a follow up, Smart Chicago has done tremendous work on how to recruit participants across neighborhoods and socio-economic classes, to make sure civic apps get tested and work for everyone. They wrote a book about it, available at http://www.cutgroupbook.org. - Cyd

  21. What's the design process at GDS?

    https://gds.blog.gov.uk/2014/07/18/whats-the-design-process-at-gds/

    July 18, 2014 by Ben Terrett

    I like to think that we’re similarly bullshit-free in the way we do design at CfA. We certainly strive to be. Fast, light, and flexible are the watchwords, and as Ben says, if it doesn’t work, we’ll change it. - Cyd

  22. Help Joy help you. On the unusability of internal systems

    http://www.disambiguity.com/help-joy-help-you/

    July 9, 2014 by Leisa Reichelt

    One thing you will quickly discover is that as bad as public-facing government technology can be, the internal tools used by public servants are often much worse. Often bad to the point of abusiveness, to be honest. Leisa Reichelt, the head of UX for Gov.UK, talks here about an experience she had where she came to grips with how hard a customer service person was working to paper over the shortcomings of the systems she worked with. Imagine how well she could help her clients if she wasn’t spending all her energy on clever and insane workarounds. You’ll meet a lot of dedicated public servants in February, and thinking about how you can help them be great at their jobs will be really important. - Cyd

  23. Designer Duds: Losing Our Seat at the Table

    http://mokriya.quora.com/Designer-Duds-Losing-Our-Seat-at-the-Table

    April 23, 2014 by Mills Baker

    Mills Baker writes a critical call-to-action laying a lot of responsibility at the feet of designers in this piece. Design is fundamentally central to everything we’re producing in the world and it’s where the rubber meets the road in the service/user interaction. When it comes to the business of delivering public services in particular, it’s not a ball we can afford to drop or step back from, and we must always, always, keep the users’ needs central to everything we do or risk failure. - Frances

  24. Tickets for Restaurants

    http://website.alinearestaurant.com/site/2014/06/tickets-for-restaurants/

    June 4, 2014 by Nick Kokonas

    There’s a really interesting phenomenon where something that has been online for a few years suddenly gets a revolutionary re-thinking. Our first attempts to bring a thing (weather forecasts, ticketing, whatever) into the digital space almost necessarily copy the old model, and it’s not until people have been using an online version for some time that someone realizes “hey, these are false constraints, we could do this completely differently”. It happened to weather a while ago and this article is about it happening to restaurant reservations. This means a couple of things - 1) look out for opportunities to make these shifts; 2) any time you bring things online you’re doing a critical, absolutely required step to actually making them better. - Cyd

  25. People, Not Data

    https://medium.com/@lippytak/people-not-data-47434acb50a8

    Jake Solomon, January 5 2014

    This is a terrific piece by 2013 Fellow Jake Solomon about his experience observing clients at the Food Stamps office in SF. It’s natural to get outraged by the conditions described here, but we include it partly to ask a more interesting question than “is this inexcusable?” (“yes”). The question is, what are the conditions affecting government organizations and public servants that lead them to accept such things as matters of course? (Of note, Jake didn’t join us as a UX person or a researcher; he just did this, with encouragement from me and his teammate Marc Hebert, and wrote about it.) - Cyd

  26. Healthcare.gov and the Gulf Between Planning and Reality

    http://www.shirky.com/weblog/2013/11/healthcare-gov-and-the-gulf-between-planning-and-reality/

    November 19, 2013 by Clay Shirky

    We'll hear more from the Healthcare dot gov team later this year, but this is a good elucidation of the management problem (it was just one among many). Testing & failure are some of the most sensitive issues with our partners, especially as the CfA Fellowship is a significant expense, requiring city council approval and oversight. And yet, there are tremendous risks to leaving these out of the conversation, as illustrated here. We've talked about this already in city onboarding, but nodding along to principles and learning to actually work this way are different things, and the latter is legitimately very very hard. We ask you to take a strong stand on the right way to work, while also holding a lot of empathy for the real reasons it may be hard for your partners. - Cyd

  27. the fixie federal IT paradigm

    http://feomike.github.io/post/fixie-federal-it-paradigmn.html

    July 12, 2014 by Mike Byrne

    Mike “Good Mike” Byrne has insights into government procurement that span his years at the Consumer Finance Protection Bureau, his input into the White House Open Data Policy, his time at the FCC, and his service to the State of California. He also happens to be a bike nerd with a keen understanding of how simplicity can win for government technology. - mike

  28. ETL for America

    http://daguar.github.io/2014/03/17/etl-for-america/

    March 17, 2014 by Dave Guarino

    This article is by a 2013 Fellow and describes what the main technical challenge inside government technology is right now. It’s not sexy, it’s not scalable, it’s not easy. ETL inside of your City hall is boring inglorious work, yet it is the job for right now. It’s up to you to get it right so those that come after you can do the fun work with ease. -Andrew

  29. Love Your Monsters: Why We Must Care for Our Technologies As We Do Our Children

    http://thebreakthrough.org/index.php/journal/past-issues/issue-2/love-your-monsters/

    Winter, 2012 by Bruno Latour

    "The environment is what appeared when unwanted consequences came back to haunt the originators of such actions.” Code for America’s environment is the world of government digital needs. We don’t want to replace it as modernists, or fearfully turn and run. The changes we make to this environment will need to be adopted and sustained into the future.

    For transit geeks, Bruno Latour’s “Aramis” (1993) is an excellent book-length mystery story of a failed Parisian personal rapid transportation system. - mike

  30. Code, the newsroom, and self-doubt

    http://veltman.tumblr.com/post/56132893301/code-the-newsroom-and-self-doubt

    July 22, 2013 by Noah Veltman

  31. On journalism and learning to code (again)

    http://veltman.tumblr.com/post/64900530026/on-journalism-and-learning-to-code-again

    February 18, 2014 by Dan Hon

    There are two worlds adjacent to government where code and design literacy is a hot topic: academic digital humanities and journalism. Here’s a report from the current status of the learn-to-code debate in the latter. -mike.

  32. Slow Food

    http://blog.geomusings.com/2014/07/29/slow-food/

    July 29, 2014 by Bill Dollins

    Government technology is an awkward combination of large and small. Enormous procurement contracts for millions of dollars in software mask systemic issues while tiny offices on shoestring budgets develop creative approaches to problems they can’t buy their way out of. GIS entrepreneur Bill Dollins talks about his history in food service to describe some of the differences between fast and slow operations. - mike.

  33. Episode Nineteen - Not Trying Is A Signal, Peak Game, EasyHard, SnapChat

    http://tinyletter.com/danhon/letters/episode-nineteen-not-trying-is-a-signal-peak-game-easyhard-snapchat

    February 18, 2014 by Dan Hon

    Code for America's Dan Hon starts to ask the hard questions in this edition of his newsletter. Why are Governments not trying harder to improve their services? -Frances

  34. Avoiding ‘words to avoid’

    https://insidegovuk.blog.gov.uk/2014/04/11/avoiding-words-to-avoid/

    April 11, 2014 by Lisa Scott

    Jargon: it’s a problem. Read on for GOV.UK’s take on banned jargon. - mike

  35. GDS Banned Words

    https://twitter.com/alicebartlett/status/491503367920050176

    July 22, 2014 via Alice Bartlett

  36. Time to end the jargon barrier

    http://www.ft.com/intl/cms/s/0/fde276d8-643f-11e4-bac8-00144feabdc0.html?siteedition=uk

    November 6, 2014 by Maija Palmer

    The Financial Times is a big anti-jargon campaigner. They normally do an end-of-year competition to find the worst examples. Here's a good example of jargon where simple language is clearer and can be undestood by everyone. Some of these examples, like "Digital Transformation" are still good shorthand for what we're trying to achieve - but still need to be explained. Remember: read over what you've written, and ask yourself: did I actually say what I meant? -- Dan

  37. Russell Davies

    Who is Russell Davies and how has he managed to get an entire section of articles to himself? That’s a good question. He works for the Government Digital Service in the UK and is the man to blame for the “simpler, clear, faster” slogan along with finding appropriate language to help civic servants understand their problem domain better and fulfil their remit. He rather modestly describes his job as “words and powerpoint”, but he has set the underlying tone for GDS’ work in an incredible way.

    Russell has an eye for the pointless. The time wasting. The complicated. He says little, but what he does say is simple and clear. Almost everything he writes is on-point and he is articluating the problems in government design in the best way I have seen. Here’s a selection of some of his articles. - Frances

  38. Deep Inside Taco Bell’s Doritos Locos Taco

    http://www.fastcompany.com/3008346/deep-inside-taco-bells-doritos-locos-taco

    May 1, 2013 by Austin Carr

    This super fun article details a relentless quest for innovation in something that doesn’t matter very much at all. The number of times the team bounces back from adversity, from failure, from total irrelevance, is astounding. May we all be this tenacious in pursuing better government and government technology!

    Also, for what happens when Taco Bell attempts to innovate in mobile apps, see The Chipotlification of American Fast Food by Adam Chandler http://www.theatlantic.com/business/archive/2014/10/the-chipotlification-of-american-fast-food/382167/. - Cyd