Davide,

We are in the process of developing an incubation model for lessons. This is 
still in draft form but the basic outline is:

1. Nearly any lesson can be contributed to github.com/swcarpentry-contrib (this 
is a newly created GitHub organization)
2. Lesson maintainers can petition for lessons to be considered as a core 
lesson and enter incubation, this petition must demonstrate a widespread 
community demand for the lesson.
3. During incubation (6mo-1yr) the lesson will have to be taught by a community 
other than the lesson author(s) home community.  Feedback and contributions 
from other instructors is an important part of ensuring the lesson has broad 
appeal and support.
4. At the end of incubation the lesson developer/champion must make the case 
for the lesson to be integrated into the core set of Software Carpentry lessons.
5. Periodically, lessons that aren't actively developed or taught will drop 
down to contrib.

In the context of lesson development I see that the brand "Software Carpentry" 
1) offers flagship workshops, drawn from its core lessons; 2) provides a 
community for experiments and conversations about the lessons that will have 
broad appeal; 3) empowers instructors and local communities to experiment 
off-brand with new ideas; and 4) seeks to reflect experimentation and new 
lessons into the core as appropriate. In order to make sure our workshops and 
brand continue to have impact, we should be opinionated about what we do and 
don't allow to be called "Software Carpentry". 

It is my experience that our community is always experimenting with new 
lessons, new ways to teach existing lessons. So our incubation process has no 
intent of blocking progress in lesson development. It is just a way to make 
sure we have a measures of demand and quality to lessons being taught under the 
Software Carpentry banner, in return, when a lesson is high-quality and 
in-demand, the community will support and maintain those lessons.

As a mental model for developing whole new workshops, I'd encourage you all to 
look at Titus Brown's recent blog post:
http://ivory.idyll.org/blog/2016-norway-repeatability.html Specifically his 
diagram showing "workflow engine", "data analytics narrative", "execution 
environment" and "versioning". These are the components of a repeatable 
workflow, and any complete workshop should at least allude to how the lessons 
enable the learner to think about how the interplay of the components can be 
applied toward their own research problems.

To specifically answer your question about teaching this new workshop Davide. I 
suggest you run it as "Inspired by Software Carpentry", and test the ideas, 
gain traction and build the case for the lesson(s) to enter incubation. 

Regards,
---
Jonah Duckles
Software Carpentry, Executive Director
http://software-carpentry.org

From: Davide Del Vento <[email protected]>
Reply: Davide Del Vento <[email protected]>
Date: April 4, 2016 at 9:49:20 PM
To: Software Carpentry Discussion <[email protected]>
Subject:  [Discuss] Python intermediate? First time teaching? Core curriculum?  

I have questions about the python intermediate lessons, and the first  
time teachings.  

At the moment there are two repos, namely  

https://github.com/swcarpentry/python-intermediate (empty!!)  

and  

https://github.com/swcarpentry/python-intermediate-mosquitoes (which  
says to see https://github.com/swcarpentry/lesson-template for  
instructions on formatting, building, and submitting lessons, but the  
only instructions I could find are  
https://github.com/swcarpentry/lesson-template/blob/gh-pages/CONTRIBUTING.md  
and don't say much)  

Now, I (~= NCAR) need(s) a python-intermediate-geospatial or something  
like that. I'll be happy to develop that, and I was wondering the best  
way to proceed. One way could be to fork the mosquitoes lesson, which  
is a pretty good start for my purpose. Is that ok? If so, does it  
matter if I do it as myself or as NCAR (which is a github org which I  
can create projects in)? If I proceed that way, how will the eventual  
transfer to swcarpentry org happen? Or should I do something  
different?  

Note also, that I may need to teach this class (few days long)  
sometimes next summer and that I haven't completed the checkout yet  
(but I taught similar python classes in the past as non--SWC). Is it  
realistic to be ready this way? IIRC as newbie instructor, I should be  
assisted by other non-newbies in my first teachings, but of course  
nobody will be already familiar with the material. So how do new  
lessons get "bootstrapped"? Alternatively, I can get another NCAR SWC  
instructor (still not checked out yet), who is familiar with the  
material. That would be two newbies, is it acceptable?  

Any other suggestions? I will be ok to teach the material as non-SWC  
for this time, as last resort. Actually this "last resort" may still  
be the best, since we just taught git to the audience for this python  
class (non-SWC since we weren't ready to do it that way), and they  
already are proficient enough in shell (which actually they are  
deprecating, in favor or using python, maybe with plumbum, for  
everything, not only the geospatial stuff), so they would not be  
interested in git or shell. So, are there exceptions to the "must  
cover the core of Software Carpentry's curriculum" rule?  

Thanks,  
Davide  
PS: boy that's way more than I had in mind for this message, I kept  
adding to the subject... Feel free to split the answers under 3  
separate conversations, if appropriate.  

_______________________________________________  
Discuss mailing list  
[email protected]  
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org
  
_______________________________________________
Discuss mailing list
[email protected]
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org

Reply via email to