Group Organization

I think it's important that we clarify what google groups we need and what teams we should have. We also need to discuss who should lead each team, how the team should function, etc. In particular I'm thinking of the Development, Debug, Testing, Documentation, and any other teams. We'll talk more about this in tomorrow's group meeting, but this blog post is intended to generate a discussion so please comment!

Comments

1. Jonathan -- 13 years ago

My two cents on group organization

Grad Students

Grad students would progress through the various teams listed below as they mature in their knowledge of astrophysics and the internal workings of the code.

  • Documentation - involves students in learning about certain aspects of the code (as well as the wiki). Also gets incoming students in the habit of documenting stuff.
  • Testing - involves using the code and learning about various physical problems and gives students a certain healthy skepticism about computational results.
  • Development - Gives students the chance to get their hands dirty in actual coding. At this point they should have the skills necessary to add additional physics with minimal oversight (although they will also need to learn some debugging skills as they implement their new physics etc…)
  • Debug - Gives senior grad students (who are familiar with the code) the opportunity to mentor junior grad students who are in the process of developing code.

PostDocs

PostDocs are sort of like incoming grad students w/ respect to their knowledge of the code - so having them be on the debug or development teams is probably not a good idea… They could do documentation and/or testing - or they could primarily be trained users who coordinate with other folks at other institutions and grow the user base.

Senior Programmer

I imagine the Senior programmer would act as a sort of Team manager for the various teams. This would involve handling/assigining incoming help requests as well as overseeing development projects/testing/documentation in concert with you… They would also be the sole member of the parallelization team tasked with optimizing the code to run on larger and larger systems…