The Changelog: Software Development, Open Source - Civic hacking (Interview)

Episode Date: February 10, 2010

Adam and Wynn caught up with Luigi Montanez and Jeremy Carbaugh from Sunlight Labs and discussed their Python and Ruby projects, government transparency, and civic hacking - open source contributions... as activism.

Transcript
Discussion (0)
Starting point is 00:00:00 Welcome to the changelog episode 0.1.3. I'm Adam Stachowiak. And I'm Winn Netherland and this is The Change Log bringing you what's fresh and new in the world of open source we follow the projects and people of open source software you can check us out at thechangelog.com or for a real-time view
Starting point is 00:00:35 tail.thechangelog.com you can also check us out at github too as well at github.com forward slash explore you can check out some training repos there a la github or some feature repos from our blog thechithub.com forward slash explore. You can check out some training repos there a la GitHub or some feature repos from our blog, the changelog.com. And you can also check out some of the latest episodes
Starting point is 00:00:52 of The Changelog right there if you're listening to Pleasure. And we're also on the Twitter at Changelog Show. And you can follow me personally. I'm Penguin, P-E-N-G-W-Y-N-N. And where do you tweet, Adam? I'm Adam Stack on Twitter, Adam S-T-A-C. Very cool.
Starting point is 00:01:05 We've got a good episode this week. Talked to Luigi Montanez and Jeremy Carbaugh from Sunlight Labs. They're doing some pretty cool stuff in open source, huh? They are. A ton of projects out on the GitHub. The GitHub. Thegithub.com
Starting point is 00:01:21 forward slash Sunlight Labs. Yeah, they got 63 repos last time I checked. And one of the more interesting ones we didn't talk about in the interview. I wish we would have had a chance. But 63 repos, you can't talk about all of those in one interview. Real-time Congress at realtimecongress.org. It's an iPhone app built with titanium accelerator, which we talked about in episode 0.0.8, I believe, with Marshall Culpepper.
Starting point is 00:01:45 Yeah, yeah. Very cool framework to build iPhone apps with technology that you probably already know, web development technologies, HTML, CSS, JavaScript. But real-time Congress allows you to keep tabs on those you've elected and sent to DC. Yeah, absolutely. I think it's pretty cool, too, how we mentioned them being like a multi-language kind of environment, how they support each other and how they play well together. Yeah, could you believe we had a Rubius and a Pythonista on the same show for nearly an hour and no fights?
Starting point is 00:02:14 No fights. See, that's how it really is out there in the world with Ruby and Python. There's no need for fights. I think we probably cut it, but we ended up singing Kumbaya at the end of the episode. It was pretty fun. We cracked up the gin and tonic and sang. Good times. What they do at Sunlight Labs
Starting point is 00:02:31 is their mission is to open up government, shine a light on a lot of the data within our government, and more and more, this is being exposed via APIs. Since we last spoke with these guys, since we recorded the episode, business.gov released an API, we should mention, for small business resources in our own government. And this is hot on the heels of data.gov.uk over across the pond. So hopefully we're seeing a
Starting point is 00:02:56 trend of government transparency and data being exposed so that people in the private sector, even hobbyists, can build mashups using this data. Yeah, I certainly agree. I think one of the pieces we talked about, too, was the open data initiative and how it relates to just people being able to use and consume and use this data coming from government. And also how that relates to human security, which is kind of wild. Yeah, it's our government. It should be our data, right? Yeah, I suppose so. Why not?
Starting point is 00:03:23 So we had a great interview. Should we get to it? Yeah, it's our government. It should be our data, right? Yeah, I suppose so. Why not? So we had a great interview. Should we get to it? Yeah, why not? All right, we're joined today by Luigi Montanez and Jeremy Karboff from the Sunlight Foundation. Luigi, why don't you introduce yourself and tell the folks who you are and what you do at Sunlight? Great. Thanks, Sven. My name is Luigi, and I am a software developer at the Sunlight Foundation.
Starting point is 00:03:57 And I specifically focus on Ruby, but JavaScript and other things like that. And we also have Python developers on staff, too. At the Sunlight Foundation, we're a nonpartisan nonprofit organization and we're based in Washington, D.C. And we basically push for open government and government transparency through technology. So Jeremy and I are in the technical wing of the foundation. We call ourselves the Sunlight Labs. But we also have policy experts on staff who kind of advise and lobby Congress or advise the administration. We have journalists on staff who do investigative journalism, digging up dirt, digging up stories. And we also have some social media folks who kind of reach out to citizens through the
Starting point is 00:04:48 internet and get support for government transparency, our government transparency efforts and things like that. All right. How about you, Jeremy? What's your background and how'd you come to join Sunlight? Well, I actually came from the dark side. I was a government contractor for a number of years and had to repent for my sins, so I came to work for the Sunlight Foundation and opened up some government. I'm primarily a web developer here. I do mainly Python work, specifically Django,
Starting point is 00:05:16 and do a lot of some of the more nerdier front-end stuff as well, so just JavaScript and help people with CSS issues. And Luigi, you call yourself a Rubius, right? Yes, I am. And you guys still talk to each other? We share the same office and it's fine.
Starting point is 00:05:38 There's no problems. We can coexist. Well, if you go out to the Sunlight Labs GitHub page, and that's at github.com forward slash sunlight labs, quite a number of projects you guys have. Any of these that you'd like to highlight for the listeners? Yeah, so I guess one of the few of the better ones we have, there's a project called Ant Hill. We made that to help us, the Sunlight Lab site. And what it does is it provides a bunch of, uh, views and models in Django for, uh, working
Starting point is 00:06:12 with community. So, uh, there's, there's profile pages, uh, to create events, um, to create projects and have people associate themselves with different projects. Um, and that And that one's been pretty good because it's actually been picked up by some other organizations, some within government as well, taking a look at it as ways
Starting point is 00:06:34 to create community around their data or their projects. One of the other Django specific ones is a personal favorite of mine, Django MediaSync. And it's one that we use here on all of our Python projects. But what it does is it manages the media locations between development and production.
Starting point is 00:07:09 So it helps you sync your media to production and intelligently switches all of your paths based on whether you are developing or actually running the application. Not really government transparency related, but at least helps us develop all of our stuff here much more quickly. How big is your team and what's the breakdown as far as Python and Ruby? Any other languages that you guys have as well? We are mainly Python and Ruby? Any other languages that you guys have as well? We are mainly Python and Ruby. I think we're about 13 people right now in the labs. I think we're actually more. We're 16. Oh, wow. Okay.
Starting point is 00:07:39 I think we're somewhere around six or seven Python developers. What are we, four Ruby developers now? Three. Three. Okay. okay, sorry. And then we also have two designers, and then, of course, our boss, and I'm probably forgetting a few other people here, but that's the rough breakdown.
Starting point is 00:07:56 And one thing, too, I've noticed is that both of us who work on the Ruby Rails side and those of us who work on the Python Django side, we kind of share a common bond around the web, right? So around RESTful APIs and around, of course, JavaScript. So
Starting point is 00:08:15 both... I think it's really great that we work in an environment where we have both Python and Ruby. And we really are able to unite around things that we can interoperate, like technology that interoperate well. So RESTful APIs and JSON, and we all love JSON here, and we all like JavaScript,
Starting point is 00:08:44 and we're looking into working with more JavaScript even on the server side. And I know that the change log has been focusing on that stuff a lot recently. You know, and that's how I found you, I guess a couple of years ago, or maybe even 18 months ago or so, was through the Sunlight Labs API that you mentioned. And that is at services.sunlightlabs.com forward slash API. Talk a bit about what the API does and sort of the technology behind it. Sure. So it's a Django app, but it's a RESTful API, and it follows pretty good conventions.
Starting point is 00:09:24 It speaks both XML and JSON and what it does is it's really about members of Congress. So if you ever needed to do things like get take an address
Starting point is 00:09:39 an unformatted address string or a or latitude-longitude coordinates and find out exactly which members of Congress represent this particular spot. You can do that with our API. And you can also do things like the difference between Jack Murtha and John Murtha. Obviously they're the same
Starting point is 00:10:11 person but it does good nickname standardization. So it's there are I wrote the Ruby wrapper. There's a Python wrapper for it and there's also a Java wrapper.
Starting point is 00:10:27 And are there any more? I think that's about it. Is it PHP? Oh, PHP, of course. There's a PHP wrapper too. And it supports JSONP. So if you ever need to just hit it via client-side JavaScript, it works really well that way too.
Starting point is 00:10:47 And for those that don't know, JSONP is JSON with padding, so it's essentially making the same API call that you would normally make to get that JSON-formatted JavaScript object notation back, but you can pass a callback function, and it will wrap it in that so you can do neat cross-site domain calls.
Starting point is 00:11:06 A lot of APIs are starting to support this. So we talked a little bit about the back-end pieces of Python and Ruby, and you mentioned a few designers. What kind of front-end technologies do you guys dabble in? Specifically, are you dealing with any sort of CSS meta-frameworks like Sass, Compass, LessCSS, XCSS? I'm not sure if any of the Ruby projects have tried it, but we've actually tried to stay away from it. Our designers really like their CSS and HTML, so we've proposed it to them, but they've resisted a little bit. Do they leverage any sort of frameworks like Blueprint? No, I think Eric Meyer had a CSS reset-based style sheet.
Starting point is 00:11:56 We tend to use that, but otherwise... Homegrown CSS? Yeah, homegrown CSS. JavaScript side, we mainly use jQuery. Been using some underscore.js lately, which has been fantastic. I was hoping that you might have mentioned Node there because I thought you were going to say that we mentioned Node quite a bit lately on the changelog. I think this is probably like the sixth podcast straight that we've mentioned Node.js.
Starting point is 00:12:19 You guys dabbling that much at all? We've just played with it. I've played with it personally. I think also Jeremy has. The idea of writing end-to-end JavaScript is a great one. I think maybe we're all in the same boat where we're just starting to play with it. I personally want to try and write an analytics service using Node
Starting point is 00:12:42 just because I think the evented model would, I'm sure that's what Google Analytics uses. So it would be really interesting to try that out with Node. You guys mentioned earlier that you play well together, Ruby, Python, there's no fights. And I guess in your world you're also non-partisan so that kind of plays right into it.
Starting point is 00:13:06 And that's something we hear back from our listener base, that they get really excited when it's not just about Ruby because Ruby tends to get highlighted quite a bit. But it's kind of nice to hear you guys say that you don't fight and you play really well and you have a lot of the synergies between, I guess, your morals, your developer morals, right? Right. Yeah, I mean, I think both languages, both frameworks have great ideas. And I remember a few months ago, there was a post by one of the Django lead developers who kind of said,
Starting point is 00:13:42 he was kind of saying, the great things we've learned from and can learn from Rails. And at RubyConf this past November in San Francisco, Chris Wanstroth, who I know you guys had on earlier, he gave a talk called Ripping Off Python to a room full of Rubyists. So, you know, both languages are great, and there's no need to have any silly spats or disputes. You know, one thing that I love about development is code is more than just code.
Starting point is 00:14:17 In the case of GitHub, code is sharing, right? Many would say code is also art, but in your case, code is activism. Why do you think that developers should apply their skills towards a cause that's close to their heart? Well, I think for developers who might not have dabbled into open source as much as they want. So maybe they haven't contributed as much or maybe they haven't found the courage yet to just put out their own code out there.
Starting point is 00:14:54 I think working on open government and what we call civic applications, or sometimes I call it civic hacking, is a really great first step because not only does it benefit the developer for taking that first step and putting open source out there, it's going to benefit his community, like real people in his community, whether it be some local app. So one example of a civic app is a pothole reporter to your local city government, right?
Starting point is 00:15:27 So if people come across potholes, maybe you can create a really simple interface that will maybe – we're dealing with city government here. So maybe it will just email some city worker and tell him, hey, there's a pothole on this street or this corner. And that's a really simple app that any web developer can slap together really quickly. And when you do something like that and you make it open source, that means other people around the country or even around the world can share it, or excuse me, can use it for their own purposes and maybe make it better. And it also means that you're helping people around you and people in your community with their day-to-day lives. So I speak from a Rubyist point of view, you know, there's so many, let's say, Ruby testing frameworks, right? So do we really need another Ruby testing framework
Starting point is 00:16:26 or do we need something that can really change lives around you? And that's why we like talking about civic hacking. And we've also found that you could rely on government transparency organizations to get government data and interpret it for the public, make people's lives better. So you guys are in D.C., right? So what is your focus? Is it on the federal, the state, or is it kind of more localized? So when we started out, we were focused primarily on the legislative branch of the federal government.
Starting point is 00:17:27 We've actually expanded over the past year. So we've started focusing on the executive branch and also state government as well. We're not as active in state government yet. One of our projects that we're working on is the 50 States Project. And what that is is an effort to create parsers to scrape the legislation that every state has. There's practically no consistency between any of the state governments as to how they publish their legislation, if they publish it at all. So this project is to scrape it, bring it all in, and present it in a common format so that if you wanted to find out the laws in each state, you would have a consistent mean of doing so.
Starting point is 00:18:18 And Jeremy just brought out a really good point that reminded me. So another great benefit to a developer doing civic hacking is that I really mean hacking. So here's something with the 50 state project where we have to essentially scrape websites of all 50 states and figure out how to get the actual text of their bills into machine readable formats. And that's a really great skill for a web developer to have to do scraping.
Starting point is 00:18:56 Another skill you'll probably gain is working with really big data sets and imperfect data sets. And that's how it is in the real world. And those are skills that you can market yourself as having after you've done some apps like these. You know, one of the growing trends has been the government 2.0 space, as it's called. You know, a lot of what you're doing is having to scrape Web 1.0 websites to get the data that you need for these particular types of applications. But how do you see the development of technology behind the government firewall changing the landscape for your type of apps going forward? Well, I think with the Obama administration, they've been very in tune with the needs and the kind of demands of the Government 2.0 movements. And of course, they're not at all perfect,
Starting point is 00:19:48 and we'd love to see much more out of them. But things like data.gov are a huge step. So data.gov is a data catalog of not all, but many data sets that the federal executive branch puts out. So all the departments like the Department of Commerce, the Census Bureau, the EPA, things like that, they've started publishing their data. And there was recently something called the Open Government Directive, which came from the White House. And there was recently something called the Open Government Directive, which came from the White House.
Starting point is 00:20:28 And it was essentially a memo to all heads of all the major agencies that said, you have to, on your website, have a slash open page. So for example, the State Department is at state.gov. So the State Department is now mandated to have a webpage at state.gov slash open. And I'm actually not sure if they put it up yet, but that page is to contain links to datasets that you are publishing, data sets that should be useful for developers and for researchers to remix and to reuse. And also have on your slash open page information about how the public should work
Starting point is 00:21:18 with your department and how they should communicate with you. And that's really what we mean when we say transparency, right? Just making government more accessible and making it so that citizens can really see the value that they're getting out of government. When we talk about this openness and we talk about citizens, how do we know it's the right citizens getting a hold of this data? What kind of data is available and what can you really do with that data?
Starting point is 00:21:47 What if somebody from a different country did it for the wrong reasons? When we say open data, we don't mean anything sensitive intelligence-wise or defense-wise. We definitely don't mean anything personally identifiable. Like we don't want the IRS releasing people's tax returns, things like that. What we mean is our things like how, like let's say the federal budget, right? There's a lot. The federal budget was just released this past week. There's a lot of data in there.
Starting point is 00:22:24 There's a lot of data in there. There's a lot of money being spent. We'd like to get a really clear picture about where that money is going to, how it's being spent. Things like campaign contributions to members of Congress. We want to know who's contributing and how much they're contributing, which industries are giving to which congressional candidates, because we can see that based on what money a particular member of Congress might receive for their campaign, they might be inclined to vote one way or the other when it comes to legislation. We actually had two contests here at the Sunlight Labs. We call it Apps for America. And I actually think Wynn was a participant in the first one.
Starting point is 00:23:12 And Apps for America is essentially just a development contest, an app development contest. And we gave away cash prizes. And it was essentially use some government data sets that is either from government or is from a transparency group like the Sunlight Foundation that we also have some partner groups out there
Starting point is 00:23:33 and do something useful with that data. So if you go to, I believe, sunlightlabs.com slash appsforamerica. Let me just double check that URL. You'll see the results of, you'll see the page and the results of our first contest. And another event that you guys have
Starting point is 00:23:58 is the Great American Hackathon. Is that an annual event or? Yes. So this past December, we had a kind of a distributed nationwide hackathon uh called the great american hackathon and it was our first annual hackathon so our plan of course is to make um make this a regular hopefully an annual or even more frequent occurrence and uh the idea was that we wanted to get people who are into open government, who are developers, together in one place in the same city
Starting point is 00:24:30 and just let them meet each other and start working on some projects. And we had some pretty good projects that came out of it. There was a – out in Silicon Valley, there was a NASA attended hackathon, and they worked on things to make NASA better. And there were employees from NASA there. And then we had a lot of other hackathons across the country in Chicago, New York, Philly, and we had a great one in Phoenix. So, you know, there's definitely people out there. sunlightlabs.com, because it's a system where developers can register and they can see existing projects or they can make their own projects. They can find other like-minded developers, people who are into this, and you can even post events.
Starting point is 00:25:35 So it's a bit like a little social network we built on our website. And it's there really to just serve the community and help people find each other and help people get ideas on what to work on. I was going to ask you also, I guess this probably answers that question, but how are you guys driving awareness about these kinds of events and how to, you know, reach out to individuals who might be interested in it, but aren't really in that circle quite yet? How do you reach out and engage developers to get involved? That's actually a difficult problem that we are trying to solve.
Starting point is 00:26:11 So we do go to local meetups here in the DC area, various language-specific or even just general technology groups. We've sponsored some code sprints at various conferences. And we've actually tried to get different partners. So like for the Great American Hackathons, we partnered with Mozilla, Red Hat, and Google, and among a few others, and trying to get them to help or at least advertise some of these events to their community as well.
Starting point is 00:26:51 So we're always looking for ways that we can let the development community know more about what we're working on. If I could also just mention that I see O'Reilly's name there as a listed sponsor, so I guess having Gov 2.0 conferences every year is a pretty good way to drive awareness as well, right? Yes, that absolutely helps, yeah. Yeah, I mean, when you have people like the O'Reilly folks that are really spearheading the effort, that always helps to get the tech community to pay attention to it. On the note of Tim O'Reilly, just going back maybe, I don't know, five years when the term was coined, Web 2.0, I thought it was kind of wild that everybody sort of cloned to that term and it was about AJAX and JavaScript and this asynchronous way of having your interface taught to the back end and all that good stuff. But one of the things that Tim really drove home with that term was just having this connected
Starting point is 00:27:46 web, this web as a platform. And he's always been a proponent for the good side of technology and always helping people live better lives through technology. Yeah, he's been a huge supporter of us. And he came to Transparency Camp. We have a bar camp-like event. We had two last year. And he came to those. And I think O'Reilly is publishing a book soon called Open Government, which is kind of an anthology about these topics. And if you read the O'Reilly Radar blog, they talk about Gov2O and transparency topics very often there. And one of the great analogies that Tim O'Reilly has kind of talked about a lot about this topic is that government, we can't think of government as a vending machine where we kind of just put money in it and expect something to come out. We just can't maybe shake it a little bit if it doesn't do what we want and expect something to fall out.
Starting point is 00:29:04 We really need to be actively involved in government. And as technologists, as developers, that means lending our skills to making the change that you'd want to see. And we have the skills to do it. And it's now just a matter of harnessing that energy and moving forward. Yeah, actually, the book that you mentioned, we've got a chapter coming out in that book. I'm not sure what it's called. I think it's due out later this month about TweetCongress, a site that we built primarily on top of the Sunlight API. So it's amazing that you have an idea for a site that, in our case, we just wanted to let folks find their Congress representatives on Twitter.
Starting point is 00:29:51 And we didn't have to start from scratch because you guys already had excellent seed data, but the big missing piece you alluded to earlier was to be able to put in a formatted or unformatted address string and get a list of Congress people back was just amazing. So kudos to you guys for having apps out there like that because the mashups are just powerful that you can build. And if you see something's wrong with your government, you can step in and at least try to make it better in some way. Yeah. And I'd also like to point out that, you know, when we talk a lot about campaign contribution data or earmark data, it can give the impression that it's, you know, we're out there to do, you know, gotcha journalism or, you know, try to do muckraking. And, you know, while of course that is part of it, you know, it's also about having trust in your government. And we really feel that when you feel like you're involved, when you can see how your government is working, when you can see why it's making the decisions that it does, and it helps the public have a greater trust and feel more involved with the actions of the government.
Starting point is 00:31:10 And what better way to see how your government is working than the actual data byproducts that it produces? I guess you really can't hide from the pure data that comes out of it. It's analytical. You can comb through it. You can parse it. You can track it. You can do a bunch of stuff with it that you just can't hide from the truth. Exactly, yeah. So if you're looking at why EPA makes the decisions that it does, when you're able to get access to the raw data that they base their decisions on, you can see if they made bad decisions or if you see that they've made good decisions. It does help make the public trust of the agencies and government more. One of my favorite applications is Capital Words.
Starting point is 00:31:50 Is this one of your apps, or you guys sponsored this in some way? No, that is one of our apps. One of our developers here, Josh Rooley, he had the idea for it. We have another application called LewisDB that scrapes the Federal Register and a bunch of other government publications. And the Federal Register also contains what was said on the House floor. So Josh had the great idea of wanting to know who said what. So Capital Words analyzes the Federal Register to see how many times people have used different words. So you can go on. You can look at different members of Congress and see what words they most frequently use on
Starting point is 00:32:29 the House floor. You can look up specific words and see who uses them. You can compare the usage of different words across time. It's pretty amazing. Well, as Adam knows, I'm an API junkie and also a political junkie, so this is kind of a mashup of two things that I really enjoy doing. CapitalWords.org slash API, and that's capital as in the capital dome with an O. I have a cool map there on the right
Starting point is 00:32:58 hand side. You can see the most vocal states from the congressional record, and glad that Texas is representing there with the dark red color. How often is this updated? I believe that it's updated nightly. The underlying data is updated every day, and if I recall correctly, I think the data is processed nightly.
Starting point is 00:33:23 And you also get the list of most used words there. That's just – it's incredible to see our congressional record just mapped like this. It's amazing. Yeah, it's really interesting to see trends in government. I can't remember the exact word. There's some energy-related word. It might be oil. It might be something else.
Starting point is 00:33:43 I think price of gas. Is that it? Price of gas? Something like that. I'd have to look it up. But you can basically see that pretty much the same time every year these topics are going to come up. If you search for marriage, you see that there's a huge spike right before congressional elections, and then it basically falls to the wayside afterwards. So it can reveal some interesting insights into the politics of what Congress is talking about.
Starting point is 00:34:12 Right. And also if you search for energy or gas prices, those are much more likely to be said in Congress during the summer months because that's when, of course, gas prices are on everyone's mind. And so the congressional record is essentially what you see on C-SPAN. So when you see a member of Congress on the floor of the House or the Senate and they're talking, and sometimes it seems like they're talking to an empty room, but that all gets transcribed and we take all those transcriptions and that's what powers Capital Words. So in addition to Capital Words, you have Open Secrets and MapLite. Why don't
Starting point is 00:34:51 you talk about two of those real quick? Well, those actually aren't our projects. We are a grant giving organization as well. So those are two partners that we've worked with. We've given both of them grants, and we also collaborate on various projects and data as well. But MapLite is great. different corporations and different organizations and basically mapping campaign contributions, uh, to, uh, uh, representatives, uh, based on, you know, their final vote and the, uh, you know, the support for against the bill by the companies that were giving them money. Um, and they've expanded to some federal data as well. So that's a really amazing project. Another really popular site that's a partner of ours is called OpenCongress, opencongress.org. And this site essentially is,
Starting point is 00:35:58 I like to think of it as what the Congress's website should be. So at OpenCongress, you can essentially, on their front page, they link you the full text of the legislation that's being considered for passage in the House or the Senate. So right there, you can read it. There's a lot in the news these days. There's a lot of talk and punditry about what is or is not in bills or what it means. But here on Open Congress, you can actually read the text for yourself.
Starting point is 00:36:31 It's a really nice UI. And you can just see just the raw data, right? Because this is what it is. And it's unfiltered. And it lets the citizens access it at the base level. So this is something you guys do, opencongress.org? So this is a partner of ours. And so we give them grants, and we help them.
Starting point is 00:37:00 We advise them and things like that. And this is, I should mention, a Rails app, so a little plug for myself. And the other really great thing about Open Congress is you're able to go on and not only just comment on the bill itself, but actually go down to each paragraph of the bill. And you can have discussions about certain topics as to whether this paragraph is needed, how it could be changed to, you know, make the bill better. So it's, it's not only is it there to help you, you know, get information about bills, but it's a great way for people to actually interact. Now, if only Congress took that feedback and made changes from it, that'd be fantastic. But,
Starting point is 00:37:44 you know, that's something we can work on. It's a fantastic site, absolutely fantastic. When we launched TweetCongress.org late last year, or I guess the year before last now, one of the things that surprised us was overseas we had kind of sister sites that cropped up, people that wanted to do the same thing for their country. So they sought us out to compare ideas, and a lot of them have created sites that far surpass what TweetCongress does. To what extent do you guys talk to folks in other governments overseas? We actually have had some communication with other governments and specifically other groups in other countries that are working to open their governments as well. It's really not our focus. So,
Starting point is 00:38:32 you know, we don't do any work directly with that, but we're always looking to cooperate on, you know, different methods, tactics, applications, you know, best practices for getting data out of government? I know that in the UK, for listeners in the UK, there's a really good group called MySociety, which does a lot of the same kind of work that we do. And recently in the UK, they actually released their own site called data.gov.uk. And that's just really notable because one of the advisors or the main drivers behind that site is Tim Berners-Lee, who is essentially the inventor of the World Wide Web. He's the guy who, I think, developed HTTP spec.
Starting point is 00:39:27 And he's now really into the semantic web and he's worked a lot with the open government folks in the UK on these things. And there's also a Canadian group called Visible Government. I think there's also one in New Zealand called Open New Zealand. And so these things are popping up all across the world. At Sunlight, we mainly focus on the U.S., but there's starting to be groups like us all over the place now.
Starting point is 00:39:57 Data.gov.uk is a fantastic resource. And I think the contrast is this is government-sponsored and government-led as opposed to you guys trying to kind of open up the government. To what extent does our government here in the States offer traditional what we would call APIs as opposed to just giving you the data in some raw format that you have to parse? Well, it's not that often that they have APIs for data that we would like to have. And even if they provide things like bulk downloads, it's often in very arcane formats. If you try to get campaign finance contribution from the FEC, it's a COBOL fixed-width format. And each individual record could be in one of over 20 different formats. And it's really arcane, no documentation. So even when data is provided, it's not this on purpose to keep things hidden or that they just don't have an interest in it. And I think one of the main things that we have found
Starting point is 00:41:08 is that it's not so much an issue of that, but government just really doesn't know how to do it or know what the open government groups want from them. And a lot of agencies that we've come to talk to have actually been quite open to making some changes. And yeah, so it's pretty encouraging. What do you think will change that landscape? What has to happen for new projects
Starting point is 00:41:40 to be open from the get-go and publish as much data as they present? I think we just need to keep pushing them. And the biggest thing, especially what we do at Sunlight, is we give real examples of how data can be useful and how we can make that data relevant to the average citizen. So at Sunlight, our designers, they do something called redesign the government. So if you've ever tried to go to a government website, it probably wasn't the nicest user experience. One thing our designers do is they take existing websites and do some mock-ups
Starting point is 00:42:28 on what a really good user experience for that website would be. Then on our end, for the developers, the sites we work on, the apps we work on, like Capital Words or the Sunlight API, they all serve, and also all the Apps for America entries, which I talked about earlier, they all serve as kind of an example as, hey, you know, this stuff can be done. developers who are really essentially volunteer developers working on something on their own time, or they're in small organizations like Sunlight, where there's only 15 or 16 of us right now. They're not in huge government bureaucracies.
Starting point is 00:43:17 They're not in huge consulting firms. This is something that the internet and open technologies and open standards are all things that make things a lot more easy to build and a over and over again and just making it very apparent to those within government and to citizens that there's a better way with IT in government. And we're trying to show them that. And I think it's also important to realize that government technology is very different from, you know, the technology that we use on a day-to-day basis or even the communities that we are involved with. I don't want to generalize, but there are probably quite a few government developers that just have never heard of JSON or REST APIs. So there also is a process of helping government learn about new technologies, new ways of providing data, and new ways that citizens can interact with government.
Starting point is 00:44:42 How does open source impact this? Because if you caught the headline recently over at Mashable, there was a headline that said, why open source is the new software policy for San Francisco? And you see governments start to step up and say open source is more useful and we should really leverage it, and that obviously helps the communities grow and helps foster new communication between different developers. It just fosters lots of great stuff. How does that impact that piece there to help people learn there's different ways to do things and there's new ways that we should be looking at technologies. I think the obvious benefit is that open source can be reused by other governments and other agencies. So a problem with government bureaucracies a lot of times is that they're very compartmentalized.
Starting point is 00:45:41 So one department has their way of doing things, one department has their way of doing things and another department has their way of doing things. And, you know, the two don't talk. And as we've seen with the open source model in our world, that's, you know, software that can be shared and reused and modified is incredibly beneficial to all of us. So the idea is that open source software, let's say a transit app for the city of San Francisco, if that's open source, maybe Washington, D.C. or maybe New York can take that app and modify it slightly for their needs and then release a very similar app. So it should benefit everyone. So it's almost a conversation through code.
Starting point is 00:46:36 Because like Wynn said earlier, open source, you guys use it as activism in your roles. And it's like day in and day out, you guys get to use open source as your day jobs. But it's communicating. It's, you know, software essentially becomes the means to communicate. Right, exactly. One project that actually comes to my mind, this is also a group we work with.
Starting point is 00:47:01 They're called Code for America. And Code for America, I think it's codeforamerica.org, they are essentially creating developer teams to drop into cities. I think they're going to start in 2011 and they're going to start recruiting developers this year. And essentially these teams of developers
Starting point is 00:47:20 are going to live in a particular city for most of the year and just work on open source apps in service of that city. And they're going to talk to each other and they're going to see where the different teams can collaborate. And it should be a really great project and I look forward to seeing what comes out of it. That's called Code for America, if anyone's interested.
Starting point is 00:47:48 And another way that open source really helps out is also from our perspective looking into government. Kind of like how Luigi said that redesigning the government series is a great way to show concrete examples of, you know, this is how it can be done. You know, I think open source apps that use government data can also be a great example of how things should be done. And if they are open source, then it actually opens up the possibility that the government could actually reuse these applications at some point in the future, which would be great. So if someone wants to go to their local meetup, their Ruby meetup, their Python meetup, and get their buddies together, and they've got an idea, and they want to work on something, what steps do they need to take?
Starting point is 00:48:37 What kind of support can they get from Sunlight to kind of point them in the right direction? Well, we have the sunlightlabs.com site. Up there we have a list of projects that we sponsor and also different projects that the community is working on. You can also find events in your area and also find other people that have registered as part of the community within your area. So that's a great way to find people and various projects
Starting point is 00:49:05 to work on we also have a Google group and you can see that the link to that on our website and we also have an IRC channel on Freenode it's Pound Transparency and
Starting point is 00:49:20 anyone interested can go in that and you know we're on Twitter we're on Twitter. We're on Sunlight Labs. And if you're interested in any of this, just literally just talk to us, and we're going to help you. I mean, part of our job, more than just developers, is to get other developers engaged and involved in what we do.
Starting point is 00:49:43 And we're more than happy to talk to anyone with any projects ideas, no matter how, how kooky you might think it is, it's, it'll probably be a really good idea. Have you seen this expand in any way in any of these cities where developers from different backgrounds might be coming together just in having meetups around, you know, open government? I know that from the Great American Hackathon, which we had in December, we had a lot of energy around the Silicon Valley, NASA meetup, or excuse me, the hackathon. And there's also an organization in New York City called Top Labs, T-O-P-P Labs. And they do a lot of the kind of same work we do, but at the city level. And I wouldn't say that our communities are as, I guess, organized as Ruby or Python communities are yet.
Starting point is 00:50:39 Because those are kind of general language meetups and they attract a broad audience. But I think it's getting a lot better and a lot of people are really being turned on to what we do. And hopefully throughout this year and the coming years, we're just going to keep growing and growing our community. They say all politics is local and hopefully this will be something that develops into that where we see communities that kind of crop up to tackle some of these problems, especially at the local level, so that we can use our skills and kind of fix some of the problems we're seeing. Exactly. So we're probably to the point of this show where we ask you what is on your open source radar. So we know that you guys create a lot of open source software. I know you consume a lot of open source software.
Starting point is 00:51:27 What gets you excited? And what do you see in the next six months to a year that you really want to tackle and start using? So for me, something I recently got into just over the weekend, really, because have you guys talked about the iPad yet on the show? I think this show has been iPad free. But so in response to the iPad last week, the next day I can work on at home and not have to drag my MacBook Pro back and forth on my daily commute.
Starting point is 00:52:13 So I got a little netbook and I started looking into installing Chromium OS on it. And so I'm just at the beginning stages of learning about Chromium and the kind of setup they have there. But I'm really psyched about it and I think it's a great project and it's definitely a lower level. It's an OS, of course, so it's a lower level thing than my day job, which is essentially web development.
Starting point is 00:52:51 So it's something that I hope to really get into and learn about in the coming weeks. Where do you see the sweet spot being for that particular OS? I think it's really, of course, it's meant for netbooks. That's what they've pushed it as. One thing that I was really surprised at was to actually build Chromium, you need to have Ubuntu Karmic on it, the latest Ubuntu.
Starting point is 00:53:18 And so actually, I first installed Ubuntu Karmic, and there's actually what they call a Netbook Remix version of Ubuntu. And I installed it, and the interface is really interesting. It's an interface that you actually want to touch. They have very big buttons, and it's just the menus are laid out in a way that it seems like, hey, there should be really a touchscreen here. So it kind of makes me think that both Ubuntu Netbook Remix and maybe Chromium, they definitely want you to just call it Chromium because Chrome is actually the end product and Chromium
Starting point is 00:53:58 is the open source project name. So both Ubuntu and Chromium are, I think, are really heading towards the touch tablet market or maybe touchscreen netbooks. I'm not entirely sure how technology has advanced in regards to that yet. But I think that something as a developer to really keep your eye on is the kind of natural computing interfaces like touch and maybe even something like voice. Because if you've used the voice recognition on the Google Nexus One, it's a pretty nice way to interact with your phone. You can kind of dictate your tweets and it works really, really well. So things like that, maybe getting a little bit away from the web world
Starting point is 00:55:01 and more into the physical computing world, that's something that's on my radar. How about you, Jeremy? Well, one thing that's made my life a whole lot easier over the past few months is it's a Python package called Saucebrush. And it was actually written by one of our co-workers here in the labs, James Turk. But it's a very lightweight ETL framework for Python where it lets you create these recipes of input sources and output sources and different filters to apply to your data. And so if you have a very large data set
Starting point is 00:55:36 that you want to process, that you want to transform or change it into a different format, insert it into a database, it's a really, really fantastic framework for just making these simple recipes to manage your data. Other than that, I've been using Homebrew on the Mac for managing packages and everything, and that has been amazing.
Starting point is 00:56:00 Python has some issues with its database drivers. They can be notoriously difficult to get installed, but with Homebrew, everything just works, and it's amazing. Yeah, we featured Homebrew in the last episode. It's one of those things that I think it's a pain point that a lot of folks in the macOS have, and hopefully it's making a dent in that pain, just making package management simpler.
Starting point is 00:56:28 It's one of the things that when I moved to the Mac from the PC platform because I was kind of straddling Windows and Linux there for a while, I was just amazed that having a Unix-based OS and OS X, that there was no robust package management like what you found on Ubuntu or some of the other Linux distros. Yeah, and there is Fink and Mac ports, but they're quite heavy-handed in how they install the packages and how they change your system.
Starting point is 00:56:58 So, I mean, Homebrew is great in how fairly hands-off it is and standalone. You know, with those, though, it's amazing that they're still not distributing binaries with those. Right, yeah. They're still compiling from source. So you do a port install like Zapien or something like that and then leave it for an hour and come back and it's still chewing on the install.
Starting point is 00:57:20 Right. Well, you guys are doing some exciting work. We're anxious to see what becomes of the hackathons this year and the Apps for America 3. I know that I'll be participating in some way in either of both of those. And I know folks listening are probably excited about how they can jump on board and participate in some of these open government initiatives. Yeah, don't count me out. I want to get involved too. They do need designers and lightweight copywriters.
Starting point is 00:57:50 You know, we didn't get to talk – I mean, we've gone on pretty long here, but I mean, that one opencongress.org, that was a beautiful UI. I just – if we had more time to talk about it, I would have loved to picture guys' brains about the design process behind some of the applications. But maybe that's something that maybe you can answer via text or something like that. We can attach this as a show note or something. Sure. And I'd also say just stay tuned to some of our contests.
Starting point is 00:58:18 I can't really talk too much about them just yet. But we are going to try to also get designers involved in the community as well. That would be awesome. I mean, I don't have the back-end Rails skills like a lot of you guys have, but I certainly have some good front-end skills that could be leveraged. But you guys also have something called Transparency Camp coming up. Do you guys want to mention that before we head off? Yeah, that would be great.
Starting point is 00:58:40 So at Sunlight, we're hosting an unconference called Transparency Camp, much like bar camps that have been around. And it's at transparencycamp.org. And it's going to be in late March, March 27th to the 28th. And it's going to be here in D.C. And everyone listening who might be in the area or who may even want to make the trip are more than welcome to join us. It should be a really eye-opening experience. And I remember at last year's transparency camp here in D.C., people like Tim O'Reilly were here and Craig Newmark from Craigslist were here. And people who work in the government come
Starting point is 00:59:25 and you can really get a sense of what it's going to take to bring government transparency to our governments. And it's a great and awesome conference and I'd recommend it to everyone. In addition to Transparency Camp, I know that you'll be speaking at Los Angeles RubyConf. Is that right?
Starting point is 00:59:46 Yes, I am. I think it's February 19th and 20th is LA RubyConf in Burbank, and I'll actually be talking about this topic, civic hacking, over there. And so that should be really fun. And I look forward to going to LA, as here in D.C. it's been snowing and cold and miserable. What about you, Jeremy?
Starting point is 01:00:11 Heading to PyCon? I will be there. Last year we did hold a Sunlight Labs sprint, but I don't believe we're doing that this year. So there'll be a contingent of Sunlight Labs developers there, but just attending. Luigi, Jeremy, it was really awesome for you guys to take the hour and 18 minutes out of your lives to sit down and chat with me and Wynn. I know that our audience certainly appreciates it, and we open source lovers certainly appreciate what you're doing for our government and keeping it open and making it more open and everything you're doing,
Starting point is 01:00:42 especially that it fuels your passion, that it opens up your passion. It's so awesome that you guys get to do that every day. I mean, that's such an awesome job. But thank you so much for coming on the show. It's been a pleasure. Thanks. Thanks. Thank you for listening to this edition of The Change Log.
Starting point is 01:01:04 Point your browser to tail.thechangelog.com to find out what's going on right now in open source. Also, be sure to head to github.com forward slash explore to catch up on trending and feature repos, as well as the latest episodes of The Change Log. All of us to try Bring it back, bring it back to All of us All of us All of us to try Bring it back, bring it back to

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.