B202/203

Sessions for this room

What circumstances allow volunteer projects to flourish? This talk covers three examples in Debian, diving deep into the questions like whose permission is required, what technical background is needed, and more, to highlight lessons of that can help any open source community organize its activities to empower volunteers.

While only a handful of social networks like Dreamwidth and Quirell explicitly prioritize diversity, there are plenty of lessons to learn about what to do — and what not to do — from Facebook, Twitter, and others. Best practices include counter-oppressive politics, embedded in the community guidelines and norms; and the right tools, technologies, and policies. This session will look at what does and doesn't work in a variety of online environments.

In the past few years, GitHub has become the most widely used platform for managing open source projects, thanks to the ease it provides for submitting and accepting pull requests. However, GitHub's issue tracker is not as full featured as more venerable bug trackers such as Bugzilla, and it is not as easy to use for organizations which have a large number of casual contributors. Come hear how one organization coped with the sudden loss of their Bugzilla database by restructuring their tracking workflow to use GitHub's built-in issue management features, as well as implementing API hooks to provide missing functionality.

Our personal identity is core to how we perceive ourselves and wish to be seen. All too often, however, applications, databases, and user interfaces are not designed to fully support the diversity of personal and social identities expressed throughout the world.

You want to gather information about your users that you can use to improve their experience and yours. They want their identities to be acknowledged and treated with respect. This talk is about meeting both needs: How to ask about gender in ways that welcome the diversity of reality while still being able to analyze the data you get back. We'll discuss the nature of that challenge, how some major websites address it, and example solutions for different scenarios.

In this session, we'll continue the grand Open Source Bridge tradition of learning how to increase team cohesion, identity, and collaboration through music, joining our voices (in our uniquely geeky way) in harmony.

Dogfooding—using your own products—is nice, but is it sufficient to produce good design for people who aren’t you? Our familiarity with our projects and their quirks makes us poor substitutes for users in the wild. So just who are these users, and how do you incorporate them into design and development?
In this workshop, we'll explore user experience design and research strategies that will help you design for people who aren’t you.

Want to make a static site or blog, but not sure where to start? Tired of using Wordpress and looking for something better? This talk will get into the nitty-gritty details of how Jekyll and Pelican -- two popular static site generators -- work, and explain how to choose which is best for your project. Using examples you can clone from github, we'll cover the pros and cons of both SSGs, discuss things that neither does well, and give you a better idea of how to get your site up and running (with an open source tool!).

I have explored weird corners of HTTP -- malformed requests that try to trick a site admin into clicking spam links in 404 logs, an API that responds to POST but not GET, and more. In this talk I'll walk you through those (using Python, netcat, and other tools you might have lying around the house).

Even in an email list, moderation isn't limited to setting the entire email list to require approval before messages are posted. You can create rules which reflect the culture you'd like to see, and call attention to ways that the community differs from that culture. You can point out when a particular post doesn't fit with that culture -- publicly or privately, whichever you think will do the most good. You can point out when a particular post exemplifies something great about the culture. You can point out particular rules that everyone needs to keep abiding by, without calling out a specific post. If a specific person, or a specific handful of people, have trouble with the rules, you could put them in particular on moderated posting for some time. If someone keeps breaking the rules, that person is a good candidate for being removed entirely. There are limits to what the rest of the community and the moderators should have to deal with, even though your project may choose to keep that as a last resort.
Sometimes the problem can be solved by redirection. If the main email list is getting cluttered with off-topic posts, consider a just-for-fun or off-topic side list to divert threads to once they wander off code and into sports, kittens, beer, or knitting. It's easier to say "You shouldn't do that here" than "You shouldn't do that, period"; it's even easier to say "You shouldn't do that here, but it would be great right over there." And most of us could use a sports, kittens, beer, or knitting break every now and then.

Last year the Ascend Project was announced, then in the fall the first pilot took place in Portland. This year we'll report back on how it went, hear from participants, and break down what worked and what could be changed for future versions of this type of program. You'll definitely come away with some ideas for your next learning event, code school, or sponsored training.

You already know how to use “git status”, “git push”, and “git add” for your personal projects. You know how to work on a team project with git version control. How do you achieve the next level of git mastery and fix mistakes? We’ll cover how to set up your git environment for a productive workflow, different ways to undo your mistakes in git, and finally, how to use the IPython notebook to automate an entire git workflow.

Version control is a necessary piece of the open source community and git has an unfortunately steep learning curve.
Here is what I have learned from teaching git to beginners, so you don’t have to make the same mistakes.

What do you do when your project is so old that technology has changed around you? (Or, how do you future-proof a project that you've just started so that when it gets that old, you'll be ready?) Come hear a case study of Dreamwidth Studios, a fifteen-year-old web app with a codebase consisting of a quarter million lines of legacy Perl and a mission to modernize ... if it doesn't break everything.

When Geocities shut down, it did much more than delete a bunch of obnoxious dancing baby GIFs and Limp Bizkit MIDI files. It deleted the ability for people to easily create web sites, and learn how to be in complete control of the content and presentation they provide to their audience. To the economically and socially disenfranchised, it was a disaster that prevented countless people from learning programming. So we brought it back, and open sourced the entire thing (including our financial data). Leave your nostalgia at the door - let us show you our efforts to pave a better future for tech startups, the tech community, and the future of the web itself.

With high profile breaches in open source projects, the issue of security has become one of great import to many people. But many projects, especially smaller ones, are intimidated by the idea of a security audit. This talk will discuss ways for smaller projects to experiment, learn, and even have fun improving their security. No PhDs in security required!