NeXus Code Camp - January 2020

The 2020 NeXus Code Camp is scheduled for 3 days in January 2020: Jan 21 (Tuesday) - 23 (Thursday). The code camp will take place at the Advanced Photon Source, Argonne National Laboratory, IL, USA (near Chicago).

(We used an online poll to help decide the exact dates.)

Purpose

NeXus periodically convenes a Code Camp to develop NeXus software components through intense effort by small groups working on specific projects and tasks. It is expected that those attending the 2020 NeXus Code Camp will already have a strong foundation and understanding in aspects of the NeXus software and come ready with knowledge, tools, and ideas to make significant progress during the event.

Specific projects and tasks are described on the GitHub issue tracker. Issues for consideration at 2020 NeXus Code Camp will be added to the Code Camp’s Topics page (edit here). These issues will be prioritized on the first day for handling at the Code Camp.

(For more info on code camps, try searching Google for “code camp” or “codeathon”. Events such as the EPICS Codeathon would be reasonable templates for this NeXus code camp.)

Attendees

The list of Attendees is here.

Remote Attendees

We will open certain time slots for remote attendees to participate using Bluejeans video conference software. Connection details will be provided here. Please make sure your computer is configured to run Bluejeans before the session.

Teleconference will be available during the organizational periods in the schedule listed below:

Registration

You must notify the host of your visit in advance to arrange site access. Also, see the section below titled ANL Visitor Registration.

Costs

  • Conference fee: no fee

    • food at morning and afternoon breaks will be provided

    • perhaps (no guarantee) a small meeting souvenir

  • regular meals (breakfast, lunch, dinner) will be traveler’s expense

ANL Visitor Registration

The Argonne visitor registration form is for individuals who are visiting employees.

Argonne visitor registration form: https://apps.anl.gov/registration/visitors/

Indicate that you are visiting Pete Jemian.

Host

  • Pete Jemian

    • X-ray Science Division

    • Advanced Photon Source, Argonne National Laboratory

    • 9700 South Cass Avenue

    • Argonne, IL 60439 USA

    • email: jemian@anl.gov

    • office phone: +1-630-252-3189 (forwards to mobile)

    • Google voice: +1-847-859-9775 (forwards to mobile)

Meeting Place

Building 437 (LOM 437 on the sign), Conference Room C010 (Advanced Photon Source)

map: google

Directions

  • airport:

    • Chicago O’Hare (ORD): international

    • Chicago Midway (MDW): domestic

    • Milwaukee, WI Mitchell Field (MKE): distant alternative

  • taxi:

    • Call for a taxi pickup only after you have all your bags

    • Must be a taxi that goes to Chicago suburbs

    • suburban taxi will pickup in second lane of arrivals at Chicago O’Hare airport

    • http://www.americantaxi.com, 1-800-244-1177 (automated system)

    • … others …

  • airport bus: http://www.airportexpress.com/shuttles/ohare.html

  • commuter train:

    • inconvenient

Practical Matters

Equipment

item

quantity

who provides?

projector & screen

host

LCD displays, keyboards, & mice

host

120 VAC, 60 Hz, US-style 3-prong extension cords

sufficient

host

foreign electrical power adapter

as needed

traveler

Wi-Fi connections

sufficient

hotel

Meals

  • No meals are provided by the code camp.

  • Light refreshments will be available for the breaks.

  • Attendees of the Code Camp will decide ad hoc on where to have their meals.

Agenda

Business Matters

Since this is not to be a meeting of the full NIAC, no business matters can be resolved.

Goal

Resolve issues and milestone to prepare next release of NXDL.

Suggestions:

  • We should take this opportunity to provide the standard Introduction to NeXus as a public presentation.

  • We should allow time for an open, working lunch on one of the days to interact with the community able to attend.

  • If someone wishes to make any other public presentation, either during, before, or after the Code Camp, please contact the host.

Schedule

  • arrive evening before the Code Camp

  • conference check-in Day 1 morning

  • meet Day 1

  • meet Day 2

  • meet Day 3

  • checkout next day morning

Here is the daily schedule (teleconference for remote attendees will be available during the organizational periods, see above for connection details). All times listed are Central Standard Time (CST):

time

description

comments

9:00 - 9:30 AM

organizational

daily planning (plenary)

9:30 - 10:15 AM

meeting

work on projects and tasks

10:15 - 10:45 AM

morning break

(included)

10:45 AM - 12:00 PM

meeting

work on projects and tasks

12:00 - 1:15 PM

lunch

offsite, traveler’s expense

1:15 - 3:15 PM

meeting

work on projects and tasks

3:15 - 3:30 PM

afternoon break

(included)

3:30 - 5:00 PM

meeting

work on projects and tasks

5:00 - 6:00 PM

organizational

daily summary (plenary)

Notes:

  1. late-afternoon wrap-up (plenary) each day

  2. morning and afternoon breaks will be included in amenities charge

  3. breakfast, lunch, dinner will be in a local restaurant at traveler’s expense

Day 1

  • Check-in, Welcome, and introductions

  • Decide which topics to work on and resolve during this code camp.

    • this took longer than expected (about 90 minutes)

    • we used a shared Google Docs spreadsheet to list GitHub issues, assign priorities, note workers, and report status

  • AOB?

  • work on issues

Day 2

  • work on issues

Day 3

  • work on issues

  • make release (or release candidate) of NXDL per release procedure

  • AOB?

Minutes for the meeting

We don’t typically record minutes for the Code Camps.
Rather, the work progress is recorded in the GitHub issue trackers for the various repositories involved.

We’ll note here certain progress items or any questions or recommendations for the NIAC.

Code Camp Tasks

We list here the various tasks we handled during the code camp, with a disposition for each, as copied from the Google Sheet we shared.

repository

task

disposition

definitions

NXDL data type vs NAPI type vs NeXus data type: clarify and simplify!

Done

definitions

more prominently document existing scheme for uncertainties

Done

definitions

Recording time-stamped data

Done

definitions

Create structure to incorporate PDB definitions into NeXus

Done

definitions

use consistent terms when names are flexible

Done

definitions

NIAC has decided about how to report errors/uncertainties

Done

definitions

[DOC] C example uses old style NXdata

Done

definitions

Added documentation for variants to datarules.rst

Done

definitions

How to specify per-shot wavelength

Done

definitions

close branch pixel_as_length_issue_511

Done

definitions

integrate NIAC decision on errors & uncertainties

Done

definitions

NXDL release 2020.1

expected 2020-01-31

exampledata

Can we remove the file trees from the readme files as they are out of date and need to be manually updated

Done

exampledata

separate out non-compliant data files

Done

exampledata

Example thaumatin multisample NXmx/NXreflections file.

Done

definitions

Clarify note on IUCr coordinate system.

Done

definitions

add “uncertainties” attribute to fieldType in nxdl.xsd

closed as wontfix

definitions

“Are there examples of NeXus data?” - asked at Nobugs 2018

Done

definitions

“Are there examples of code that reads NeXus data?” - asked at Nobugs 2018

Done

definitions

docs: add text when a group name is suggested

Done

definitions

can NXscan be extended to include 1-D data?

moved to next milestone

definitions

update Sphinx config

Done

definitions

consider publishing docs in GitHub pages

Done

definitions

examples of axes/AXISNAME_indices attributes

moved to next milestone

definitions

datarules.rst contains information on 2014 discussions

moved to next milestone

definitions

clarify how to name fields and groups

NIAC to review

definitions

clarify naming convention

NIAC to review

exampledata

some example files for NXptycho

after code camp

definitions

Is use of UPPER case names described in the manual?

Done

definitions

Need new links to h5toText program

Done

exampledata

critique.py was not working

Done

definitions

Slow/fast axis inconsistent in NXdetector_module

Done

definitions

adjust links for h5toText, now punx tree

Done

definitions

update copyright date to 2020

Done

definitions

2020 copyright

Done

definitions

some unit tests fail since flexible names are UPPER case

Done

definitions

certain unit tests had failed

Done

definitions

NXmx has fields that may not have to be required

Done

definitions

update Sphinx config to 2.3.1

Done

definitions

DATASET_errors naming convention should appear in manual

Done

definitions

PDF manual does not build

Done

definitions

Remove references to NAPI from schema and documentation

Done

definitions

describe field suffixes reserved by NeXus

Done

definitions

Improved documentation about time stamped data

Done

definitions

cleanup in nxdl.xsd

Done

definitions

cleanup in nxdl.xsd (PR to #725)

Done

definitions

Remove some references to NAPI for #699

Done

definitions

Makefile can’t build the PDF manual

Done

definitions

editing needed in datarules.rst new content

Done

definitions

Clarify the nature of NeXus application definitions

Done

definitions

Clarify the nature of NeXus application definitions

Done

definitions

GitHub API authentication has changed : affects the release process

Done

definitions

Revise release note scripting

Done

definitions

create_release_notes.py should use SHA credentials

Done

definitions

added type=”NX_FLOAT”

Done

definitions

NXstxm nxdl does not specify a type for the energy field for [/NXentry/NXinstrument/NXmonochromator/energy]

Done

definitions

cite API contributions

Done

definitions

Update example for new axes syntax and for HDF 1.8.0 and above

Done

definitions

Reduce number of mandatory fields in NXcxi_ptycho

Done

definitions

adjust doc string in NXcxi_ptycho

Done

definitions

writer_2_1 example broken

Done

definitions

Bad indentation in NXcxi_ptycho

Done

definitions

add h5py example reader using attributes to find default plottable data

Done

definitions

From code camp, clarify NXmx/NXdetector depends_on field.

Done

definitions

From code camp, Make NXmx/NXdata optional.

Done

definitions

From code camp, add note to NXmx that file_name and file_time are recommended

Done

definitions

in release notes, TOC link to each subsection

Done

definitions

in release notes TOC, add link to each subsection

Done


page source: GitHub link