The APS Controls group will host an EPICS Codeathon from the 14th to the 18th of April 2008, to work on some of the items on the EPICS To Do list. We will provide a comfortable environment with wireless networking, refreshments and space for up to 20 people to work on EPICS core development projects. Attendees will be responsible for their own travel and expenses, and must bring a laptop or notebook computer to work on with all necessary development software. There will not be any registration fees to attend.
By taking developers out of their home environment they can be freed up from interruptions and local problems and allowed to concentrate on specific EPICS development tasks. A lab that is looking to both improve their EPICS expertise and to give something back to the collaboration might find this an appropriate way to do both at the same time.
Coding Marathons, also called Hackathons or Code Sprints, are popular in a number of open source projects as a way of making progress on certain development efforts, clearing up bug reports and introducing new developers to the project internals. They usually involve design discussions between developers, coding (individually or using techniques like Pair Programming), code testing and debugging, writing documentation, and coaching for developers who are new to the code-base.
Since this is the first EPICS Codeathon we can't point to previous experiences, but knowing the EPICS sites and users who've expressed an interest we're expecting this to be a worthwhile event, which we hope will be the first of many.
This workshop is intended for experienced EPICS users who wish to contribute towards the future of EPICS Core. The core developers have already agreed to come, and we have had expressions of interest from several other people; see the participant list below for those who we're currently expecting.
Our numbers are limited by the space available to about 20 people at any one time, but it's not necessary to attend the whole week (preference will be given to those who will however). You don't even have to be a C programmer as we have some tasks that involve documentation, although most tasks do require a good understanding of EPICS and C coding. If you are interested email Andrew Johnson as soon as possible to request a place.
US Department Of Energy Laboratories
If you don't work for a DOE Lab, ignore this section.
DOE Order 110.3A, Conference Management, dated January 25, 2007 requires DOE approval for attendance or hosting of conferences, but lists several exclusions to the approval requirement.
Our local Conference Office has agreed that the Codeathon falls under an exclusion as a(i) DOE technical/business program, project, or peer reviewand(a) DOE employees traveling to sites where work for DOE is being performed to discuss the status of that work.As a result, if you work for a DOE lab you should be able to quote this exclusion on your travel request and avoid having to get Conference Attendance approval to come.
At Argonne National Laboratory's Advanced Photon Source just outside of Chicago, Illinois. We have use of the 5th floor conference room which also has a seating area with views over the Argonne site, the surrounding Waterfall Glenn forest preserve, and across the Des Plains River Valley.
We recommend that you stay
at the Argonne Guesthouse which is only a
short walk from the APS building. When making a reservation using their
Online booking form your
Argonne Contact is Andrew Johnson, phone +1 (630) 252-9410; put
in the box for Division/Department.
Wireless networking will be available, with high-speed access to the internet so you should be able to connect back to your home institution for email and any other services (the ability to test software on your own hardware back home may be useful if you're allowed to do that). We won't have any wired network spigots available though, so do make sure your laptop wireless works.
We have a list of development projects of varying levels of complexity that we would like to see implemented. These mostly involve Base, but do include other shared projects such as Asyn. Participants can also bring or suggest additional projects (feel free to discuss ideas on core-talk before the event), and will pick the project(s) they work on after discussions with the other participants to avoid duplication of effort.
The core developers who attend will be working on their own projects, but will also be available to provide advice and assitance to others as needed; core developers will have the final say on the changes and additions being proposed for their areas of expertise. We hope to have a few talks about topics that developers should find interesting (offers welcomed), and there may also be some purely social activities to lighten the atmosphere a little.
What can/should you do in advance in order to make life at the event itself easier for you and the other participants? Here are some suggestions, if you have other ideas that you think would help let me know and I'll add them here.
Look through the list of suggested work projects and try to identify which ones you might be interested in working on, and then examine the existing code in base to try and get a feel for what needs to be done to implement them. If you have additional ideas of your own, it is worth posting a message to core-talk describing them in advance of the event.
This type of preparation work isn't the same as starting early. It's more a matter of getting your brain ready to sit down and tackle some problems. Rather than spending half a day deciding what to do, you'll already have a bit of an idea about where you could do some work and what the bigger picture looks like in that area.
The following people have asked and/or are expected to attend:
See this report for a list of what was worked on.