My Fun Cleveland Vacation

In October I visited Cleveland, Ohio for a long weekend and had a really lovely time. I'm looking forward to visiting Cleveland again for PyCon North America 2018, or even before that. I have talked to a few people who ordinarily like going to PyCon NA but have assumed Cleveland's not a fun place to visit. Early bird tickets for PyCon are nearly gone so now's a good time for me to tell you about the great time I had, even though I have been quite lax on photo taking, sorting, processing, and posting.

Cleveland Hostel room I came into town on Amtrak (which arrives way early in the morning) and took a cab to my lodging. I stayed at the Cleveland Hostel and stayed in a giant room (with a loveseat and a desk!) in a walkable restaurant district for pretty cheap. All the common areas, including the bathrooms, were clean and had what I needed. I had some deadlines to hit so I spent a bunch of that first day in my room on the wifi.

Cleveland skyline at nightMy friend Mike Pirnat swung by that night and we ate at a Burmese place, I think, in the Ohio City neighborhood near the hostel. We got some ice cream, watched an in-progress glassblowing workshop, and walked around a little, then he drove me around so I could see the city by night, and taught me a bit of the geography. Mike is a far better photographer than I am and someday you will see his photos from this weekend and I will sort of noiselessly point there and move my head in some complicated fashion indicating that you should look at his superior photos, not my snapshots.

Cleveland Arcade skylight and upper floors

The next day was super packed -- Ernest W. Durbin III was my guide. He took me to Johnny Mango for breakfast, then we went on a walking tour of the downtown. Oh wow. The Cleveland Arcade, the grocery store that used to be a bank (where we ate lunch in the deli and marveled at its atrium), so much beautiful architecture and interesting history! I think this is also where I noticed Cleveland has a bikeshare, quite a bit of cool public art, and of course, to my New York City ears, ridiculously low prices for food and lodging. (I believe the walking tour guide mentioned luxury condos right in the heart of the city that go for as much as $1,500 a month, then rushed to say that they do come with various concierge-type perks. I was reminded of where I was.)

Reddy Kilowatt at Midwest Railway Preservation SocietyErnest drove us to an open house and tour at the Midwest Railway Preservation Society where Ernest, Mike, and I got to see a ton of old trains and ride for a bit in a vintage railcar. (For a few hundred bucks, at MRPS, you can get trained and spend an hour running a diesel locomotive. I am interested in figuring out how to do this when I return to Cleveland in the spring.) We met up with Ernest's spouse Kaitlin and went to an art exhibit I had thought sounded interesting. It turned out to be pretty small but the curator was happy to show us the art warehouse in the back where they store pieces not currently on display and pieces being restored! So that was neat.

An Internet acquaintance of mine, Catherine Kehl, met up with us, and a subset of us went to eat pastries nearby, then to eat and drink at the Fairmount since it had been recommended by strangers on MetaFilter. I enjoyed my soft pretzel and beer cheese. Catherine gave some of us an impromptu tour of a science lab she runs at Case Western Reserve University (home of the Michelson-Morley experiment!), and I realized I was wiped and called it a night instead of heading to a folk concert.

Steps-near-blue-henThe next morning, Mike picked me up bright and early so we could head to ride a local scenic railway. We got there a little early and walked around the canalway at a local park a bit, then boarded the vintage train and got to ride around a bit. The Cuyahoga Valley Scenic Railroad runs a bunch of different trains through the national park -- if you really wanted your PyCon corporate party to be lavish and memorable you could rent a private railcar which, goals.

Then, after a tasty lunch at The Oak Barrel, we went hiking and saw a couple of waterfalls: Blue Hen and Brandywine. Gorgeous scenery and pleasant exercise -- lots of rock-hopping across streams, which I love.

Brandywine Falls closeup

Cleveland and Lake ErieMike, his family, and I saw a bit of the sunset over Lake Erie at a lakefront park, and then he joined my friend Catherine at dinner with me at an Indian place near Case Western. And then the next morning I took the local bus to the Greyhound station and the Greyhound to Pittsburgh and saw some other friends.

A few more photos I enjoy as reminders of the trip:

Heils Block Ohio City

Interior of the Cleveland Arcade

Ohio pride flag

Approximately all of my photos of myself or my friends came out horrible so I am not inflicting those pictures on you or on us. Thanks to my Cleveland friends and acquaintances for showing me a good time, to acquaintances who gave me tips, and to the contributors to the Wikivoyage guide to Cleveland for useful tips.

And you can buy your ticket to attend PyCon in Cleveland right now and I believe the early bird rate is still available: Corporate for $550 USD, Individual for $350 USD, and Student for $100 USD.

My Fun Cleveland Vacation

In October I visited Cleveland, Ohio for a long weekend and had a really lovely time. I'm looking forward to visiting Cleveland again for PyCon North America 2018, or even before that. I have talked to a few people who ordinarily like going to PyCon NA but have assumed Cleveland's not a fun place to visit. Early bird tickets for PyCon are nearly gone so now's a good time for me to tell you about the great time I had, even though I have been quite lax on photo taking, sorting, processing, and posting.

Cleveland Hostel room I came into town on Amtrak (which arrives way early in the morning) and took a cab to my lodging. I stayed at the Cleveland Hostel and stayed in a giant room (with a loveseat and a desk!) in a walkable restaurant district for pretty cheap. All the common areas, including the bathrooms, were clean and had what I needed. I had some deadlines to hit so I spent a bunch of that first day in my room on the wifi.

Cleveland skyline at nightMy friend Mike Pirnat swung by that night and we ate at a Burmese place, I think, in the Ohio City neighborhood near the hostel. We got some ice cream, watched an in-progress glassblowing workshop, and walked around a little, then he drove me around so I could see the city by night, and taught me a bit of the geography. Mike is a far better photographer than I am and someday you will see his photos from this weekend and I will sort of noiselessly point there and move my head in some complicated fashion indicating that you should look at his superior photos, not my snapshots.

Cleveland Arcade skylight and upper floors

The next day was super packed -- Ernest W. Durbin III was my guide. He took me to Johnny Mango for breakfast, then we went on a walking tour of the downtown. Oh wow. The Cleveland Arcade, the grocery store that used to be a bank (where we ate lunch in the deli and marveled at its atrium), so much beautiful architecture and interesting history! I think this is also where I noticed Cleveland has a bikeshare, quite a bit of cool public art, and of course, to my New York City ears, ridiculously low prices for food and lodging. (I believe the walking tour guide mentioned luxury condos right in the heart of the city that go for as much as $1,500 a month, then rushed to say that they do come with various concierge-type perks. I was reminded of where I was.)

Reddy Kilowatt at Midwest Railway Preservation SocietyErnest drove us to an open house and tour at the Midwest Railway Preservation Society where Ernest, Mike, and I got to see a ton of old trains and ride for a bit in a vintage railcar. (For a few hundred bucks, at MRPS, you can get trained and spend an hour running a diesel locomotive. I am interested in figuring out how to do this when I return to Cleveland in the spring.) We met up with Ernest's spouse Kaitlin and went to an art exhibit I had thought sounded interesting. It turned out to be pretty small but the curator was happy to show us the art warehouse in the back where they store pieces not currently on display and pieces being restored! So that was neat.

An Internet acquaintance of mine met up with us, and a subset of us went to eat pastries nearby, then to eat and drink at the Fairmount since it had been recommended by strangers on MetaFilter. I enjoyed my soft pretzel and beer cheese. My new Internet friend gave some of us an impromptu tour of a science lab she runs at Case Western Reserve University (home of the Michelson-Morley experiment!), and I realized I was wiped and called it a night instead of heading to a folk concert.

Steps-near-blue-henThe next morning, Mike picked me up bright and early so we could head to ride a local scenic railway. We got there a little early and walked around the canalway at a local park a bit, then boarded the vintage train and got to ride around a bit. The Cuyahoga Valley Scenic Railroad runs a bunch of different trains through the national park -- if you really wanted your PyCon corporate party to be lavish and memorable you could rent a private railcar which, goals.

Then, after a tasty lunch at The Oak Barrel, we went hiking and saw a couple of waterfalls: Blue Hen and Brandywine. Gorgeous scenery and pleasant exercise -- lots of rock-hopping across streams, which I love.

Brandywine Falls closeup

Cleveland and Lake ErieMike, his family, and I saw a bit of the sunset over Lake Erie at a lakefront park, and then he joined my friend Catherine at dinner with me at an Indian place near Case Western. And then the next morning I took the local bus to the Greyhound station and the Greyhound to Pittsburgh and saw some other friends.

A few more photos I enjoy as reminders of the trip:

Heils Block Ohio City

Interior of the Cleveland Arcade

Ohio pride flag

Approximately all of my photos of myself or my friends came out horrible so I am not inflicting those pictures on you or on us. Thanks to my Cleveland friends and acquaintances for showing me a good time, to acquaintances who gave me tips, and to the contributors to the Wikivoyage guide to Cleveland for useful tips.

And you can buy your ticket to attend PyCon in Cleveland right now and I believe the early bird rate is still available: Corporate for $550 USD, Individual for $350 USD, and Student for $100 USD.

Software Freedom Conservancy Fundraiser

Become a Conservancy Supporter!

I am a supporter of the Software Freedom Conservancy, a nonprofit that helps free and open source software projects. They help programmers give away their work for free. I wrote a quick neighbor-friendly introduction to what they do (video version) a few years ago, and everything in it still applies.

In case you don't want to watch/read that: Conservancy is a nonprofit umbrella (a fiscal sponsor), helping projects like Git, homebrew, Wine, Selenium, and others by taking care of legal and financial paperwork on their behalf. They're also the institutional home of Outreachy, which gives underindexed people in tech paid apprenticeship-style internships to help them start their open source software careers. And they make sure big companies actually follow the rules, legally, so everyone can benefit the same from the openness of open source.

Right now, they have a challenge match going: "All donations up to [USD] $75,000 will be matched dollar for dollar until January 15." And they're about $5,500 from reaching that goal -- we can push it over the top! Conservancy's part of the unsung infrastructure of inclusivity and fairness in open source and in the larger tech industry, and I hope those of you who can will chip in a bit.

2017 Sumana In Review

Four years ago, during my first batch at the Recurse Center, every day I'd write in a little notebook on the subway on my way home, jotting down a few bullet points about what I had learned that day. I found it helped in a variety of ways, and the keenest was that on bad days, reviewing my notes reminded me that I was in fact progressing and learning things.

On any given day in 2017 I often did not feel very happy with my progress and achievements and how I was using my time. I fell ill a lot and I was heartsick at the national political scene and current events. It is genuinely surprising to me to look back and take stock of how it all added up.

Adventures:

I went hiking in Staten Island and in the Hudson Valley. I got back on my bike and had some long rides, including on a canal towpath in New Jersey and over the Queensboro bridge. (And had my first accident -- a car in my neighborhood rear-ending me at a traffic light -- and thankfully escaped without damage or injury.) I learned how to bake bread. I got to meet Ellen Ullman OMG. And I tried to travel less than I had in previous years, but I still had some fine times in other places -- notably, I had a great time in Cleveland, I witnessed the total solar eclipse in Nashville, and I visited Charlotte, North Carolina (where, among other things, I visited the NASCAR Hall of Fame).

Community service:

I did some of the same kinds of volunteering and activism that I'd done in previous years. For instance, I continued to co-organize MergeSort, participated in a fundraising telethon for The Recompiler telethon, signal-boosted a friend's research project to get more participants, and helped revitalize a book review community focusing on writers of color. Also, I served again as the auctioneer for the James Tiptree, Jr. Literary Award fundraising auction at WisCon, which is a particularly fun form of community service. The Tiptree Award encourages the exploration & expansion of gender. I wrote this year about what an award does, and the reflections I've seen from winners of the Tiptree Awards and Fellowships tell me those honors are doing the job -- encouraging creators and fans to expand how we imagine gender. This year I also deepened my commitment to the Tiptree Award by accepting the organization's invitation to join the Tiptree Motherboard; I am pleased to have helped the award through a donation matching campaign.

But the big change in my community service this year was that I tried to prioritize in-person political work. I called, emailed, and wrote postcards to various government officials. I participated in my local Democratic Club, including going door-to-door petitioning to get my local city councilmember onto the ballot for reelection.

And I found that I could usefully bring my technologist perspective to bear on the city and state levels, especially regarding transparency in government software. I spoke to my local councilmember about my concern regarding public access defibrillator data (the topic that led me to file my first-ever Freedom of Information Law requests, for government health department records) and this inspired him to sponsor a bill on that topic. (Which is now filed as end-of-session partly because of the limbo in potentially getting PAD data from NYC's open data portal -- I need to send an email or two.) I was invited to speak to a joint committee of the New York State Assembly on the software side of our forensics labs, and got particularly interested in this aspect of due process in our criminal justice system, publicizing the issue in my MetaFilter posts "'maybe we should throw an exception here??'" and "California v. Johnson". I testified before the Committee on Technology of the New York City Council on amendments to our open data law (I didn't prep my public comment, so this text is reconstructed from memory; video), and then spoke before the same committee on an algorithmic accountability measure (and publicized the bill, especially keeping the Recurse Center community apprised as best I could). And I did research and outreach to help ensure that a state legislature hearing on protecting the integrity of our elections included a few researchers and activists it wouldn't have otherwise.

In 2018 I want to continue on this path. I think I'm, if not making a difference, making headway towards a future where I can make a difference.

Work:

This was by far Changeset Consulting's busiest year.

I had a mix of big projects and smaller engagements. First, some of the latter: I advised PokitDok on developer engagement, with help from Heidi Waterhouse. For Open Tech Strategies, I wrote an installation audit for StreetCRM. And, working with CourageIT, I came in as a part-time project manager on a government health IT open source project so the lead developer could focus more on architecture, code, and product management.

Some larger and longer projects:

Following a sprint with OpenNews in December 2016 to help write a guide to newsrooms who want to open source their code, I worked with Frances Hocutt to create a language-agnostic, general-purpose linter tool to accompany that guide. "The Open Project Linter is an automated checklist that new (or experienced but forgetful) open source maintainers can use to make sure that they're using good practices in their documentation, code, and project resources."

I spent much of the first half of 2017 contracting with Kandra Labs to grow the Zulip community, helping plan and run the PyCon sprint and co-staffing our PyCon and OSCON booths, running English tutoring sessions alongside Google Summer of Code application prep, and mentoring an Outreachy intern, along with the usual bug triage, documentation updates, and so on. We wrapped up my work as Zulip's now such a thriving community that my help isn't as needed!

From late 2016 into 2017, I've continued to improve infrastructure and documentation for a Provider Screening Module that US states will be able to use to administer Medicaid better (the project which spurred this post about learning to get around in Java).

And just in the last few months I started working on two exciting projects with organizations close to my heart. I'm thrilled to be improving HTTPS Everywhere's project workflow for developers & maintainers over the next few months, working with Kate Chapman via Cascadia Technical Mentorship (mailing list announcement). And, thanks to funding by Mozilla's open source grants program and via the Python Software Foundation, the Python Package Index -- basic Python community infrastructure -- is getting a long-awaited overhaul. I'm the lead project manager on that effort, and Laura Hampton is assisting me. (Python milestone: my first time commenting on a PEP!)

Along the way, I've gotten a little or a lot better at a lot of things: git, bash, LaTeX, Python (including packaging), Sphinx, Read the Docs, Pandoc, regular expressions, CSS, the Java ecosystem (especially Gradle, Javadocs, Drools), the Go ecosystem, Travis CI, GitHub Pages, Postgres, sed, npm Linux system administration accessibility standards, IRC bots, and invoicing.

Talks And Other Conferences:

This year, in retrospect, instead of doing technical talks and expository lectures of the type I'm already good at, I played with form.

At LibrePlanet 2017 I gave the closing keynote address, "Lessons, Myths, and Lenses: What I Wish I'd Known in 1998" (schedule, video, in-progress transcript). I tried something aleatoric and it worked pretty well.

At Penguicon 2017 I was one of several Guests of Honor, and spoke in several sessions including "Things I Wish I'd Known About Open Source in 1998" (which was different from the LibrePlanet version, as intended) and "What If Free and Open Source Software Were More Like Fandom?" (further links).

Then, at PyGotham, Jason Owen and I co-wrote and co-starred in a play about management and code review: "Code Review, Forwards and Back" (video on YouTube, video on PyVideo, commentary).

I also attended Maintainerati and led a session, attended !!Con, worked a booth for Zulip at OSCON, attended PyCon and helped run Zulip's sprint there, and co-sponsored a post-PyGotham dinner.

Other Interesting Things I Wrote:

I did not write this year for magazines; my writing went into this blog, MetaFilter, Dreamwidth, microblogging, and client projects, mostly. I also wrote an entry for a local business competition (I didn't make it very far but I'm glad I did it, especially the finance bits) and started two book proposals I would like to return to in 2018.

I've mentioned already some of the posts I'm happy about. Some others:

"On Noticing That Your Project Is Draining Your Soul" (every once in a while someone emails me and mentions that this has helped them, which means a lot)

"How to Teach & Include Volunteers who Write Poor Patches" (12 things you can do)

"Inclusive-Or: Hospitality in Bug Tracking", a response to Jillian C. York and Lindsey Kuper.

I turned part of "Some posts from the last year on inclusion" into "Distinguishing character assassination from accountability", a post about pile-on culture and callout culture where I pulled out quotes from 11 writers on how we take/charge each other with responsibility/power within communities.

I loved Jon Bois's 17776 and discussed it with other fans on MetaFilter, and then, to try to understand its amazingness better, wrote "Boisebration", collecting links to fiction and nonfiction by Bois about class, feminism, aging, sports, politics, wonder, education, & art (and 17776 precursors/callbacks).

I found out about Robert E. Kelly, like so many did, when his kids crashed his BBC interview, then collected some links in a MetaFilter post about his writing on Korea, US foreign policy, international relations, and academia.

I wrote up a bit about "1967's most annoying question for women in Catholic ministry" on MetaFilter to signal-boost another Recurser's cool project.

I enjoyed the learning and the plot twist in "The programmer experience: redundancy edition", in which I discovered a useful resource for Form 990 filings and learned to use the Arrow library for Python date-time manipulation. And was grateful to Pro Publica.

And I made a few jokes on social media I particularly liked:

yesterday, was trying to explain virtual environments/containers/VMs to a friend and said "they range from Inception-style fake computers to putting a blanket on the floor and pretending it's lava"

and

today a friend and I explained leftpad & Left Shark to someone and I began sketching out a hypothetical HuffPo piece connecting them
We habitually crowdsource infrastructure from, expect unsupportedly high levels of performance from unsuspecting participants -> popcorn.gif

Public notice I received:

I got some public attention in 2017 -- even beyond the Guest of Honor and keynote speaker honors and my amazing clients -- that I would like to list, as long as I'm taking an inventory of 2017.

I rode the first revenue ride of the new Q train extension in Manhattan and really loved the art at the new 72nd Street MTA stop. A journalist interviewed me about that on video and my experience got into the New York Times story about the opening.

Presenters at the code4lib conference said their project was specifically motivated by my code4lib 2014 keynote "User Experience is a Social Justice Issue" (written version, video). I was honored and humbled.

And -- this is out of place but I need to record it -- as someone who knew Aaron Swartz, I consented to be interviewed by artists working on a play about him, and so someone briefly portrayed me (as in, pretended to be me and repeated my words aloud) in that play, Building a Real Boy.

Finally, Hari Kondabolu looked at the English Wikipedia page about him, much of which I contributed, and was amazed at how thorough it was. So that was awesome and I was proud.

Habits:

I got on Mastodon as part of my effort to improve how I use social media. I started using a new task tracker. I got back on my bike, and got somewhat into a habit of using it for some exercise and intra-city travel. A new friend got me into taking more frequent photos and noticing the world I'm in. Two new friends caused me to look for more opportunities to see musicians I love perform live.

Watched/listened:

I consumed a fair bit of media this year; didn't get into new music but enjoyed music podcasts "I Only Listen To The Mountain Goats" and "Our Debut Album". I did some book and reading reviews and will catch up to other 2017 reading sometime vaguely soon.

Leonard's film roundups & TV spotlights are a good way to see or remember most of what I saw</a> in the last few years. TV highlights for me for 2017 are The Good Place, Jane the Virgin, The Great British Baking Show (which led me to write a tiny Asimov fanfic), Steven Universe, and Better Call Saul; I also saw Comrade Detective and Yuri!!! On Ice. Films I'm really glad I saw: The Big Sick, Schindler's List, Get Out (I fanned in MetaFilter Fanfare), In Transit, A Man For All Seasons, Hidden Figures, and Lemonade -- and a rewatch of Antitrust.

Social:

I made a few new friends this year, most notably Jason Owen and Mike Pirnat. My friends Emily and Kris got married and I got to hold up part of the chuppah for them. I took care of some friends at hard times, like accompanying them to doctor's visits. I got to see some friends I rarely see, like Mel Chua and Zed Lopez and Zack Weinberg, and kept up some old friendships by phone. My marriage is better than ever.

This year I shall iterate forward, as we all do.

2017 Sumana In Review

Four years ago, during my first batch at the Recurse Center, every day I'd write in a little notebook on the subway on my way home, jotting down a few bullet points about what I had learned that day. I found it helped in a variety of ways, and the keenest was that on bad days, reviewing my notes reminded me that I was in fact progressing and learning things.

On any given day in 2017 I often did not feel very happy with my progress and achievements and how I was using my time. I fell ill a lot and I was heartsick at the national political scene and current events. It is genuinely surprising to me to look back and take stock of how it all added up.

Adventures:

I went hiking in Staten Island and in the Hudson Valley. I got back on my bike and had some long rides, including on a canal towpath in New Jersey and over the Queensboro bridge. (And had my first accident -- a car in my neighborhood rear-ending me at a traffic light -- and thankfully escaped without damage or injury.) I learned how to bake bread. I got to meet Ellen Ullman OMG. And I tried to travel less than I had in previous years, but I still had some fine times in other places -- notably, I had a great time in Cleveland, I witnessed the total solar eclipse in Nashville, and I visited Charlotte, North Carolina (where, among other things, I visited the NASCAR Hall of Fame).

Community service:

I did some of the same kinds of volunteering and activism that I'd done in previous years. For instance, I continued to co-organize MergeSort, participated in a fundraising telethon for The Recompiler telethon, signal-boosted a friend's research project to get more participants, and helped revitalize a book review community focusing on writers of color. Also, I served again as the auctioneer for the James Tiptree, Jr. Literary Award fundraising auction at WisCon, which is a particularly fun form of community service. The Tiptree Award encourages the exploration & expansion of gender. I wrote this year about what an award does, and the reflections I've seen from winners of the Tiptree Awards and Fellowships tell me those honors are doing the job -- encouraging creators and fans to expand how we imagine gender. This year I also deepened my commitment to the Tiptree Award by accepting the organization's invitation to join the Tiptree Motherboard; I am pleased to have helped the award through a donation matching campaign.

But the big change in my community service this year was that I tried to prioritize in-person political work. I called, emailed, and wrote postcards to various government officials. I participated in my local Democratic Club, including going door-to-door petitioning to get my local city councilmember onto the ballot for reelection.

And I found that I could usefully bring my technologist perspective to bear on the city and state levels, especially regarding transparency in government software. I spoke to my local councilmember about my concern regarding public access defibrillator data (the topic that led me to file my first-ever Freedom of Information Law requests, for government health department records) and this inspired him to sponsor a bill on that topic. (Which is now filed as end-of-session partly because of the limbo in potentially getting PAD data from NYC's open data portal -- I need to send an email or two.) I was invited to speak to a joint committee of the New York State Assembly on the software side of our forensics labs, and got particularly interested in this aspect of due process in our criminal justice system, publicizing the issue in my MetaFilter posts "'maybe we should throw an exception here??'" and "California v. Johnson". I testified before the Committee on Technology of the New York City Council on amendments to our open data law (I didn't prep my public comment, so this text is reconstructed from memory; video), and then spoke before the same committee on an algorithmic accountability measure (and publicized the bill, especially keeping the Recurse Center community apprised as best I could). And I did research and outreach to help ensure that a state legislature hearing on protecting the integrity of our elections included a few researchers and activists it wouldn't have otherwise.

In 2018 I want to continue on this path. I think I'm, if not making a difference, making headway towards a future where I can make a difference.

Work:

This was by far Changeset Consulting's busiest year.

I had a mix of big projects and smaller engagements. First, some of the latter: I advised PokitDok on developer engagement, with help from Heidi Waterhouse. For Open Tech Strategies, I wrote an installation audit for StreetCRM. And, working with CourageIT, I came in as a part-time project manager on a government health IT open source project so the lead developer could focus more on architecture, code, and product management.

Some larger and longer projects:

Following a sprint with OpenNews in December 2016 to help write a guide to newsrooms who want to open source their code, I worked with Frances Hocutt to create a language-agnostic, general-purpose linter tool to accompany that guide. "The Open Project Linter is an automated checklist that new (or experienced but forgetful) open source maintainers can use to make sure that they're using good practices in their documentation, code, and project resources."

I spent much of the first half of 2017 contracting with Kandra Labs to grow the Zulip community, helping plan and run the PyCon sprint and co-staffing our PyCon and OSCON booths, running English tutoring sessions alongside Google Summer of Code application prep, and mentoring an Outreachy intern, along with the usual bug triage, documentation updates, and so on. We wrapped up my work as Zulip's now such a thriving community that my help isn't as needed!

From late 2016 into 2017, I've continued to improve infrastructure and documentation for a Provider Screening Module that US states will be able to use to administer Medicaid better (the project which spurred this post about learning to get around in Java).

And just in the last few months I started working on two exciting projects with organizations close to my heart. I'm thrilled to be improving HTTPS Everywhere's project workflow for developers & maintainers over the next few months, working with Kate Chapman via Cascadia Technical Mentorship (mailing list announcement). And, thanks to funding by Mozilla's open source grants program and via the Python Software Foundation, the Python Package Index -- basic Python community infrastructure -- is getting a long-awaited overhaul. I'm the lead project manager on that effort, and Laura Hampton is assisting me. (Python milestone: my first time commenting on a PEP!)

Along the way, I've gotten a little or a lot better at a lot of things: git, bash, LaTeX, Python (including packaging), Sphinx, Read the Docs, Pandoc, regular expressions, CSS, the Java ecosystem (especially Gradle, Javadocs, Drools), the Go ecosystem, Travis CI, GitHub Pages, Postgres, sed, npm Linux system administration accessibility standards, IRC bots, and invoicing.

Talks And Other Conferences:

This year, in retrospect, instead of doing technical talks and expository lectures of the type I'm already good at, I played with form.

At LibrePlanet 2017 I gave the closing keynote address, "Lessons, Myths, and Lenses: What I Wish I'd Known in 1998" (schedule, video, in-progress transcript). I tried something aleatoric and it worked pretty well.

At Penguicon 2017 I was one of several Guests of Honor, and spoke in several sessions including "Things I Wish I'd Known About Open Source in 1998" (which was different from the LibrePlanet version, as intended) and "What If Free and Open Source Software Were More Like Fandom?" (further links).

Then, at PyGotham, Jason Owen and I co-wrote and co-starred in a play about management and code review: "Code Review, Forwards and Back" (video on YouTube, video on PyVideo, commentary).

I also attended Maintainerati and led a session, attended !!Con, worked a booth for Zulip at OSCON, attended PyCon and helped run Zulip's sprint there, and co-sponsored a post-PyGotham dinner.

Other Interesting Things I Wrote:

I did not write this year for magazines; my writing went into this blog, MetaFilter, Dreamwidth, microblogging, and client projects, mostly. I also wrote an entry for a local business competition (I didn't make it very far but I'm glad I did it, especially the finance bits) and started two book proposals I would like to return to in 2018.

I've mentioned already some of the posts I'm happy about. Some others:

"On Noticing That Your Project Is Draining Your Soul" (every once in a while someone emails me and mentions that this has helped them, which means a lot)

"How to Teach & Include Volunteers who Write Poor Patches" (12 things you can do)

"Inclusive-Or: Hospitality in Bug Tracking", a response to Jillian C. York and Lindsey Kuper.

I turned part of "Some posts from the last year on inclusion" into "Distinguishing character assassination from accountability", a post about pile-on culture and callout culture where I pulled out quotes from 11 writers on how we take/charge each other with responsibility/power within communities.

I loved Jon Bois's 17776 and discussed it with other fans on MetaFilter, and then, to try to understand its amazingness better, wrote "Boisebration", collecting links to fiction and nonfiction by Bois about class, feminism, aging, sports, politics, wonder, education, & art (and 17776 precursors/callbacks).

I found out about Robert E. Kelly, like so many did, when his kids crashed his BBC interview, then collected some links in a MetaFilter post about his writing on Korea, US foreign policy, international relations, and academia.

I wrote up a bit about "1967's most annoying question for women in Catholic ministry" on MetaFilter to signal-boost another Recurser's cool project.

I enjoyed the learning and the plot twist in "The programmer experience: redundancy edition", in which I discovered a useful resource for Form 990 filings and learned to use the Arrow library for Python date-time manipulation. And was grateful to Pro Publica.

And I made a few jokes on social media I particularly liked:

yesterday, was trying to explain virtual environments/containers/VMs to a friend and said "they range from Inception-style fake computers to putting a blanket on the floor and pretending it's lava"

and

today a friend and I explained leftpad & Left Shark to someone and I began sketching out a hypothetical HuffPo piece connecting them
We habitually crowdsource infrastructure from, expect unsupportedly high levels of performance from unsuspecting participants -> popcorn.gif

Public notice I received:

I got some public attention in 2017 -- even beyond the Guest of Honor and keynote speaker honors and my amazing clients -- that I would like to list, as long as I'm taking an inventory of 2017.

I rode the first revenue ride of the new Q train extension in Manhattan and really loved the art at the new 72nd Street MTA stop. A journalist interviewed me about that on video and my experience got into the New York Times story about the opening.

Presenters at the code4lib conference said their project was specifically motivated by my code4lib 2014 keynote "User Experience is a Social Justice Issue" (written version, video). I was honored and humbled.

And -- this is out of place but I need to record it -- as someone who knew Aaron Swartz, I consented to be interviewed by artists working on a play about him, and so someone briefly portrayed me (as in, pretended to be me and repeated my words aloud) in that play, Building a Real Boy.

Finally, Hari Kondabolu looked at the English Wikipedia page about him, much of which I contributed, and was amazed at how thorough it was. So that was awesome and I was proud.

Habits:

I got on Mastodon as part of my effort to improve how I use social media. I started using a new task tracker. I got back on my bike, and got somewhat into a habit of using it for some exercise and intra-city travel. A new friend got me into taking more frequent photos and noticing the world I'm in. Two new friends caused me to look for more opportunities to see musicians I love perform live.

Watched/listened:

I consumed a fair bit of media this year; didn't get into new music but enjoyed music podcasts "I Only Listen To The Mountain Goats" and "Our Debut Album". I did some book and reading reviews and will catch up to other 2017 reading sometime vaguely soon.

Leonard's film roundups & TV spotlights are a good way to see or remember most of what I saw</a> in the last few years. TV highlights for me for 2017 are The Good Place, Jane the Virgin, The Great British Baking Show (which led me to write a tiny Asimov fanfic, Steven Universe, and Better Call Saul; I also saw Comrade Detective and Yuri!!! On Ice. Films I'm really glad I saw: The Big Sick, Schindler's List, Get Out (I fanned in MetaFilter Fanfare), In Transit, A Man For All Seasons, Hidden Figures, and Lemonade -- and a rewatch of Antitrust.

Social:

I made a few new friends this year, most notably Jason Owen and Mike Pirnat. My friends Emily and Kris got married and I got to hold up part of the chuppah for them. I took care of some friends at hard times, like accompanying them to doctor's visits. I got to see some friends I rarely see, like Mel Chua and Zed Lopez and Zack Weinberg, and kept up some old friendships by phone. My marriage is better than ever.

This year I shall iterate forward, as we all do.

2017 Sumana In Review

Four years ago, during my first batch at the Recurse Center, every day I'd write in a little notebook on the subway on my way home, jotting down a few bullet points about what I had learned that day. I found it helped in a variety of ways, and the keenest was that on bad days, reviewing my notes reminded me that I was in fact progressing and learning things.

On any given day in 2017 I often did not feel very happy with my progress and achievements and how I was using my time. I fell ill a lot and I was heartsick at the national political scene and current events. It is genuinely surprising to me to look back and take stock of how it all added up.

Adventures:

I went hiking in Staten Island and in the Hudson Valley. I got back on my bike and had some long rides, including on a canal towpath in New Jersey and over the Queensboro bridge. (And had my first accident -- a car in my neighborhood rear-ending me at a traffic light -- and thankfully escaped without damage or injury.) I learned how to bake bread. I got to meet Ellen Ullman OMG. And I tried to travel less than I had in previous years, but I still had some fine times in other places -- notably, I had a great time in Cleveland, I witnessed the total solar eclipse in Nashville, and I visited Charlotte, North Carolina (where, among other things, I visited the NASCAR Hall of Fame).

Community service:

I did some of the same kinds of volunteering and activism that I'd done in previous years. For instance, I continued to co-organize MergeSort, participated in a fundraising telethon for The Recompiler telethon, signal-boosted a friend's research project to get more participants, and helped revitalize a book review community focusing on writers of color. Also, I served again as the auctioneer for the James Tiptree, Jr. Literary Award fundraising auction at WisCon, which is a particularly fun form of community service. The Tiptree Award encourages the exploration & expansion of gender. I wrote this year about what an award does, and the reflections I've seen from winners of the Tiptree Awards and Fellowships tell me those honors are doing the job -- encouraging creators and fans to expand how we imagine gender. This year I also deepened my commitment to the Tiptree Award by accepting the organization's invitation to join the Tiptree Motherboard; I am pleased to have helped the award through a donation matching campaign.

But the big change in my community service this year was that I tried to prioritize in-person political work. I called, emailed, and wrote postcards to various government officials. I participated in my local Democratic Club, including going door-to-door petitioning to get my local city councilmember onto the ballot for reelection.

And I found that I could usefully bring my technologist perspective to bear on the city and state levels, especially regarding transparency in government software. I spoke to my local councilmember about my concern regarding public access defibrillator data (the topic that led me to file my first-ever Freedom of Information Law requests, for government health department records) and this inspired him to sponsor a bill on that topic. (Which is now filed as end-of-session partly because of the limbo in potentially getting PAD data from NYC's open data portal -- I need to send an email or two.) I was invited to speak to a joint committee of the New York State Assembly on the software side of our forensics labs, and got particularly interested in this aspect of due process in our criminal justice system, publicizing the issue in my MetaFilter posts "'maybe we should throw an exception here??'" and "California v. Johnson". I testified before the Committee on Technology of the New York City Council on amendments to our open data law (I didn't prep my public comment, so this text is reconstructed from memory; video), and then spoke before the same committee on an algorithmic accountability measure (and publicized the bill, especially keeping the Recurse Center community apprised as best I could). And I did research and outreach to help ensure that a state legislature hearing on protecting the integrity of our elections included a few researchers and activists it wouldn't have otherwise.

In 2018 I want to continue on this path. I think I'm, if not making a difference, making headway towards a future where I can make a difference.

Work:

This was by far Changeset Consulting's busiest year.

I had a mix of big projects and smaller engagements. First, some of the latter: I advised PokitDok on developer engagement, with help from Heidi Waterhouse. For Open Tech Strategies, I wrote an installation audit for StreetCRM. And, working with CourageIT, I came in as a part-time project manager on a government health IT open source project so the lead developer could focus more on architecture, code, and product management.

Some larger and longer projects:

Following a sprint with OpenNews in December 2016 to help write a guide to newsrooms who want to open source their code, I worked with Frances Hocutt to create a language-agnostic, general-purpose linter tool to accompany that guide. "The Open Project Linter is an automated checklist that new (or experienced but forgetful) open source maintainers can use to make sure that they're using good practices in their documentation, code, and project resources."

I spent much of the first half of 2017 contracting with Kandra Labs to grow the Zulip community, helping plan and run the PyCon sprint and co-staffing our PyCon and OSCON booths, running English tutoring sessions alongside Google Summer of Code application prep, and mentoring an Outreachy intern, along with the usual bug triage, documentation updates, and so on. We wrapped up my work as Zulip's now such a thriving community that my help isn't as needed!

From late 2016 into 2017, I've continued to improve infrastructure and documentation for a Provider Screening Module that US states will be able to use to administer Medicaid better (the project which spurred this post about learning to get around in Java).

And just in the last few months I started working on two exciting projects with organizations close to my heart. I'm thrilled to be improving HTTPS Everywhere's project workflow for developers & maintainers over the next few months, working with Kate Chapman via Cascadia Technical Mentorship (mailing list announcement). And, thanks to funding by Mozilla's open source grants program and via the Python Software Foundation, the Python Package Index -- basic Python community infrastructure -- is getting a long-awaited overhaul. I'm the lead project manager on that effort, and Laura Hampton is assisting me. (Python milestone: my first time commenting on a PEP!)

Along the way, I've gotten a little or a lot better at a lot of things: git, bash, LaTeX, Python (including packaging), Sphinx, Read the Docs, Pandoc, regular expressions, CSS, the Java ecosystem (especially Gradle, Javadocs, Drools), the Go ecosystem, Travis CI, GitHub Pages, Postgres, sed, npm Linux system administration accessibility standards, IRC bots, and invoicing.

Talks And Other Conferences:

This year, in retrospect, instead of doing technical talks and expository lectures of the type I'm already good at, I played with form.

At LibrePlanet 2017 I gave the closing keynote address, "Lessons, Myths, and Lenses: What I Wish I'd Known in 1998" (schedule, video, in-progress transcript). I tried something aleatoric and it worked pretty well.

At Penguicon 2017 I was one of several Guests of Honor, and spoke in several sessions including "Things I Wish I'd Known About Open Source in 1998" (which was different from the LibrePlanet version, as intended) and "What If Free and Open Source Software Were More Like Fandom?" (further links).

Then, at PyGotham, Jason Owen and I co-wrote and co-starred in a play about management and code review: "Code Review, Forwards and Back" (video on YouTube, video on PyVideo, commentary).

I also attended Maintainerati and led a session, attended !!Con, worked a booth for Zulip at OSCON, attended PyCon and helped run Zulip's sprint there, and co-sponsored a post-PyGotham dinner.

Other Interesting Things I Wrote:

I did not write this year for magazines; my writing went into this blog, MetaFilter, Dreamwidth, microblogging, and client projects, mostly. I also wrote an entry for a local business competition (I didn't make it very far but I'm glad I did it, especially the finance bits) and started two book proposals I would like to return to in 2018.

I've mentioned already some of the posts I'm happy about. Some others:

"On Noticing That Your Project Is Draining Your Soul" (every once in a while someone emails me and mentions that this has helped them, which means a lot)

"How to Teach & Include Volunteers who Write Poor Patches" (12 things you can do)

"Inclusive-Or: Hospitality in Bug Tracking", a response to Jillian C. York and Lindsey Kuper.

I turned part of "Some posts from the last year on inclusion" into "Distinguishing character assassination from accountability", a post about pile-on culture and callout culture where I pulled out quotes from 11 writers on how we take/charge each other with responsibility/power within communities.

I loved Jon Bois's 17776 and discussed it with other fans on MetaFilter, and then, to try to understand its amazingness better, wrote "Boisebration", collecting links to fiction and nonfiction by Bois about class, feminism, aging, sports, politics, wonder, education, & art (and 17776 precursors/callbacks).

I found out about Robert E. Kelly, like so many did, when his kids crashed his BBC interview, then collected some links in a MetaFilter post about his writing on Korea, US foreign policy, international relations, and academia.

I wrote up a bit about "1967's most annoying question for women in Catholic ministry" on MetaFilter to signal-boost another Recurser's cool project.

I enjoyed the learning and the plot twist in "The programmer experience: redundancy edition", in which I discovered a useful resource for Form 990 filings and learned to use the Arrow library for Python date-time manipulation. And was grateful to Pro Publica.

And I made a few jokes on social media I particularly liked:

yesterday, was trying to explain virtual environments/containers/VMs to a friend and said "they range from Inception-style fake computers to putting a blanket on the floor and pretending it's lava"

and

today a friend and I explained leftpad & Left Shark to someone and I began sketching out a hypothetical HuffPo piece connecting them
We habitually crowdsource infrastructure from, expect unsupportedly high levels of performance from unsuspecting participants -> popcorn.gif

Public notice I received:

I got some public attention in 2017 -- even beyond the Guest of Honor and keynote speaker honors and my amazing clients -- that I would like to list, as long as I'm taking an inventory of 2017.

I rode the first revenue ride of the new Q train extension in Manhattan and really loved the art at the new 72nd Street MTA stop. A journalist interviewed me about that on video and my experience got into the New York Times story about the opening.

Presenters at the code4lib conference said their project was specifically motivated by my code4lib 2014 keynote "User Experience is a Social Justice Issue" (written version, video). I was honored and humbled.

And -- this is out of place but I need to record it -- as someone who knew Aaron Swartz, I consented to be interviewed by artists working on a play about him, and so someone briefly portrayed me (as in, pretended to be me and repeated my words aloud) in that play, Building a Real Boy.

Finally, Hari Kondabolu looked at the English Wikipedia page about him, much of which I contributed, and was amazed at how thorough it was. So that was awesome and I was proud.

Habits:

I got on Mastodon as part of my effort to improve how I use social media. I started using a new task tracker. I got back on my bike, and got somewhat into a habit of using it for some exercise and intra-city travel. A new friend got me into taking more frequent photos and noticing the world I'm in. Two new friends caused me to look for more opportunities to see musicians I love perform live.

Watched/listened:

I consumed a fair bit of media this year; didn't get into new music but enjoyed music podcasts "I Only Listen To The Mountain Goats" and "Our Debut Album". I did some book and reading reviews and will catch up to other 2017 reading sometime vaguely soon.

Leonard's film roundups & TV spotlights are a good way to see or remember most of what I saw in the last few years. TV highlights for me for 2017 are The Good Place, Jane the Virgin, The Great British Baking Show (which led me to write a tiny Asimov fanfic, Steven Universe, and Better Call Saul; I also saw Comrade Detective and Yuri!!! On Ice. Films I'm really glad I saw: The Big Sick, Schindler's List, Get Out (I fanned in MetaFilter Fanfare), In Transit, A Man For All Seasons, Hidden Figures, and Lemonade -- and a rewatch of Antitrust.

Social:

I made a few new friends this year, most notably Jason Owen and Mike Pirnat. My friends Emily and Kris got married and I got to hold up part of the chuppah for them. I took care of some friends at hard times, like accompanying them to doctor's visits. I got to see some friends I rarely see, like Mel Chua and Zed Lopez and Zack Weinberg, and kept up some old friendships by phone. My marriage is better than ever.

This year I shall iterate forward, as we all do.

Some Things I Recommend Frequently

Some of these I ought to write up for Cool Tools someday! These are some recommendations I make somewhat often because, in my circles, I run into people who don't yet know about them. A non-comprehensive list.

Radio comedy: The sketch comedy show John Finnemore's Souvenir Programme.

Clothing: Shock Absorber's Ultimate Run Bra which has a clip at the top of the racerback and adjustable vertical straps.

Political and systems analysis essayists: siderea, Alexandra Erin, Alexandra Petri.

Music: Regina Spektor, the Mountain Goats, and Vienna Teng.

Books: Greg Milner, Perfecting Sound Forever: The History of Recorded Music. Emily Nagoski, Come as You Are: The Surprising New Science that Will Transform Your Sex Life. Chip Heath and Dan Heath, Switch: How to Change Things When Change Is Hard. Andy Oram and Greg Wilson, Making Software: What Works and Why We Believe It. Ellen Ullman, The Bug. Maureen McHugh, China Mountain Zhang.

Status play: this old improv wiki page.

Software: The goal-tracking service Beeminder, the distraction-avoidance browser add-on LeechBlock, the journaling community and open source project Dreamwidth, the doctor-finding and -booking service ZocDoc, Nelson Elhage and Anders Kaseorg's "Understanding Git" slide presentation, the regular expression sandbox/testing site RegExr, the email and calendar provider Fastmail, the library e-reader app SimplyE, the Monterey Bay Aquarium's sustainability checker Seafood Watch, and the Python debugging/prototyping tools python -i and bpython.

New York City ID: IDNYC, a New York City ID card that works for many purposes and gets you museum discounts, and that's available regardless of immigration status of the applicant, and the License Express DMV office in midtown Manhattan for state ID renewals. [Incidentally, if you are a US citizen in New York State, consider an Enhanced Driver's License which will also let you cross the land border into Canada.]

What We Confirm

Unlike this nominee for a US District Court judgeship, apparently, I can at least give a one-sentence definition of the Daubert standard because of the hobby I accidentally picked up this year. Which is telling enough. But that clip and its implications also poked at some old memories for me.

As a child and as an adolescent, I generally wanted to act not just well, but defensibly well. The specific scenario that I envisioned was that I would have to answer for myself someday at a confirmation hearing before the U.S. Senate (although that was not a particularly fun way to live). Flashbulbs and microphones and wood panelling superimposed themselves on my bedroom wall.

As it turns out, I will probably never actually have that particular challenge. I took the Law School Admissions Test because my family suggested I do it to keep my options open, and got a 165, which was pretty good, but decided not to go to law school unless there was a specific thing I wanted to do that would be a lot easier if I had a law degree. Instead, I worked at a bookstore for a while, and then did customer service at Salon.com for a bit. And while there I followed the news about Hurricane Katrina, and wrote:

What we are now learning about the devastation in the Gulf combines with a growing desire, borne of my working life, to become a manager, a good one.
I reflected a few years later:

I looked at Katrina and said, "For God's sake, we have to do better than that. And I could do better!" I wanted, and still want, to reduce the net amount of mismanagement in the world. We owe ourselves competence.*

By then I was on my way in this new career. And as a non-lawyer who is only ever considered poised and diplomatic by comparison with other programmers, I find it unlikely anyone will ever nominate me for the kind of high-up government gig that would require confirmation hearings.** But I know some more things now about stewardship. I feel a special disgust and horror when I see someone else abuse a power or neglect a responsibility that I share. And the more I know, the more I can do, the more awful the sinking feeling in my chest when I see someone with less capability than me given an important task. I'm looking back at some notes from about a year ago, just after the election:

I am predicting a future where I will ask myself innumerable times "who's minding the store?!", and seek clues as to whether a particular folly is due more to the Scylla of incompetence or the Charybdis of intentional wickedness.
and:
[Laurie] Penny wrote that the President-Elect "has really messed with my life plan. This is far and away not the worst thing he has done, but it makes it a bit more personal." Yup. Dark humor is not usually my speed but I have found myself gasp-laughing a lot in the last couple of weeks and foresee using a lot of it in my near-future stand-up comedy. Like: of all the negative feelings I have about the election, one is the simple irritation I might feel if I were waiting at a restaurant to share dinner with a friend and they texted me, 20 minutes after they were supposed to arrive, and told me they were flaking out. It is the "but we had plans" resentment.

To that I can add another petty response I've felt a lot this year -- like Hermione Granger, bitterly asking the clearly rhetorical question, did no one else do the required reading?

Ben Franklin, in his Autobiography, recounts discovering one General Loudoun's astonishing indecision. Loudoun's procrastination slows down the entire economy of the Colonies and keeps mail boats from carrying urgent information back to England. Franklin says:

On the whole I then wondered much how such a man came to be entrusted with so important a business as the conduct of a great army, but having since seen more of the great world, and its means of obtaining and motives for giving places, my wonder is diminished.

Leonard and I sometimes now use "my wonder is diminished" with each other as shorthand for this kind of disillusionment. But I suppose I retain some capacity to be shocked-but-not-surprised, and sometimes I need to spend a little time grieving before I breathe a big sigh and put my shoulder back to the wheel -- or figure out that this means I oughta switch wheels.


* A little while after that, I read John Rogers's coining? of the term "competence porn", and have since then appreciated the "Damn, Fandom Is Good At What You Do" fanwork fest especially for this Harry Potter alternate-universe fic about property law.

** If it actually ever does happen and someone dredges up this blog post during the proceedings, I hope I have the sense of humor to laugh about it.

Bill 1696 and Learning Old Systems

A very amended version of Councilmember Vacca's algorithmic transparency bill has now passed the City Council and is headed for the Mayor's desk to sign.*

This follows the October 16th hearing (which was moved to a larger hearing room at City Hall due to huge attendance) -- the video recording is available now and is a little over two hours long, as are PDFs for Hearing Testimony (pre-written) and the hearing transcript. One attendee live-tweeted practically the whole hearing (sometimes the threading broke a bit) and another shared rough notes as a GitHub gist. Several people spoke for a few minutes each from, e.g., the New York Civil Liberties Union, The Brennan Center for Justice, Legal Aid Society, BetaNYC, Brooklyn Defender Services, Princeton's Center for Information Technology Policy, and various other institutions, and some spoke just as individuals. I testified for a few minutes, starting at about 1:53 in the video, and got quoted in Civicist.

The amended bill, approved by the Council's Technology Committee and then by the City Council earlier this month, is a compromise. It creates a task force, and they'll have 18 months to write up a report with recommendations, and that report will be made public. The bill specifically says that "Nothing herein shall require compliance with the task force's recommendations". Who appoints the members of the task force? "Such task force and the chair thereof shall be appointed by the mayor or a designee thereof" with no particular mandate that, say, the Council has a voice in who's placed on the task force. The bill says nothing about whether the task force will perform any of its hearings in public.

So those of us who want to keep momentum going on this issue will have to note who's been appointed, submit testimony when the opportunity arises, and find a way to sustainably pay attention to it.

The Mayor could allow the bill to lapse into law without signing it, could sign it into law, or could veto it (and then probably have the Council override his veto with a two-thirds majority). What I hear is that it'll almost certainly be the first or the second of those three. Legistar says there'll be a hearing tomorrow, Monday the 18th, but what I've heard is that this will be kind of a formality in which 20+ bills are being "heard" but no substantive discussion is expected.

So I tried to find out when on Monday this hearing will be. I looked around the Mayor's chunk of nyc.gov and found nothing. My Council contact told me that the daily Sked in the daily First Read in City & State and Gotham Gazette's Week Ahead sections would tell me these kinds of schedule details -- once Monday rolled around.** Ahhh. New York City is a very old system, like sewing or software packaging,*** and way before there existed a municipal website, there was a rich ecosystem that depended on knowing this information, and so niche publications emerged. Right.

And today, while writing this, I found the City Record Online (every day the City Record puts out notices of city hearings, court notices, etc. and you can look at recent daily editions as PDFs or search electronically), and figured out: 4:30 pm, in the Blue Room at City Hall, as announced on December 13th.

So I'll probably be there, even though it probably isn't substantively important, as I learn this system, as I learn how to pay attention. Maybe I'll see you there too.


* Legistar, the application that NYC uses to track bills as they move through the City Council, has email and RSS notification, but the email alerts have not been functioning for me, and the RSS option is pretty uninformative and (I think) slow to update. Councilmatic is an open source alternative that had to use screen scraping to get bill and event data (the comments in the bills scraper elucidate some stuff I'd been unsure about). I'm glad to hear that, thanks to NYC open data advocates, there's now a proper Legistar API available for civic developers like us.

** Indeed, the First Read now includes a sked for Monday that mentions a Mayoral hearing and bill signing -- but doesn't specify or link to the list of bills.

*** I'm improving various skills and learning multiple systems right now. In rough order of how old our systems/skills are, as humans, here are some of them:

  1. Time management (regular)
  2. Sewing
  3. New York City governance
  4. Bicycling
  5. Sewing (electric)
  6. Time management (with mass media)
  7. Bicycling (in car-heavy urban environments)
  8. Time management (with email)
  9. Python packaging
  10. Time management (in attention-casino electronic environment)

Blockchain and Bitcoin, Dar Williams, And So On

Sipping my soda water at the saloon across the street before the Untitled Kondabolu Brothers Project show Wednesday night, I struck up a conversation with a guy who works in an art gallery, and with his friend who works in publishing.

We talked about the Kondabolus, about current events in India, about their artistic endeavors, about the business of business books and the current interest in Bitcoin and the blockchain. And the guy said he kept hearing about those things and did not understand what they were. I gave him a simplified explanation (grateful to Scott Rosenberg's explanation which I'd enjoyed previously), and decided to record it here.

I explained that the blockchain and Bitcoin are different, and that he can expect that the blockchain is gonna stay around even if Bitcoin isn't what it's used for, like magnetic tape stayed around even though Betamax didn't take off and VHS did.

I asked him to think of a ledger, where we write down financial accounts -- money going in, money going out. Now think of one that's got two columns, one for you and one for me. With that ledger, you can track the money you exchange with me, because on the left is you and on the right is me. So it's not just about $300 in or $20 out, now, individual pluses and minuses. Now, every row matches up and you know where everything came from or went. Yup, he could conceive of that, a shared accounting record like that.

Now, I said, imagine a lot of people could do that together, so the ledger had records for the money moving around among all of us. And imagine that we could trust that record because it wasn't written in pencil, it was written in ink, so we could trust its provenance -- new stuff will only be added at the end, and the old stuff won't be changed.

That's the blockchain, I said. And that's why it would actually be useful as a shared notebook where lots of different people have to look at a record together and add notes for the future, for stuff like electronic medical records and real estate records. When did the patient get that diagnosis? Oh, it was between this surgery and that surgery.

So that's the blockchain, I explained. That's a basic technology. When people talk about a distributed, append-only ledger, that's blockchain -- "distributed" because lots of people can do it together even if they don't know each other, and "append-only" because you can only add to the end, not change stuff that's in the earlier records.

And Bitcoin is an implementation of that technology to do money, to agree about who has what money.

I asked him: Think of a Monopoly game. The box comes with, I don't know, a thousand bucks of Monopoly money. OK, so everyone in the game can trade it around. But what if you want to get a lot more people in the game and people want to do stuff and we need more money in the system, more of these tokens that people can exchange? How do you get more money into the system, add new tokens at a reasonable rate, and have everyone trust it -- trust its provenance?

Remember SETI@home? I asked. He did. I reminded him of how it had worked -- back before there was a "cloud" you could buy time on (the cloud is just other people's computers, after all, as the saying goes), the researchers said, please install this software on your computer. And then when your computer's not busy, at night, we'll give your computer a chunk of work, some data that a space telescope collected, and then your computer can use its spare time to crunch those numbers and check, hey, are there any weird patterns in that data? Do we think there are there aliens here?

And so if you've heard of Bitcoin "mining", it's kinda like that. What the people behind Bitcoin decided on is: the way you make more tokens is by having your computer solve the kind of really hard math problems that we basically need computers to do. It's just in the nature of this kind of math problem that it takes a computer a long time, crunching data, to solve the problem, but once it comes up with a solution, it's easy to check whether that solution is right. And so if your computer crunches out the next solution, then that makes a new token, and by default, you own it, because you, your computer did the work of solving that problem. He got that.

But that means people who want to make Bitcoin are like, okay, I'll get a huge row of computers to do it! And that uses a bunch of electricity which is awful for climate change! Yeah, he'd heard about that.

And so that's another reason, in late 2017, why personal computer security is more important than ever. There's the Trump Administration and its invasion of people's privacy, and surveillance, and so on. But also, when someone tries to trick you with spam or a virus these days, it's not just because they want to get your bank account password or your other private personal information. That hacker is now trying to install malware on your computer so they can use it like an evil SETI@home, evil crowdsourcing, so they can make your computer crunch those numbers to make new tokens (Bitcoins) for them. Your computer crunches the numbers but when you "mine" the Bitcoins they go to the hacker's account.

Also: So once you have this distributed trusted ledger, you don't really need people's names. So that means it's really useful for people who want to do sketchy things, and so from the beginning, the kinds of people who are interested in Bitcoin and other "cryptocurrencies" ("cryptography" meaning the study of how you make things secret + "currency") and want to use it include many of the kinds of people who give libertarians a bad name. He had heard of "the Dark Web" and made the connection here.

Around this point I started explaining what is and is not fiat currency, but it was time to line up to get a good seat at the show, so I left him and his friend to catch up and I crossed the street. As I stood in line, a (drunk?) woman who'd overheard me at the bar came up to me and tried to start a chat -- she said she works from home and feels isolated from what is going on in the world more generally. I sympathized with her; I work from home, a lot, too, and isolation can be hard. Her friend apologized for her, gently drew her away and started walking her to the subway stop; I lost sight of them.

I got a front-row seat at the show and had a lovely time. I'm currently reading Operating Instructions by Anne Lamott, and it strikes me that Ashok Kondabolu's relentlessly contrarian and cheerful self-revelatory style is a bit like Lamott's, especially vivid when they discuss addiction or antisocial reflexes. During audience Q&A, I mentioned that I am the single person who's contributed the most to the English Wikipedia page about Hari Kondabolu and asked whether there were any major inaccuracies, on any of the Wikipedias, about either Hari or Ashok. Looks like there aren't! Hari Kondabolu looked through that article live on stage and said with wide eyes, this is everything I've ever done. I was incredibly proud.

Last night I went to a Dar Williams show. I snagged a front-row seat but the seat next to me remained empty, and I eventually realized it wasn't visible to the people standing at the back. So I went to look for people who might want it; next time I do this, I need to start my sentence with "there's a spare seat up front" and not start by asking if someone's there alone. I was not hitting on you, two women I came up to!

A guy overheard me and was glad to come up front; he's a teacher with a bad back. We talked about where we'd lived, and about what coworking spaces do that coffeeshops don't, and what Meetup does that Facebook doesn't. He asked what I do (I explained a project manager's job as coordinative communication), and what kind of software I specialize in -- I briefly described the several different worlds of software development, like embedded stuff and games and websites and developer tools and so on, and said I mostly specialize in stuff for websites and in developer tools.

And within that, I said, I have a further specialty, which is not about those worlds, but about the approach to making software. There's a more open, collaborative approach, and a more closed one, and I specialize in the collaborative one. "Is that anything like open source?" Aha! But he didn't know what that meant, and asked questions, so I talked about open source a while. I talked about the four freedoms and about licensing. He asked whether more software is proprietary or open source, and so I talked about how the default for making software is simply to leave it under US copyright and how therefore, because of inertia if nothing else, most software people write is probably proprietary. And I told him about how most of the time when you interact with websites you're interacting with JavaScript that is unfree. And I was in the middle of explaining the difference between source code and binary when Anaïs Mitchell came on, and then I explained some more things during intermission, and then Dar Williams came on.

I don't know when I have cried more than at that show last night. I started listening to Dar Williams because Seth Schoen introduced me to her music, nearly twenty years ago, probably just a few months after he introduced me to free and open source software. So many of us sang along to "The Babysitter's Here" and "As Cool As I Am" (she paused her own guitar and voice to gesture to us and we all sang "I am the others" together; I feel like I never realized how anthemic that song is before) and "The Christians And The Pagans" and "When I Was A Boy" and "Iowa" (which always makes me think of this great West Wing fanfic) and "Road Buddy", and I hear a lot more in "After All" than I did before. She read aloud from her book. She does this show in Brooklyn the last week of every year, and I'm going to try to go now that I know that. 2018, 2019, 2020 -- something to look forward to in every year. I could use that.

When you're in love, sometimes you feel like every love song applies to you. When I'm trying to change, to improve myself, I find fresh news in trite old platitudes, even in inspirational quotes people share on social media, as shocking and embarrassing as some part of me thinks that is, and in songs I've known for years. I'm in a bit of my life where I'm listening to Vienna Teng and Dar Williams and the Mountain Goats to give me different lenses for my melancholy, some thoughtful and loving answers to the "what's the point? all is vanity" that pops up. This year I saw the Mountain Goats and Dar Williams and Regina Spektor live and yeah, I'm one of those people crying and singing along at the show, I'm one of the people these shows are for. Sign me up. I'll go in the cold, I'll go alone, I'll pay ridiculous service surcharges for tickets. I'm very hesitant to say I need things, but gosh it turns out that without this particular vitamin I will start developing emotional scurvy.

It turns out that when I started listening to Dar Williams she was not that much younger than I am now.

Keep going.