Speaker 0
0:00 – 0:33
Hello. I'm Ryan Cook, and this is Civic Tech Chat, a podcast about the civic technology movement. We seek to harness the power technology has to improve the delivery of public services to people everywhere. This episode is a special one as we're on-site here in Washington DC at Code for DC, and we're gonna be talking to a number of folks here about some of the work they did around the National Day of Civic Hacking, as well as National Expungement Week. To start us off here, let's have a couple of those folks introduce themselves.
Speaker 1
0:34 – 0:52
Hello. My name is Gwendolyn Washington. I'm the pro bono director for Rising for Justice. It's a clinical teaching program and a direct legal services provider, and we provide expungement services to people with criminal records free of charge, pro bono.
Speaker 2
0:53 – 1:00
Hi. And I'm Kelly Shoemaker. I'm one of the volunteers with Code for DC. Sometimes I use the title community outreach lead. We're all volunteers.
Speaker 3
1:01 – 1:19
Hi. I'm Charles Landau. I'm participating today because I'm one of the volunteers on the Rising for Justice, criminal records expungement project that we have here at Code for DC. By day, I operate a small software development consultancy called Ideation Partners LLC. Excited to be on the podcast.
Speaker 0
1:20 – 1:31
One of the things we like to start with on Civic Tech Chat is the question of personal why. So for each of you, what is that thing that drives you to get out of bed each morning and do what you do?
Speaker 2
1:32 – 1:42
This is a hard one. I think in a kind of generic way, I would say that I'm motivated just by wanting to do something to make the world a better place.
Speaker 3
1:43 – 2:14
On a personal level, my family and and, I have a I have a couple of young boys, and and that certainly gets me out of bed in the morning. Professionally, lately, I've I've been on a sort of mission to help organizations connect their business processes and their data. And to sort of unlock the value of the data that they already have in their organization and give it velocity. So, there's some obvious ones on the personal side but, that's the that's the professional answer.
Speaker 1
2:16 – 2:23
Protecting people from injustice drives me to get out of the bed and motivates my career.
Speaker 0
2:24 – 2:31
How did each of you wind up here involved at a Code for DC event? What's the the story that comes before this involvement?
Speaker 1
2:33 – 2:59
I was so thankful that Kelly invited me to come and pitch one of my projects as part of our expungement clinic to Code for DC because we were celebrating National Expungement Week, September. And as a result, Code for DC adopted Rising for Justice's expungement clinic and decided to create an app for us to help us better serve our clients.
Speaker 3
3:01 – 4:33
I had been, working too much on my own, and, my wife, told me at one point, she basically said, you you have to get out of your head and you have to sort of get out of of doing everything on Slack and and go and be more involved in the community. And I said, oh, that's that's great because I I can't sit in the office anymore. So I started going to a lot of meetups in the DC area and, I had been involved in the the public service space earlier in my career, and I wanted to get back to that. So when I saw Code for DC, I was naturally curious. And for this project, I'd only been coming, to the group a couple times when I I heard that there was, somebody from Rising for Justice pitching a new project. And, that first night, I went and talked with Gwen, and we sort of spec'd out this project. And it's been off to the races since then. It's actually sort of really developed organically, and, the the volunteers have all sort of been, really energetic about this project. Everybody knows somebody that this affects, so it's And everyone, you know, sort of sees how how difficult it is to do basic things if you're affected by this. So it's it's very easy to pitch people on participating. The volunteers have been great. And it's it's sort of happened, almost by accident.
Speaker 2
4:34 – 5:00
I'm friends with one of the original founders of Code for DC, and he asked me to get involved to help connect people that were volunteering on Code four DC projects, connect with people in the community who might be able to provide subject matter expertise and connect projects to the people in the community who would be using the the projects that are built here at Code four DC.
Speaker 0
5:01 – 5:10
And then is there any media, be it a podcast, video, print, or something else entirely that you found to be especially inspiring or informative to your practice?
Speaker 3
5:11 – 5:58
Starting out, I read data structures and algorithms for Python, by Goodrich. And, I might be getting the citation wrong here, but, that that book really changed how I thought about programming. It was written in a really old version of Python, and all the all the code you know, it sort of was the book where I sort of said, oh, I I kinda get this now. Not really related to the project, but, I've been reading up and running with Kubernetes, and following Kelsey Hightower, always has insightful things to say. I think those would be the the two that come off top of my mind, but, I'm sure there's a million that I'm leaving out. Anything by Martin Fowler.
Speaker 1
5:59 – 6:10
I have to say the constitution. And if we actually lived up to the beauty of The United States constitution, this country would be absolutely perfect.
Speaker 2
6:12 – 6:29
I don't think I can think of something right now specifically, but just in general, there are a lot of good sources out there about all of the reasons why it's good to volunteer. So I think that's, you know, some of the things that I look to.
Speaker 0
6:30 – 6:44
As we hop over to our conversation about the main subject, this project that that y'all have worked on together, we again, I'd like to go back and start at its why. How would each of you describe the why, for this collaboration?
Speaker 2
6:46 – 8:09
I think the why about why we did this event is starts out pretty simple because we found out we at Code for DC found out that Code for America was announcing criminal expungement as the theme for National Day of Civic Hacking. And so for us, we started thinking about what we might be able to do related related to that. We didn't have any existing projects related to criminal expungement. And I knew a little bit about what the city offered to people who were, dealing with those kinds of issues. And so among our leadership team, we talked about even if we wanted to do something for this event and decided that we would try to look around to see if there was somebody or some group or organization that was already doing something that we could assist. So we didn't really wanna start something from scratch without already knowing that it would have somebody who would use it. So I made a couple of phone calls, and that's how I met Gwen. And it turns out that there was somebody that could use our volunteer efforts to help what they were already doing. I
Speaker 1
8:09 – 9:50
was so thankful, so very thankful when Kelly reached out to me, you see, because, Rising for Justice has been providing pro bono expungement services to the people in the District Of Columbia for, several years now. And we have a robust, partnership with several law firms in town who represent, these persons who need expungement free of charge. Expungement or record sealing is so important because a criminal record is the new scarlet letter. And when you have that criminal record, you find it difficult to have employment, you can't support yourself or your family, you have difficulty finding good safe housing, you have difficulty being able to volunteer for activities in your children's lives, you become something akin to a second class citizen. You see the third thirteenth Amendment to the Constitution said that private slavery was illegal. However, slavery for people who are duly convicted in local state and federal court is still real and still legal and into the criminal justice system. And so many people who are social economically challenged, people of color, have been subjugated to the role of second class citizen. And expungement sets them in a place where they can have that second chance, where they can become productive members of society, and they can erase that scarlet letter.
Speaker 0
9:51 – 10:00
It sounds like there's a pretty strong partnership here between Code for DC and and, Rising for Justice. Can we talk a bit about what that relationship looks like from each of your perspectives?
Speaker 1
10:01 – 11:09
What the relationship looks like from the perspective of a criminal defense attorney doing expungement work is that it makes it this application much easier for us to do our jobs, for us to encourage pro bono attorneys to want to volunteer for us. Because a process that usually takes thirty minutes, If you have all the moving places in place to figure out somebody's eligibility for expungement is reduced to maybe five seconds with an application. That means we get to serve far more people than we ever could because we're saving so much time at our community outreach expungement, clinics. In fact, we have one, two coming up. And I'm looking forward to using these applications to serve far more people than we possibly could without it. So I am grateful to Code for America and Code for DC for their, ingenuity and being able to streamline our expungement process and make it a lot easier for pro bono attorneys and our attorneys on staff.
Speaker 2
11:10 – 13:31
I remember one thing I said to Gwen when we first had our conversation over the phone was that I would really like I'd really like for her to come to our meetup and pitch her project. And I told her that that I thought there would be people interested in working on it, but that we're all volunteers and you you just never know. And I said, if you can come, if you're willing and to come and pitch your project, I think people will be interested in working on it. But I said, I have to let you know there's always the chance that it's just not something that the people who happen to be there that night would be interested in. And we had a a few weeks at that point before National Day of Civic Hacking. And I said, even if there aren't any people there this first night, then I think it would be great for you to come back and continue to pitch it because I think at some point, there will be people who are interested in working on these ideas that you have as projects. And so that first night that she came, sure enough, there were a handful of people, and several of those people have continued to be involved week after week. And another thing that was interesting about the initial conversation that Gwen and I had is that Gwen had several ideas for projects, several things that rising for justice would like to have that I thought would be good potential projects for code for DC DC volunteers to work on. And so I think that the partnership has a lot of potential for a good, strong, long lasting partnership because there has been an display of interest among our volunteers, and we get new people all the time. And I think there's just gonna be a continued interest in this issue and in these projects. And the fact that Gwen and the people at Rising for Justice have the creativity to see how code for DC and volunteers can work together on these projects, I think it's it's, evidence that it has a lot of potential to be a really good partnership.
Speaker 0
13:33 – 14:04
A lot of folks at Code for America has mentioned, like, talk about that idea of trying to work shoulder to shoulder. And I think what I'm hearing from you both, it it sounds like one of those kind of model partnerships, to that end. And it seems like it kinda came to fruition, in part at this, like, National Day of Civic Hacking event that, was also related to the National Expungement Week. Both terms that we've thrown around a couple of times here. For the sake of the listener, could we maybe, expand a bit on what each of those is? Kelly, maybe you could tell us a little bit about the National Day of Civic Hacking to start?
Speaker 2
14:04 – 15:24
Sure. I've been involved with Code for DC for a few years, and every year, there's a National day of civic hacking. And usually, there's some kind of theme, but this this year was really the first time that Code four America really encouraged the brigades, which is the term that code for America uses for the for the code for America chapters in different cities around the country and really around the world. But, in the past, we've done more general things for National Day of Civic Hacking. Sometimes it's been more kind of like you would think of like a science fair where the projects that we've been working on are more on display or we've done some things more like learning workshops where maybe we do, like, a GitHub one zero one session, which we did do this year also, or, like, HTML one zero one type session for people who are new to coding. So we've done something for the last several years, but this year was really the first year that we had that we participated in the theme that was promoted by Code for America.
Speaker 0
15:25 – 15:27
Anglaine, could you tell us a bit about National Expungement Week?
Speaker 1
15:28 – 16:53
So, the one of the co organizers of National Expungement Week, Rocky Raffy Crockett, asked me, if rising for justice would want to put on an expungement clinic to help people in the community. And she and another person by the name of Kristen Turner that I've been working with on trying to automate, the expungement process, with records, collection, which is key to our ability to practice an expungement law, came together, talked to Kelly about, us having this event as part of our National Expungement Week. And I think it was started by the actor Seth Rogen, and a few other people across the country who have been trying to move for, greater expungement. And so as a result, the national day of civic hacking became one of our events for national expungement Week because it just coincided. And it was fantastic, and I was so touched by the people who came out that day, September 21, I believe. And it it seemed like it was just standing room only. It was fantastic. Everybody who was there all on the same page regardless of our our backgrounds or our areas of expertise. So, it was great.
Speaker 0
16:54 – 17:15
On any app development project, one of the key choices, especially early on with a group is tooling. You know, what is it that's gonna fit best for the scenario at hand. I gather from the GitHub repo that it looks like you're using something called, Next JS, which I believe is a React framework. Could you talk a little bit about the thinking and kind of process you went through to make a a choice like that?
Speaker 3
17:16 – 19:05
Sure. So, I picked up React a couple years ago, as a way of sort of rounding out my portfolio. And, Next. Js is a, is a framework that's, primarily, developed by a company called Zite. They also make, ZiteNow, which is a sort of a similar service to you might be familiar with Netlify. And, in terms of of React implementations, I found that create next app, the sort of CLI code generator, similar to create react app, and, the, the router in particular for Next. Js are intuitive to work with. There's not a ton of additional, sugar that goes on top of, your your familiar React project in order to get started with Next. Js. And, the the the sort of, the packaging, the configuration out of the box is great for, things that will eventually become static websites. So so for for all of those integrations and, and sort of happy paths that you get from Next. Js, I felt like it was the sort of the best, boiler plate to adopt for the project. But really, from the contributor standpoint, anybody who knows how to write a React component please submit a PR. You know, it's all of that stuff, doesn't really interfere with writing the business logic for this app. It's just sort of convenience at at the top level.
Speaker 0
19:06 – 19:31
Whether it's a project like this, where you have, like, a lot of volunteers trying to work together on a team, or whether it's, like, a day job thing, where, again, lots of folks trying to work together on a team. I imagine you end up with folks at, you know, varying degrees of technical levels and that sort of thing. Could you talk a bit to your experience before trying to provide, you know, technical leadership to kind of a a group like that that's kinda stratifies across different experience levels and maybe involvement levels?
Speaker 3
19:32 – 22:25
We were one of the main projects for, Code for DC's National Day of Civic Hacking, and that was interesting. I'm gonna that's what I would say. We we spent a considerable amount of time, ahead of time trying to figure out how to triage. We wanted everyone to be involved and included, but there there are sort of different tracks that you can put people on to to accomplish that. So if someone comes in and says, you know, I have I have experience, advising people how to make accessible apps. Maybe they should be in the room even if they can't contribute in terms of submitting a PR. If you have somebody who has, you know, familiarity with our entire, set of tools, then, that's great. And maybe they should be in the room even if, you know, they're they haven't shown up before. If somebody needs help, learning how to use Git or has is sort sort of ready to start contributing, but needs a little bit of hand holding to get there. Well, we were there for six hours. Right? So, the plan was sort of to have a track that was intermediate where we could say, alright, you're the feeder group. We, you know, we're gonna, onboard you a little bit and hopefully get you to the point where you can be in the room, contributing, in terms of writing PRs or or writing actual code. And then there's there's a huge space in the project, for the design side and for the hue really what you would probably call the human side. Sitting with with our our partner in this project when, and figuring out how the the business logic of the implementation of the app, can map to the business logic of actually analyzing a case, of understanding whether a case is is indicated to be eligible for expungement or not. And understanding sort of what information because it's not necessarily the same as how it would naturally flow in a conversation. So so doing that triage was a complicated problem. We did the best we could to prepare for it, but it was also sort of, getting there and accepting that I'm not gonna be writing code today. I'm actually gonna be talking to people, getting people people ready to to, to come aboard, getting people's heads wrapped around the code base or, routing people over to one of the other contributors who's who's sort of running a GitHub work shop so that they know how to how to sort of do social coding at a more basic level.
Speaker 0
22:26 – 22:44
I would imagine an application like this at some level has to either store or interact with information about real life people. So what what kind of considerations or precautions have you had to take around, you know, that area of data privacy or, like, personally identifiable information? Is there anything you can share about that?
Speaker 3
22:45 – 26:28
This was one of the coolest parts of this project because, the first day we sat down, we figured a way forward where we just don't persist the data. We're not calling index DB. We're not calling local storage. We're not calling APIs. There's no fetch. There's no axios. The the user and the user's browser is responsible for that end of it. You know, I can't There's nothing I can do if a user with a hacked, Chrome installation starts using the Web app and that's sending stuff out. I can't control that. But we're not installing Google Tag Manager. We're not we're not installing Axios. We're not using the Fetch API. So so there's basically no persistence of data besides, and these are the two cases, auto complete, which we can do several things to not just simply not implement. Right? Or or prevent, from activating or give the browser hints not to not to use on a particular field. So that's that's one, auto complete. And two, the save to PDF API, which is how the data gets gets persisted at all, within the rising for justice organization. The user the user experience, just to give you a sense of how the data moves through the app. Gwen collects all the information that the lawyer at the at the pro bono legal clinic will have about the person, and puts it in front of the lawyer and then only after they have all that information puts the prospective client in front of the order. This is how she's described it to us. In in front of the lawyer. And then user inputs happen and those user inputs are checked against the business logic that determines or that our RFJ determines, can indicate whether somebody may or may not be, eligible for criminal records expungement. And then, someone calls a save to PDF API and that file goes Gwen. We can implement some of that. Right? We can implement a save to PDF API that, that doesn't call an external service. We can, simply not implement some of the data persistence APIs that I mentioned earlier. Operationally, we can't implement, the part where the PDF goes to Gwen's USB key and nowhere else. That's that's out of scope. Just like making sure that the browser has not been hacked is out of scope. So, when I said this was, the a fun dimension of the project, what I mean is, in in so many ways, we get to, to protect data that's or implement data protections that are in scope for the project simply by not implementing things that every front end developers urge us to implement. Why why am I not using index d b for this? You know? So so it's fun. It makes you feel clever by not doing anything, by by being succinct. But it's also it's it's nice to be simple.
Speaker 0
26:29 – 26:49
I imagine on both your parts, there was a considerable amount of intent and energy that went into planning an event like this, whether it's like the logistics, trying to recruit folks, all the things in between. Are there any lessons learned from this experience that you would like to share with listeners out there that maybe might seek to do an event like this of their own at some point?
Speaker 1
26:50 – 27:26
I think no matter what your area of expertise is, no matter what, it is that you do for a living, we all share a same like mind in wanting, justice and equality for our friends and neighbors and people in our community. And it's wonderful that we could come together to make this a reality. And so I really appreciate that despite some people are more technologically minded, where I'm more, arts and humanities. We could come together to do something for the good of the community, and I'm eternally grateful for that opportunity.
Speaker 2
27:27 – 30:29
If I can share something that I tweeted during the planning process, this is a little bit just of my sense of humor maybe, but really relates to the planning process. I posted me, I don't really do anything, parenthesis, after two hours of event planning on Slack, and parenthesis, also me. I guess this is kind of a lot of work when you look at it like that. And I think one of the lessons that I learned is that and I've learned this lesson before, but you know, as lessons go, we learn them over and over. But I think the my the main lesson, my main takeaway from this event was that I initially intended for this event to be pretty small. I wanted Gwen to be there. I wanted the people who are working on her project to be there. I wanted them to have great because there was so great because there was so much interest from so many different people, and there were so many other organizations and people who wanted to partner with us. And I was really excited to have all of those people involved, but it was a bigger logistical event than I initially intended. And so I think that my takeaway was that even though I thought it was gonna be a small event in the beginning, I if I was doing it again, I would wanna plan it as if it was going to be a big event just because I think everything everything turned out great, but I think it just would have been a more peaceful and enjoyable planning process for everyone involved if we would have done things like had in person planning meetings rather than just doing everything through Slack and email. And, you know, one of the things that I tell people all of the time is that when I think about my volunteer projects, I really am not looking for more reasons to spend on my computer at home alone. That one of the things that motivates me about volunteering is getting to spend time with people who share my values and enjoy doing the same things I enjoy doing, like these types of events. And so I would have been happy to plan a few event planning meetings where we could spend time together and have some food and drinks and things like that and just answer everybody's questions in person while we're all together rather than having a lot of little short messages back and forth saying, oh, yeah. Somebody else has already taken care of the issue with the coffee. You don't have to worry about that that type of thing.
Speaker 0
30:30 – 30:44
An important aspect of a project like this is feedback from the folks that would use the the the application, I guess, in this case, in question. So how how have you all managed to, try to, like, manage that sort of feedback loop thus far?
Speaker 1
30:44 – 31:47
When the design for the project came about, it was based on an eligibility determination cheat sheet that I have for expungement law in DC. And so my cheat sheet read like code. If x then y. If this then that. And so basically, the designers were able to adapt my cheat sheet into a line of code and to be able to support it through a PDF that is fillable and disappears can be saved for each client. And so it was really a natural fit that my cheat sheet would have been the basis for the application. And so I'm still answering questions, my expertise in expungement as they're building in more lines of code, but it's fantastic. And I love Slack. I'd never seen Slack before. I joined Slack. It was just terrific because you could just answer questions right then and there and talk to people and upload documents. And so thank you, Slack. I really need to get up on this technology stuff. It's fabulous.
Speaker 0
31:48 – 32:02
Just also wanna comment, we we don't have a Slack sponsorship as much as that may have sounded like it is the case. But, I it's a tool that folks use really successfully, I think, throughout the network. So hearing some praise for it definitely sounds pretty normal to me.
Speaker 2
32:03 – 34:01
One thing I would say about this project in terms of the user is I think that this project is interesting and a little bit different than a lot of ones because on some level, there are two different kinds of users for this this project. One, obviously, is what you might think of as the final end user, which would be the people with criminal records who are looking to have their records expunged. But, really, in terms of code for DC and the projects that we're working on, our users are really the pro bono attorneys who are gonna be using this form. And so I think one of the things that's been great about this partnership and one of the things that Gwen and I talked about right from the beginning is that Gwen has been here all along. And like she just said, she has been on Slack, and she's made herself available to the volunteers working on the project where she can answer questions as things come up. And, you know, one of the things that I talk to people about a lot is that with code for DC, we're really not here to just do free work for companies that don't wanna have to pay a developer to build something. You know, we we don't just get an assignment from an organization, and then they disappear, and then we talk to them again once we finish the project. You know? That's just not what we do. But Gwen has been willing to be present at our meetups and available through phone calls and email and Slack and all of that. And so I think that on another level, Gwen is a user too, and she's been actively involved in the whole development process.
Speaker 0
34:02 – 34:22
A tradition we have here on Civic Tech Chat is to leave space at the end of our episode for guests that are on the program to give us an idea of what we should leave this conversation thinking about, sort of concluding thoughts, if you will. So for each of you, what would you like the listener to take away with them as they depart this audio presentation?
Speaker 3
34:23 – 36:18
Yeah. So, I guess I would reference, something I said earlier because it's sort of becoming my my guiding principle, but the way that your business process interacts with data, and how data lives in your organization, That's that's really what this project comes down to. We we're trying to find a way to represent a very clear legal process, legal analysis as data, and then connect that to a more efficient business process. And if we can do it right, then it can make things go quicker, enable these attorneys who are donating their time to serve more people, make more determinations, find more clients who potentially can have their their records sealed. And those people can then go on to use services that otherwise would not be accessible to them, get housing that they might not be eligible for otherwise, have jobs that they might not be able to get otherwise. So, anything we can do to help help them serve people faster and therefore and and better and therefore serve more people and have more of these outcomes, you know, that to me, that's a demonstration of the power of connecting data more quickly to business processes. And it's also, sort of a An example of how by doing things simply, we can have a big impact. So so I'm That's what I find inspiring about this project, besides the people. And I hope, you know, we'll talk more with Gwen, about the people side of it. But on the technical side, that's sort of, what I find impressive.
Speaker 2
36:19 – 36:59
One of the things that's been really interesting to me throughout this process is to learn about the pending legislation here in DC, where we have several people in leadership positions who are really looking to improve the process. And I think one of the things that's exciting about this project is that when that law changes, that we can update this application, this online app immediately and quickly, and all of the pro bono attorneys will immediately be working from the most recent relevant accurate information.
Speaker 1
37:01 – 37:39
I think that my last thoughts on this is that law, as we learn in law school, is an ever changing thing. And it grows and adapts and changes to fit the changes in society. And technology is pretty much the same way. And I was very happy to see, you know, the intersection of law and technology being done for a good cause. And hopefully, this can happen in many other areas to make society and make our lives, a better place to be.
Speaker 0
37:39 – 37:51
You can follow us on Twitter using the handle at civic tech chat. Visit us on the web at civictech.chat, or subscribe to us for content updates wherever it is you download your podcasts.