I have taught both lessons a couple times each. I think they are both useful, depending on the learners, but there are some gotchas.
1. The older one (Programming with Python) is great for learners who work with matrices with numerical data (physics, statistics, ...) because of its emphasis on numpy. * If the learners are especially novice (low typing speeds, discomfort with folder structures, very first time doing any programming), I historically have had (and seen) a lot of trouble with the first lesson (as Lex mentioned). * There used to be a "00" section that I still sometimes use <http://katyhuff.github.io/2016-07-11-scipy/python/00-python-intro.html> to make sure people understand "libraries", "functions", "variables", before diving into matplotlib code. * Other times I skip the second half of 01 to focus on fundamentals, just using 1-2 plots to motivate without focusing on all the possibilities. * Going from 1 plot to many plots can be tricky if you don't know what a for loop is (or you don't know what folder you're in), so I often skip 04 entirely. * I do not use every challenge from this lesson. There is much more content than can be taught in one 3-4 hour period. <https://github.com/swcarpentry/python-novice-inflammation/issues/452> 2. I think the second one (Plotting and Programming) is nearly mature now. Wilson Lozano and I taught it this month. * Note that it does not cover numpy but instead uses pandas, which is great for people with mixed-type data (linguists, psychology, some biologists, those who work with labelled datasets). * I think it can be a little slow to start (a lot of focus on the Jupyter notebook and tips and tricks), especially if your audience has seen programming before. * Note that it is a full day of material -- Wilson and I taught it over two afternoons and I think it was effective. We skipped a couple sections at the end to include more practice on testing <http://katyhuff.github.io/python-testing/>. If you have other questions, feel free to ping me off-list. Kunal On Tue, May 21, 2019 at 10:26 AM Lex Nederbragt <[email protected]> wrote: > Hi, > > Greg Wilson is the one to answer, but here is my recollection of the > history. (Apologies if I got that all wrong, Greg…) > > "Programming with Python” > <http://swcarpentry.github.io/python-novice-inflammation> was built with > a philosophy to get the learner to achieve something useful, in this case > some visualisation, as early as possible in the lesson/workshop. > Inspiration came from the Media Computation approach developed by Mark > Guzdial (if I am not mistaken), see Porter et al: “Success in > Introductory Programming: What Works?” > <https://carpentries.github.io/instructor-training/files/papers/porter-what-works-2013.pdf> > However, > not many people know what that inflammation data is about, and many felt > the approach did not work optimally - there is a lot of ‘magic' happening > in the beginning - Numpy and Numpy arrays, 2D slicing and plotting all come > in the first episode. > > Greg then set out to develop a lesson that is more along the lines of ’teach > concepts, and apply them, in an increasing order of complexity and > usefulness’. This became "Plotting and Programming with Python” > <http://swcarpentry.github.io/python-novice-gapminder/>. See the design > rationale > here: http://swcarpentry.github.io/python-novice-gapminder/design/. This > lesson still needs some work to become fully mature (if I am not mistaken). > > Hope that helps! > > Lex > > > > On 21 May 2019, at 10:43, Valters, Declan A. <[email protected]> wrote: > > Hi all, > > Does anyone know the origin/philosophy behind the two separate Python core > lessons in the software carpentry workshops: i.e. "Programming with Python" > vs "Plotting and Programming with Python". Understand the latter is aimed > at Jupyter users specifically, and introduces Pandas early on rather the > Numpy, but it also has slightly different content in other ways too. > > Or if anyone has experience in teaching both of them and can offer their > thoughts/feedback? > > (Did spend some time searching the github issues and swc site to see if > there was any fundamental reason/motivation for having the two separate > courses.) > > Cheers, > Declan > > > This email and any attachments are intended solely for the use of the > named recipients. If you are not the intended recipient you must not use, > disclose, copy or distribute this email or any of its attachments and > should notify the sender immediately and delete this email from your system. > > UK Research and Innovation has taken every reasonable precaution to > minimise risk of this email or any attachments containing viruses or > malware but the recipient should carry out its own virus and malware checks > before opening the attachments. UK Research and Innovation does not accept > any liability for any losses or damages which the recipient may sustain due > to presence of any viruses. > Opinions, conclusions or other information in this message and attachments > that are not related directly to UK Research and Innovation business are > solely those of the author and do not represent the views of UK Research > and Innovation. > > > *The Carpentries <https://carpentries.topicbox.com/latest>* / discuss / > see discussions <https://carpentries.topicbox.com/groups/discuss> + > participants <https://carpentries.topicbox.com/groups/discuss/members> + > delivery > options <https://carpentries.topicbox.com/groups/discuss/subscription> > Permalink > <https://carpentries.topicbox.com/groups/discuss/Tce92361a8c9f8279-M0e23b37d71fc08ce03f28e73> > ------------------------------------------ The Carpentries: discuss Permalink: https://carpentries.topicbox.com/groups/discuss/Tce92361a8c9f8279-Ma12a10b38a494556639f71a8 Delivery options: https://carpentries.topicbox.com/groups/discuss/subscription
