Development Sprints

**Monday, May 14th 2018 – Thursday, May 17th 2018** and free to attend (you don't need a Talks and Events PyCon registration to come to the sprints)! </div> We are very grateful for our sponsorships so we can supply our attendees with food and beverages! Development sprints are a key part of PyCon, and a chance for the contributors to open-source projects to get together face-to-face for up to four days of intensive learning, development and camaraderie. Newbies sit with gurus, go out for lunch and dinner together, and have a great time while advancing their project. - <a href="http://pycon.blogspot.com/2016/03/why-not-join-sprints-this-year-at-pycon.html"> Why not join the sprints this year at PyCon?</a> by <a href="https://twitter.com/NaomiCeder">Naomi Ceder</a> What's a sprint? ------------------- <div style="float: left; margin: 15px"> <a href="http://www.youtube.com/watch?v=hOtKgFaFcz0"><img src="https://us.pycon.org/2015/site_media/media/images/2015/03/30/pycon-sprint-video-link.png" alt="Come for PyCon, stay for the sprints!" width="200"/></a> </div> PyCon Development Sprints are four days of intensive learning and development on an open source project of your choice, in a team environment. It's a time to come together with colleagues, old and new, to share what you've learned and apply it to an open source project. In the crucible of a sprint room, teaming with both focus and humor, it's a time to test, fix bugs, add new features, and improve documentation. And it's a time to network, make friends, and build relationships that go beyond the conference. PyCon provides the space and infrastructure (network, power, tables & chairs); you bring your skills, humanity, and brainpower (oh! and don't forget your computer). For those that never attended a dev sprint before or want to brush up on basics, come to our our Introduction to Sprints workshop Sunday, May 13th! For those that want to sign up to mentor beginners at the Sprints, [you can sign here (FORM TBA)]. Who can participate? -------------------- **You!** All experience levels are welcome; sprints are a great opportunity to get connected with, and start contributing to your favorite Python project. Participation in the sprints is free! You don't need a Talks and Events PyCon registration to come to the sprints. Who can run a sprint? --------------------------- **You!** If you've never run a sprint before, the [In-Person Event Handbook](https://opensourceevents.github.io/) is an excellent guide. Please edit this page and add your project according to the instructions below. What's the schedule? ------------------------- Sprints run all day from Monday, May 14th to Thursday, May 17th. <a id="SprintRooms"></a> Where will the sprints be? ------------------------------- The Sprints will take place in the Convention Center. Each Sprinting project will claim its own room or if the room is large enough, it will share the space with other Sprinting Project. Here is a list of all of the rooms we will be using during the 4 days [TBA]: Which projects are sprinting? ---------------------------------- If you are interested in leading a sprint, **please add your project here:** **1.** Please [edit this page](https://us.pycon.org/2018/community/sprints/_edit/) and add a brief description of your project to the list below. Include links to what you'll be sprinting on. **2.** Please also **[fill out this form TBA]** to let us know if you want to be newcomer friendly. <table> <tr> <td width="20%"><img width="100%" src="https://www.dropbox.com/s/sgg0gycy0izo5ne/saltstacklogo.png?dl=1"/></td> <td><a href="https://docs.saltstack.com/">Salt</a> is a novel approach to infrastructure management built on a dynamic communication bus. Salt can be used for data-driven orchestration, remote execution for any infrastructure, configuration management for any app stack, and much more. SaltStack contributors will be present to help you get started with the project, to learn how to write execution modules, fix bugs, or even contribute to documentation. SaltStack will be sprinting Monday and Tuesday (5/14 and 5/15).</td> </tr> <tr> <td width="20%"><img width="100%" src="https://i.imgur.com/RXxcyxu.png"/></td> <td><a href="http://warehouse.readthedocs.io/">Warehouse</a> is the software behind <a href="http://pypi.io/">the new Python Package Index</a>. It's a web application built on top of Pyramid. We welcome package maintainers, backend and frontend web developers, infrastructure administrators, technical writers, and testers to help us make the new PyPI as usable and robust as possible. We're <a href="https://wiki.python.org/psf/PackagingSprints">planning</a> to work on Warehouse, pip, virtualenv, Twine, and other packaging and distribution tools, and have some planning and feedback discussions. <a href="https://github.com/pypa/warehouse/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22">See our "good first issue" GitHub label</a> and <a href="https://warehouse.readthedocs.io/development/getting-started/">Getting Started documentation</a>.</td> </tr> <tr> <td width="20%"><img width="100%" src="https://docs.pulpproject.org/en/pulpproject.org_images/pulp_logo_big.png"/></td> <td> <a href="https://pulpproject.org/">Pulp</a> is a repository manager used to acquire, organize, and distribute Python packages, Docker containers, RPM repositories, and more! Pulp is built with Django and django-rest-framework. We're a great project for a first time contributor! Come <a href="https://pulp.plan.io/issues?query_id=34">fix an issue</a>, contribute a feature, or even <a href="https://docs.pulpproject.org/en/3.0/nightly/plugins/plugin-writer/index.html">add a new content type</a>! We'll be at the sprints Wednesday 5/16 and Thursday 5/17. </tr> <tr> <td width="20%"><img width="100%" src="https://raw.githubusercontent.com/zulip/zulip/master/static/images/logo/zulip-icon-512x512.png"/></td> <td><a href="https://github.com/zulip/zulip/">Zulip</a> is a powerful, open source team chat application built for productivity. We have a vibrant community (over 400 contributors), 90% test coverage, full static typing (mypy), and over 100K words of developer documentation. <br/> We have a web application built on top of Django, and also have desktop clients (Electron), mobile clients (React Native), a terminal client (Urwid), and a bots ecosystem (mostly Python). We welcome experienced programmers and technical writers. It doesn't matter if you've never contributed to open source, we'll have you up and running in no time at all. Come by and say hi before the sprints at <a href="https://chat.zulip.org">https://chat.zulip.org</a>!</td> </tr> <tr> <td width="20%"><img width="100%" src="https://pylint.org/pylint.svg"/></td> <td> <a href="https://docs.pylint.org">Pylint</a> is a tool that checks for errors in Python code, tries to enforce a coding standard, looks for various code smells, it can also look for certain type errors, it can recommend suggestions about how particular blocks can be refactored and can offer you details about the code’s complexity. We're looking for contributors with all kinds of experience and we also have great issues for <a href="https://github.com/PyCQA/pylint/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3A%22contributor+friendly%22">first time contributors</a>. </td> </tr> <tr> <td width="20%"><img width="100%" src="https://i.imgur.com/v9Wws8U.png"/></td> <td> <a href="https://arrow.apache.org/">Apache Arrow</a> is a cross-language development platform for in-memory data. It specifies a standardized language-independent columnar memory format for flat and hierarchical data, organized for efficient analytic operations on modern hardware. It also provides computational libraries and zero-copy streaming messaging and interprocess communication. We're looking for contributors with all kinds of experience. Development getting started docs are available <a href="https://arrow.apache.org/docs/python/development.html">here</a>. Issues are tracked and discussed on <a href="https://issues.apache.org/jira/projects/ARROW/">Jira</a>. The best way to keep up with the project or ask questions is on the Apache Arrow mailing list <a href="mailto:dev@arrow.apache.org">dev@arrow.apache.org</a>. For more information see the <a href="https://arrow.apache.org/docs/python/getting_involved.html">getting involved</a> page. </tr> <tr> <td width="20%"><img width="100%" src="https://xnd.io/xndlogo%20transparentbg.png"/></td> <td> <a href="http://xnd.io">XND</a> is a generalization and re-factoring of NumPy functionality into cross-language C-libraries with Python (and other language) interfaces. It allows development of cross-language operations on general in-memory data structures. It uses the <a href="http://datashape.readthedocs.io">datashape</a> standard to define in-memory data which provides arbitrary n-dimensional, typed-containers (xnd arrays). There are three C-libraries (libndtypes, libgumath, libxnd) with Python 3.x interfaces (ndtypes, gumath, and xnd). We are looking for people willing to write tutorials, and examples, as well as people interested in developing generalized ufuncs, new fundamental types, or integrating XND with PyPY, Jython, IronPython or other Python run-times. Also, if anyone has an interest in integrating XND with other libraries (Numba, Arrow, etc.) please join us! </tr> <tr> <td width="20%"><img width="100%" src="http://na-sj16.marketo.com/rs/284-ESC-480/images/logo_capone_devex_cloud_custodian.svg"/></td> <td> <a href="https://github.com/capitalone/cloud-custodian">Cloud Custodian</a> is an open source cloud management Swiss army knife. It lets users craft policies in yaml that let them manage cloud security, governance/compliance, cost and others. Its got comprehensive coverage of cloud provider features and fully integrates with serverless. We've historically targeted AWS, but we've been expanding our coverage of Azure and Google Cloud. We welcome contributors of all experience levels and we'll be sprinting on multi-cloud support, docs, or check out our extant <a href="https://github.com/capitalone/cloud-custodian/issues">issues</a> for other ideas. </td> </tr> <tr> <td width="20%"><img width="100%" src="http://www.list.org/images/logo2010-2.jpg"/></td> <td> <a href="http://www.list.org/">GNU Mailman</a> is open source email list management software. We will be sprinting to put together the all Python 3 Mailman 3.2 release package. Please join us. We will help you get started with our project. We use Django heavily in our web list management and archiving UI and have tons of work that people with Django skills can work on. We are also interested in accessibility testing of our UI and would welcome your help with that. </tr> <tr> <td width="20%"><img width="100%" src="https://pybee.org/static/images/brutus-270.png"/></td> <td> <a href="http://pybee.org/">BeeWare</a>: Want to run Python code on your iPhone or Android device? Want to write a desktop app with a native user interface? Then why not come sprint with the <a href="http://pybee.org/">BeeWare Project</a>! We've got lots of projects, large and small, for you to tackle, no matter your background or level of experience, and we'll be there to mentor anyone who wants to get involved. We'll also have <a href="https://pybee.org/contributing/challenge-coins/">Challenge Coins</a> for everyone who participates. </tr> <tr> <td width="20%"><img width="100%" src="https://certbot.eff.org/images/certbot-logo-1A.svg"/></td> <td> <a href="https://certbot.eff.org/">Certbot</a> is part of <a href="https://www.eff.org/">EFF's</a> effort to <a href="https://www.eff.org/encrypt-the-web">encrypt the entire Internet</a>. Certbot automates fetching and deploying SSL/TLS certificates from <a href="https://letsencrypt.org/">Let's Encrypt</a> and is run on millions of servers worldwide to help provide and maintain HTTPS access to websites. We welcome programmers and technical writers and no background in Web security is required. You can learn more about contributing in our <a href="https://certbot.eff.org/docs/contributing.html">Developer Guide</a> or find a <a href="https://github.com/certbot/certbot/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22">good first issue on GitHub</a>. </tr> <tr> <td width="20%"><img width="100%" src="http://www.fabfile.org/_static/logo.png"/></td> <td> <a href="http://www.fabfile.org/">Fabric</a> has long been the tool of choice for SSH-based deployment, configuration management & system administration as well as dead-simple execution of Python-defined tasks via a CLI. Version 2.0 is finally upon us, and we'll need lots of help polishing up what's there and stuffing version 2.1 full of whatever didn't make the original cut!<br /><br />The sprint naturally includes work on the projects Fabric 2 is built on: <a href="http://www.pyinvoke.org/">Invoke</a> (task management & subprocess execution) and <a href="http://www.paramiko.org">Paramiko</a> (a Python implementation of the SSH protocol). </tr> <tr> <td width="20%"><img width="100%" src=""/></td> <td> <a href="http://alabaster.readthedocs.io/">Alabaster</a> is a highly configurable Sphinx documentation theme - but it could always be <i>even more</i> configurable! (It also, regrettably, may have a bug or two that needs fixing.)<br /><br />Please understand that the maintainer will be sprinting on multiple projects and won't be able to dedicate the entire time to just Alabaster - but if you've got some patches to review, he'll definitely make time to look them over! </tr> <tr> <td width="20%"><img width="100%" src="https://static.davidism.com/flask.png"/></td> <td> Flask is a micro web framework for building APIs and websites big and small, part of the <a href="https://palletsprojects.com/p/flask/">Pallets Projects</a>. We just released Flask 1.0! 🎉 We'll mostly be sprinting on the other Pallets projects: Werkzeug, Jinja, and Click. Whether you want to investigate issues, write code, docs, or tests, there are plenty of tasks for everyone. </tr> <tr> <td width="20%">Python extension for VS Code</td> <td> <a href="https://github.com/microsoft/vscode-python">Python extension for VS Code</a>: The entire team will be at the sprints all four days, happy to help anyone interested in contributing to the extension in some way get set up and helping out! </tr> <tr> <td width="20%"><img width="100%" src="https://raw.githubusercontent.com/freedomofpress/securedrop/develop/docs/images/logo.png"/></td> <td> <a href="https://securedrop.org/">SecureDrop</a>: is an open-source whistleblower submission system that media organizations can use to securely accept documents from, and communicate with anonymous sources. It was originally created by the late Aaron Swartz and is currently managed by the <a href="https://freedom.press">Freedom of the Press Foundation</a>. The SecureDrop project team members will be present for all the 4 days of the sprint. We will need contributions in every available form including many options for the first time contributors. <a href="https://docs.securedrop.org/en/latest/development/getting_started.html">This guide</a> is a good place to start setting up a development environment for the project. </tr> <tr> <td width="20%"><img width="100%" src="http://docs.python-guide.org/en/latest/_static/python-guide-logo.png"/></td> <td> <a href="https://github.com/kennethreitz/python-guide/issues/688">Python best practices guidebook, written for Humans.</a>: Sprint dedicado a traducir al Español la guía de Python creada por Kenneth Reitz. / This sprint will be dedicated to translate Kenneth Reitz Python guide into Spanish. </tr> <tr> <td width="20%"><img width="100%" src="http://www.mypy-lang.org/static/mypy_light.svg"></td> <td> <a href="https://github.com/python/mypy">mypy</a>: Mypy is an optional static type checker for Python. It is used by open source projects like Zulip, and companies like Dropbox, Facebook, and more. New contributors are welcome! There is plenty to work on; experience with Python and a statically typed language is recommended. For this sprint we will try to focus on improving error reporting and documentation. </tr> <tr> <td width="20%"><img width="100%" src="https://raw.githubusercontent.com/vmware/tern/master/docs/img/tern_logo.png"/></td> <td> <a href="https://github.com/vmware/tern">Tern</a> is a container inspection tool written in Python. It analyzes containers to find what packages are installed in it. Tern is a very young project with lots of areas to contribute to. During this sprint, we will be focusing on <a href="https://github.com/vmware/tern/issues/37">creating an isolated overlay root filesystem from container image layers</a>.<br/><br/> Newcomers are welcome! This is your chance to learn about what container images look like and some cool Linux Kernel system calls. This is my first PyCon sprint, so we'll all be learning together :).<br/><br/> To get contributing right away, make sure your computer has Linux kernel version 4.0 or newer and Python 3.6 or newer. Hope to see you on Monday and Tuesday! </tr> <tr> <td width="20%"><img width="100%" src="https://avatars0.githubusercontent.com/u/8749848?s=200&v=4"/></td> <td> <a href="https://github.com/PyCQA/bandit">Bandit</a> is a tool designed to find common security issues in Python code. To do this Bandit processes each file, builds an AST from it, and runs appropriate plugins against the AST nodes. Once Bandit has finished scanning all the files it generates a report. Bandit was originally developed within the OpenStack Security Project and later rehomed to PyCQA. New contributors are always welcome! Come by on Monday if you'd like to help out. </tr> <tr> <td width="20%"><img width="100%" src="https://raw.githubusercontent.com/falconry/falconry.github.io/master/img/square-logo-with-text.png"/></td> <td> <a href="https://falconframework.org/">Falcon</a> is a reliable, high-performance Python web framework for building app backends and microservices that scale to many thousands of requests per second. It encourages the REST architectural style, and tries to do as little as possible while remaining highly effective. Falcon is used by <a href="https://github.com/falconry/falcon/wiki/Who%27s-using-Falcon%3F">organizations around the world</a>, and is made possible by our fantastic community of open-source contributors.<br> <br> During this year's sprint we will be working on Falcon 2.0, and we'd love to have your help. We welcome both newcomers and seasoned contributors. Please be sure to review our <a href="https://github.com/falconry/falcon#contributing">contributor's guide</a>, and then check out the issues list under our <a href="https://github.com/falconry/falcon/milestone/31">2.0 milestone on GitHub</a>. We've flagged a number of issues that would be a great place to start for first-time contributors. </td> </tr> <tr> <td width="20%"><img width="100%" src="http://tox.readthedocs.io/en/latest/_static/tox.png"/></td> <td> <a href="http://tox.readthedocs.io/en/latest//">tox</a> aims to automate and standardize testing in Python. It is part of a larger vision of easing the packaging, testing and release process of Python software. tox is used by almost all open source projects to ensure it keeps running under all Python versions, enforce code quality and lower the barrier of contributing to those projects. It is made possible by our fantastic community of open-source contributors.<br> <br> During this year's sprint. We welcome both newcomers and seasoned contributors. For more details about how you can contribute make sure to check out <a href="https://github.com/tox-dev/tox/issues/815 "> our dedicated issue for this here. </a> </td> </tr> <tr> <td width="20%"><img width="100%" src="https://cloud.githubusercontent.com/assets/745966/25355190/cc87ae24-2903-11e7-88cd-cb6b9356d80c.png"/></td> <td> <a href="http://www.scikit-yb.org/en/latest/index.html" id='yellowbrick'>Yellowbrick</a>: Yellowbrick is a suite of visual diagnostic tools called “Visualizers” that extend the Scikit-Learn API to allow human steering of the model selection process. In a nutshell, Yellowbrick combines Scikit-Learn with Matplotlib in the best tradition of the Scikit-Learn documentation, but to produce visualizations for your models! <br> <br> During this year's sprints, we are looking for contributors to help us develop / experiment with new visualizers, navigate adding support for other ML libraries like tensorflow & keras, optimizing & extending our existing visualizers and generally helping us fix bugs and improve our documentation with better examples and clearer language. <br> <br> We're an incredibly friendly and welcoming project that will humbly and gratefully accept any contributions that you might make either small or large if you are experienced or just starting out. <br> <br> Checkout our documentation on <a href="http://www.scikit-yb.org/en/latest/contributing.html">Contributing</a> if you are interested in learning more. </tr> <tr> <td width="20%"><img width="100%" src="https://www.adafruit.com/includes/templates/adafruit2013/images/circuitpython/CircuitPython.png"/></td> <td> <a href="http://github.com/adafruit/circuitpython/">CircuitPython</a>: Learn how to build your own CircuitPython! We'll be sprinting to finish our <a href="https://github.com/adafruit/circuitpython/issues?q=is%3Aopen+is%3Aissue+milestone%3A3.0">3.0 milestone</a>. Help is also welcome on improving <a href="https://github.com/adafruit/?utf8=%E2%9C%93&q=Adafruit_CircuitPython&type=&language=">libraries</a> and <a href="https://circuitpython.readthedocs.io">documentation</a>. </tr> <tr> <td width="20%"><img width="100%" src="https://trypyramid.com/img/pyramid_logo_red_on_transparent_background.png"/></td> <td> <a href="https://docs.pylonsproject.org/projects/pyramid/">Pyramid Web Framework</a>: Pyramid is a small, fast, down-to-earth Python web framework developed as part of the <a href="https://pylonsproject.org/">Pylons Project</a>. Very powerful and modular it power many of the sites you seen or use including the new Python Package Index (PyPi) used by the whole community. Pyramid needs you love and your PRs so come sprint with us. All skills level engineers are welcome. </tr> <!-- Copy/Paste the following! --> <tr> <td width="20%"><img width="100%" src=""/></td> <td> <a href="http://example.org/">Example Project</a>: Example Project Description for Example Project. We intend to have a lot of fun, make new friends and build momentum for the project. :-) </tr> <!-- End Copy/Paste! --> </table> [1]: http://www.scikit-yb.org/en/latest/contributing.html