Birds of a Feather Sessions¶
The idea behind a Birds of a Feather session is to promote community growth through informal discussion or relaxed panel discussion with substantial audience participation. At SciPy, we’ve had success organizing BoFs to enable attendees interested in topics and projects to gather for discussion.
Format and Content¶
There are two primary formats for BoF sessions. The first is an informal or roundtable discussion session. The second is a moderated panel discussion, inviting substantial contributions from the audience. For both of these types of discussions, however, one or two moderators and organizers are necessary to ensure that the discussion is both guided and cohesive. Moderators are encouraged to either identify participants that will attend (for roundtable or more informal BoFs and to have an estimate on numbers) or identify panelists in advance for panelist discussions.
For panelist discussions, moderators should prepare questions in advance, be prepared to keep the BoF moving along, and enable questions and answers from the audience. Successful topics in the past have included broad discussions of reproducibility, greater inclusion of women in scientific computing, the advancement of Python within different scientific domains, future directions for scientific Python, and educational programs in Python.
For informal or roundtable BoFs, having a list of topics beforehand can be useful, but sometimes moderators have found with a small group, that a simple poll of the attendees on discussion topics can work. Although, the moderator should probably have a backup set of topics as well.
Another potential class of topics, which fits into both styles of BoF, is to hold a “state of the project” BoF. This can include discussions of future directions for the project, clearing out of project business (i.e., proposals for enhancement), advocacy efforts, and general discussion of the project.
The BoF “survival toolkit” for submissions:
Suggested participants or panelists
Suggested questions for panelists or topics for attendees
Moderator
Scheduling suggestions
Emails for all the suggested panelists, moderators and submitters
Scheduling¶
At SciPy 2014, BoFs were given multiple time slots during the main three day conference period. All rooms were scheduled for BoF’s during this time slot, which was 45 min to 1 hour. This was a very successful scheduling arrangement because everyone was given the opportunity to attend BoFs without sacrificing other content.
The BoFs related to mini-symposia at SciPy 2014 were scheduled mostly for time and rooms adjacent to the mini-symposia themselves.
BoFs scheduling locations were posted on the conference website for easy access. Most BoFs were arranged before the conference started following the call for BoFs.
Quick tips to look out for:
Try not to schedule too many BoFs of similar topics at the same time
Encourage mini-symposia to hold panel discussions during the mini-symposium in question
Try not to overbook panelists
Attempt to solicit BoFs for SciPy core projects
Sprintable topics and projects should happen after the main conference
Attempt to have the organizer send out an organizing email before hand if possible so that potential conflicts that are not obvious can also be avoided
Example Emails¶
Here are a few solicitation emails. The first is the solicitation of the Astro BoF at SciPy 2013:
Kyle Mandli and I are co-chairing the BoFs this year at SciPy.
Looking over the Astro mini-symposium schedule, it looks like there's
no scheduled time for a panel discussion. What would you think about
organizing a BoF during one of the scheduled BoF times, and perhaps
inviting some of the presenters from the astro mini-symposium, people
who submitted and weren't selected, or other members of the community
to be on the panel? If this sounds like a good idea to you, would you
be willing to moderate the panel?
Although this BoF was well-attended, there was some discussion during the BoF that it would also have been a good match for a panel during the mini-symposium, if there had been time.
Here is a soliciation email for a Future of Array Programming BoF:
We would like to invite you guys for a BoF/panel discussion on your vision
for the future of AOP at SciPy.
With multiple projects emerging/having emerged and lots of things on the
roadmap for NumPy, we thought you guys could bring your vision and
experience for 5 minutes on how you see the future there and then take
questions from the audience and a moderator for the rest of the hour.
Would you be interested in bringing your perspective?
One more:
Members of the Jupyter Community,
As one of the co-chairs in charge of organizing the birds-of-a-feather sessions at SciPy this year I wanted to reach out to your community to encourage you to submit a BoF proposal to open up a discussion on topics related to Jupyter development, future or just general questions. Please let us know if there is anything we can help with in terms of organization.
Posting BoF Information¶
Since BoFs are one of the more fluid aspects of the conference it is necessary to able to inform attendees about schedule changes and additional BoFs. Since the program cannot be changed once printed, it was confusing to many attendees to see specific BoFs in the program when they may have been moved around. In the future it may be wise get the BoF schedule out early enough so any corrections can be made before the schedule is printed.
Past BoFs¶
SciPy 2014¶
The text of the website solicitation:
SciPy 2014, the thirteenth annual Scientific Computing with Python
conference, will be held this July 6th-12th in Austin, Texas. SciPy is a
community dedicated to the advancement of scientific computing through open
source Python software for mathematics, science, and engineering. The
annual SciPy Conference allows participants from academic, commercial, and
governmental organizations to showcase their latest projects, learn from
skilled users and developers, and collaborate on code development.
SciPy has plenty of opportunities to get together and discuss primary,
tangential, or unrelated topics in an interactive, discussion setting.
In an effort to increase the opportunities for community building, SciPy
would like to emphasize the use of birds of a feather (BoFs) sessions.
These sessions usually include short presentations by a panel and a
moderator with the bulk of the time spent opening up the discussion to
everyone in attendance. We will organize a number of BoFs that are of
general interest such as state-of-the-project and BoFs based on the themes
of the conference and the mini-symposia topics.
Some example past BoFs include Reproducibility, Teaching Scientific
Computing with Python, The Future of Array Oriented Programming, PyNE
Updates, Python and Finance, NumFOCUS, Python in Astronomy, SciPy 2013,
Collaborating and Contributing in Open Science, and the Matplotlib
Enhancement Proposal Discussion.
We would like to solicit the community for ideas and organizers for other
BoF topics. Please include a small description of the BoF, possible
panelists, and whether you would be willing to moderate.
To suggest a Birds-of-a-Feather session, fill out a brief description by
clicking:
submit proposal
bofs
create new... "
These are the Bofs listed from the SciPy 2014 Website.
You Win or You SciPy
Programmers in Research: their place in Universities
Matplotlib Enhancement Proposal
Python 3 and the SciPy ecosystem
Python in the Atmospheric and Oceanic Sciences
Tools for Open and Reproducible Workflows
Volunteer SciPy2015!
Visualization
Python in Bioinformatics
NumFOCUS
IPython
SymPy
Teaching spatial analysis using python
Teaching the SciPy Stack
Geospatial Data and Analysis Stack
Emacs and Python
NumPy
Interactive visualization in the browser
SciPy 2013¶
The text of the website solicitation:
SciPy 2013 has plenty of opportunities to get together and discuss primary,
tangential, or unrelated topics in an interactive, discussion setting.
In an effort to increase the opportunities for community building, this year
at SciPy the organizers would like to emphasize the use of birds of a
feather (BoFs) sessions. Our current vision for these sessions include short
presentations by a panel and a moderator with the bulk of the time spent
opening up the discussion to everyone in attendance. We will organize a
number of BoFs that are of general interest such as state-of-the-project and
BoFs based on the themes of the conference and the mini-symposia topics.
We would like to solicit the community for ideas and organizers for other
BoF topics. Please include a small description of the BoF, possible
panelists, and whether you would be willing to moderate.
To suggest a Birds-of-a-Feather session click the Suggest a BoF button.
These are the BoFs listed from the SciPy 2013 Website. Most of these were held during the main part of the conference, but several were held during the sprints.
- Reproducibility
The Royal Society of London’s motto is nullius in verba – on the word of no one. Reproducibility is a practiced in science to spread understanding, prevent fraud, and ensure empirical results are verifiable. In this session, we discuss how to support the practice of reproducible science, promote tools that facilitate reproducible experiments, and what challenges are particular to Python.
- Teaching scientific computing with Python
A brainstorming / best practices session for people who have experience in teaching scientific computing with Python at undergraduate level, or who may take on this challenge in the future!
- The Future of Array Oriented Programming
With many projects, past and present, extending NumPy and many exciting features and improvements planned for upcoming NumPy versions, we plan to provide an overview of the current projects, and discuss how people see them interacting in the future. We will try to learn from past projects to inform the ones in the works right now. We will take questions from the audience.
- PyNE Updates
PyNE is the Nuclear Engineering toolkit. We are currently gearing up for some major feature upgrades and the v0.3 release. These include better MCNP support, ENDF file handling, the addition of PyTaps-backed meshes, transmutation support, and other goodies. Come help us decide what we should do next!
- Python and Finance
Python is increasingly used in finance due to it’s excellent support for math and science libraries and readable syntax.
- NumFOCUS
NumFOCUS is a non-profit foundation founded to promote the use of accessible and reproducible computing in science and technology. To accomplish this mission, it supports the following items:
- Educational Programs
The promotion of high-level languages, reproducible scientific research, and open-code development. An increase in collaborative research tools and documentation. In this session, we will discuss the mission and undertakings of the NumFOCUS foundation. It is a time to ask questions of our board members and suggest new or interesting activities for the foundation.
- Python in Astronomy
As a follow-on to the Mini-symposium, we will have a discussion about the current status and path forward for Python in astronomy. The goal will be to define priorities for focusing effort within the scientist and developer community.
- SciPy 2014
Last year, Lauren Johnson made the great suggestion that we should have a BoF for next year’s conference. Unfortunately, it wasn’t suggested until near the end of the conference! This would be a meeting to discuss plans for the 2014 conference. It would also be a great time to recruit new folks who are attending the conference that might be interested in helping next year.
- Collaborating and Contributing in Open Science
As evidenced by SciPy 2013, there are many great open science projects. The Center for Open Science and the infrastructure being developed (the Open Science Framework) seeks to connect these projects and support collaboration. We will discuss collaboration possibilities, how developers might get involved, and how best to encourage community contribution to these efforts.
- Matplotlib enhancement proposal discussion
A chance to discuss ongoing and new matplotlib enhancement proposals (MEPs). MEPs are posted on the matplotlib development wiki here: https://github.com/matplotlib/matplotlib/wiki Participants who wish to comment or help with existing MEPs or propose entirely new MEPs are welcome.
- PySide development planning and sprint kickoff
A meeting to plan future PySide development and help developers get set up for the sprint on Friday and Saturday. Topics will include fixing pyside bugs, improving shiboken, and Qt 5 support. PySide is a Python wrapper for the Qt graphic libraries that are used by many desktop applications. More information about PySide is at https://www.pyside.org If you are a Python developer who uses PySide in your applications and/or a C++ developer interested in PySide’s implementation please plan to attend.
- Women in Scientific Computing: Discussion and Mixer
Women make up a small (but growing!) number of people doing scientific computing. Many reasons have been proposed for why this may be, but many questions remain. Join this mixer and discussion of women in the scientific coding community to start a dialogue of ways to address the lack of women. Additionally, this will be an informal environment in which to build a network of colleagues.
- Data access and munging tools for oceanographic and hydrological applications
Research and data management communities focused on watery environments (oceans, rivers, lakes, climate, etc) rely on a wide range of data sources. In addition to the multitude of idiosyncratic data conventions and structures that are used, several data encoding and transport standards have emerged, but their acceptance varies widely across communities. These include netcdf/CF, OPeNDAP, THREDDS catalogs, and OGC stack (CSW, WFS, SOS, SensorML, WaterML 2.0, etc), the first generation CUAHSI HIS stack (WOF & WaterML 1.x), WQX, and others. Different groups have also developed distinct but overlapping libraries to address these data access needs. Join us to share the tools you have developed, learn about what others are doing, and brainstorm ways to simplify our work and bring more coherence to our efforts.
- IPython
Location is a place holder, will take place somewhere in the sprint rooms.