Re: [Discuss] Git lesson alternative

2017-07-08 Thread Michael J Jackson

And apologies for sending that twice...a slow network and a buffered keypress.

Mike

Quoting Michael J Jackson <micha...@epcc.ed.ac.uk> on Sat, 08 Jul 2017  
08:12:19 +0100:



I try and get these points over to students:

* Git and Github are not synonyms.
* Git is a version control tool, one of many.
* Github is a project/repository hosting service, one of many.
* There are situations where you'd definitely want to use Git but  
will not be able to use GitHub e.g. hosting sensitive/personal  
code/docs/data that must be held on servers in known locations and  
with known security qualities and not just "somewhere" in the world.


Cheers,
Mike

Quoting "Waldman, Simon" <sm...@hw.ac.uk> on Sat, 8 Jul 2017 06:41:06 +:

Surely these are two different things, doing two different jobs?  
Git (either command line or through a GUI) on the local machine,  
and Github for the remote repo?


Or is there a local GUI that also goes by the name of Github? If  
so, I recommend *great* care in describing this; if I’m confused by  
reading it on the discuss list, I can only imagine that learners  
will be too!


From: Discuss [mailto:discuss-boun...@lists.software-carpentry.org]  
On Behalf Of Anelda van der Walt

Sent: 08 July 2017 06:33
To: Bond, Steve (NIH/NHGRI) [F]
Cc: Software Carpentry Discussion; John Poole; Bryan Johnston
Subject: Re: [Discuss] Git lesson alternative

Hi Steve,

Thanks very much for sharing!

I've been wondering how we can simultaneously give a broader  
exposure to GitHub GUI as I (since I'm not a software developer but  
often collaborate with others on GitHub) mostly use GitHub and  
haven't had to use git command line probably for a year now because  
I could do everything I needed in the GUI. Not that I am promoting  
not teaching the command line way of using git, but for people  
who've never ever encountered version control it might be more  
accessible to first build a mental model by learning GitHub and  
then going to the next step of learning the command line tool.


Kind regards,

Anelda

On Fri, Jul 7, 2017 at 6:49 PM, Bond, Steve (NIH/NHGRI) [F]  
<steve.b...@nih.gov<mailto:steve.b...@nih.gov>> wrote:

Hi Anelda,
We have stripped out the entire Dracula example from our workshop  
at the NIH, switching to a conversions script example (dollars to  
cents, feet to meters, etc). We have also chosen to focus heavily  
on the GitHub UI, instead of some of the terminal commands that  
GitHub otherwise hides.

https://github.com/biologyguy/git-novice
So it doesn’t tie in with gap minder, but we do have our attendees  
writing little programs.
There are still some significant kinks though, particularly when we  
get to the collaboration and conflict resolution sections. The last  
time we ran the workshop a significant gap developed between the  
faster and slower paced learners that was difficult to accommodate  
as instructors.

-Steve


From: Anelda van der Walt  
<anelda.vdw...@gmail.com<mailto:anelda.vdw...@gmail.com>>

Date: Friday, July 7, 2017 at 12:07 PM
To: Software Carpentry Discussion  
<discuss@lists.software-carpentry.org<mailto:discuss@lists.software-carpentry.org>>
Cc: John Poole <jpo...@csir.co.za<mailto:jpo...@csir.co.za>>, Bryan  
Johnston <bjohns...@csir.co.za<mailto:bjohns...@csir.co.za>>

Subject: [Discuss] Git lesson alternative

Hi all,

We'll be running a Software Carpentry workshop later this month and  
was discussing the git-novice lesson again today... We would really  
like to show people how real code can be put under version control  
in git/GitHub as opposed to showing the Dracula story. I know this  
conversation has come up several times, and some instructors have  
started to teach git on the morning of day 2 so that in the  
afternoon, when they continue with the Python lesson, they can show  
how it can be used with git. Does anyone have an edited version of  
the git lesson that allows for integration with the Python  
gapminder lesson perhaps?


Thanks!

Anelda



Founded in 1821, Heriot-Watt is a leader in ideas and solutions.  
With campuses and students across the entire globe we span the  
world, delivering innovation and educational excellence in  
business, engineering, design and the physical, social and life  
sciences.


This email is generated from the Heriot-Watt University Group,  
which includes:


 1.  Heriot-Watt University, a Scottish charity registered under  
number SC000278
 2.  Edinburgh Business School a Charity Registered in Scotland,  
SC026900. Edinburgh Business School is a company limited by  
guarantee, registered in Scotland with registered number SC173556  
and registered office at Heriot-Watt University Finance Office,  
Riccarton, Currie, Midlothian, EH14 4AS
 3.  Heriot- Watt Services Limited (Oriam), Scotland's national  
performance centre for sport. Heriot-Watt Services Lim

Re: [Discuss] Git lesson alternative

2017-07-08 Thread Michael J Jackson

I try and get these points over to students:

* Git and Github are not synonyms.
* Git is a version control tool, one of many.
* Github is a project/repository hosting service, one of many.
* There are situations where you'd definitely want to use Git but will  
not be able to use GitHub e.g. hosting sensitive/personal  
code/docs/data that must be held on servers in known locations and  
with known security qualities and not just "somewhere" in the world.


Cheers,
Mike

Quoting "Waldman, Simon"  on Sat, 8 Jul 2017 06:41:06 +:

Surely these are two different things, doing two different jobs? Git  
(either command line or through a GUI) on the local machine, and  
Github for the remote repo?


Or is there a local GUI that also goes by the name of Github? If so,  
I recommend *great* care in describing this; if I’m confused by  
reading it on the discuss list, I can only imagine that learners  
will be too!


From: Discuss [mailto:discuss-boun...@lists.software-carpentry.org]  
On Behalf Of Anelda van der Walt

Sent: 08 July 2017 06:33
To: Bond, Steve (NIH/NHGRI) [F]
Cc: Software Carpentry Discussion; John Poole; Bryan Johnston
Subject: Re: [Discuss] Git lesson alternative

Hi Steve,

Thanks very much for sharing!

I've been wondering how we can simultaneously give a broader  
exposure to GitHub GUI as I (since I'm not a software developer but  
often collaborate with others on GitHub) mostly use GitHub and  
haven't had to use git command line probably for a year now because  
I could do everything I needed in the GUI. Not that I am promoting  
not teaching the command line way of using git, but for people  
who've never ever encountered version control it might be more  
accessible to first build a mental model by learning GitHub and then  
going to the next step of learning the command line tool.


Kind regards,

Anelda

On Fri, Jul 7, 2017 at 6:49 PM, Bond, Steve (NIH/NHGRI) [F]  
> wrote:

Hi Anelda,
We have stripped out the entire Dracula example from our workshop at  
the NIH, switching to a conversions script example (dollars to  
cents, feet to meters, etc). We have also chosen to focus heavily on  
the GitHub UI, instead of some of the terminal commands that GitHub  
otherwise hides.

https://github.com/biologyguy/git-novice
So it doesn’t tie in with gap minder, but we do have our attendees  
writing little programs.
There are still some significant kinks though, particularly when we  
get to the collaboration and conflict resolution sections. The last  
time we ran the workshop a significant gap developed between the  
faster and slower paced learners that was difficult to accommodate  
as instructors.

-Steve


From: Anelda van der Walt  
>

Date: Friday, July 7, 2017 at 12:07 PM
To: Software Carpentry Discussion  
>
Cc: John Poole >, Bryan  
Johnston >

Subject: [Discuss] Git lesson alternative

Hi all,

We'll be running a Software Carpentry workshop later this month and  
was discussing the git-novice lesson again today... We would really  
like to show people how real code can be put under version control  
in git/GitHub as opposed to showing the Dracula story. I know this  
conversation has come up several times, and some instructors have  
started to teach git on the morning of day 2 so that in the  
afternoon, when they continue with the Python lesson, they can show  
how it can be used with git. Does anyone have an edited version of  
the git lesson that allows for integration with the Python gapminder  
lesson perhaps?


Thanks!

Anelda



Founded in 1821, Heriot-Watt is a leader in ideas and solutions.  
With campuses and students across the entire globe we span the  
world, delivering innovation and educational excellence in business,  
engineering, design and the physical, social and life sciences.


This email is generated from the Heriot-Watt University Group, which  
includes:


  1.  Heriot-Watt University, a Scottish charity registered under  
number SC000278
  2.  Edinburgh Business School a Charity Registered in Scotland,  
SC026900. Edinburgh Business School is a company limited by  
guarantee, registered in Scotland with registered number SC173556  
and registered office at Heriot-Watt University Finance Office,  
Riccarton, Currie, Midlothian, EH14 4AS
  3.  Heriot- Watt Services Limited (Oriam), Scotland's national  
performance centre for sport. Heriot-Watt Services Limited is a  
private limited company registered is Scotland with registered  
number SC271030 and registered office at Research & Enterprise  
Services Heriot-Watt University, Riccarton, Edinburgh, EH14 4AS.


The contents (including any attachments) are confidential. If you  
are 

Re: [Discuss] nano clean the window scrool in Windows (was Re: nano not found after installing gitbash (Raniere Silva))

2017-03-30 Thread Michael J Jackson

Hi,

The original motivation for the choice of Atom was:

today at the workshop, one of the our Windows learners asked me why  
after quit nano the previous command weren't available when scroll  
the window up. The learner was very annoyed to not be able to see  
the history.


This is indeed the case with nano. The quick fix is to use two shell  
windows, one with the editor and one with the prompt (a common mode of  
working with multiple shell windows anyway). Learners and instructions  
will need to switch windows, but this was listed as an issue with Atom  
as well.


I'd stick with nano for the reasons suggested below, until some  
research has been done to show that Atom will not get in the way of  
the attendees learning experiences. Otherwise there's a risk that SWC  
goes chasing after the latest shiny tools before their value has been  
proven.


cheers,
mike

ting Henry Neeman  on Thu, 30 Mar 2017 10:58:12 -0500 (CDT):



Without being able to speak to most of the
issues being discussed in this thread, I
second what Mark says in his first paragraph.

I've been teaching a Programming for Non-majors
course at my (and Mark's) institution for
17 years, and we've always used nano (or pico,
nano's predecessor).

The reason is, just as Mark says, it's very
quick to learn -- usually they can learn it
in 5 to 10 minutes, well enough to get their
work done.

---

Henry Neeman (hnee...@ou.edu)
Assistant Vice President, Information Technology - Research Strategy Advisor
Director, OU Supercomputing Center for Education & Research (OSCER)
Associate Professor, Gallogly College of Engineering
Adjunct Associate Professor, School of Computer Science
The University of Oklahoma

One Partners Place Suite 2600, 350 David L. Boren Blvd., Norman OK 73019
405-325-5386 (office), 405-325-7181 (fax), 405-245-3823 (cell),
4052453...@txt.att.net (to e-mail me a text message)
http://www.oscer.ou.edu/

--

On Thu, 30 Mar 2017, Mark Laufersweiler wrote:


I am against the move to atom for several reasonsI am not a big lover of
nano but over the course of teaching computing skills to meteorology
students for 20 years and working with the Carpentries for 3+ years nano
works for a first editor for several reasons.
The first reason goes to the core of what we learned as instructors,
cognitive overload. On top of all the new information a learner is receiving
regarding shell, nano has the feature of all the important commands being
listed at the bottom of the editor. Nothing needs to be learned about the
editor. Fire it up, edit the file and when the question comes how to quit,
how to save, a learner just looks at the list at the bottom. The one item to
learn is that ^ means the Control key and then the letter following the ^
are hit in sequence, holding down the Control key. It is simple and bare
bones. Nothing more complex to learn than that.  

This leads to the one quirk of Atom. Where is the open file option in any of
the menus? There is no directory tree or option window to have a person move
to a file outside of the directory that atom was evoked. You now need to
switch teaching about the shell to now teaching about how Atom revolves
around projects and that a project is a directory and it you want to open a
file not seen in the file listing window, you open a new project folder. The
file listing tree looks nothing like a OSX Finder or MS FileExplorer window.
The concept adds a layer of abstraction that is not about the shell, but
about project/file system management that is a distraction not a help. It is
not Notepad or TextEdit which most learners will have in used their prior
experiences with GUI editors that are not Office. 

Is nano perfect. Oh no. It in actuality terrible for code or long document
editing. But keep in mind that we as instructors may have some expert bias
creeping in. Think back to when you first started (ok, I am showing my age)
when the choices were vi (not vim), emacs and this little editor that
installed with pine called nano. We talk about in the Carpentries that our
learners come to the workshops to learn that there are better ways to work.
Editor choices work the same way. Starting out nano is fine, but as one
learns more, they realize that there may be a better way. They can then work
that out for themselves. I point this out to the learners in a work shop
that after the workshop, when revisiting the lessons, they may want to work
with a text editor that more fits their workflows and personal preferences.
But during the course of learning shell, git and a programing language, I do
not want to spend any more time than I have to other than to say “All the
editing commands that you will need to use are at the bottom of your screen
and the hat or carrot symbol means that you type and hold the control key
and then the letter, follow and answer the questions and you should be back
at the prompt in your shell”.  Most of the issues raised in this discussion
are valid but not 

Re: [Discuss] Installation instructions for GNU make?

2016-10-11 Thread Michael J Jackson

Hi Lex,

Quoting Lex Nederbragt  on Tue, 11 Oct 2016  
09:38:04 +0200:


We will be teaching the SWC ‘make’ lesson for the first time in a  
couple of weeks. Do we need to provide the learners with  
instructions for installing make, or is it a default part of all  
platforms? If not, are there any more-or-less curated installation  
instructions available somewhere?


Thanks in advance,

Lex Nederbragt


You'll need to provide installation instructions. Putting them into  
the workshop template [1] was recently dropped in favour of putting  
them into their lesson template [2], which hasn't yet happened. I use  
my own, copying and pasting from [3] (which renders as [4]). Though,  
as the SWC installer [5] installs GNU Make onto GitBash I'd change the  
Windows instructions to be [6].


cheers,
mike

[1] https://github.com/swcarpentry/workshop-template/issues/228
[2] https://github.com/swcarpentry/make-novice
[3]  
https://github.com/hpcarcher/2014-12-03-edinburgh/blob/gh-pages/_includes/setup.html

[4] http://hpcarcher.github.io/2014-12-03-edinburgh/
[5] https://github.com/swcarpentry/windows-installer
[6]


The Software Carpentry Windows installer installs Make.


To test, open a Git Bash window, type make, and press Enter.


You should see the following message
make: *** No targets specified and no makefile found. Stop.
This means that Make was successfully installed.
Otherwise, you'll see this error message:
bash: make: command not found







--
Lex Nederbragt
Centre for Ecological and Evolutionary Synthesis (CEES)
Dept. of Biosciences, University of Oslo
P.O. Box 1066 Blindern 0316 Oslo, Norway
Ph. +47 22844132 +47 48028722 Fax. +47 22854001
Email lex.nederbr...@ibv.uio.no
http://flxlex.flavors.me/







Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.


___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/listinfo/discuss

[Discuss] New make-novice maintainer

2016-07-12 Thread Michael J Jackson

Hi folks,

In response to my request for a new maintainer for the Make novice  
[1][2] lesson, Gerard Capes has been selected to take over maintaining  
the lesson. A big thank you to Gerard, and to all those who applied.


best wishes,
mike

[1] http://swcarpentry.github.io/make-novice
[2] https://github.com/swcarpentry/make-novice


Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.


___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/listinfo/discuss

[Discuss] Reminder: make-novice maintainer wanted!

2016-06-13 Thread Michael J Jackson

Hi folks,

I'm no longer able to commit time to maintaining the Make novice  
[1][2] lesson, so I am looking for someone to replace me. The main  
duties of lesson maintenance include reviewing and merging new pull  
requests, tracking issues, keeping the lesson up to date with the  
standard lesson template, and helping to guide the direction of the  
lesson - both in terms of content and formatting.


Additionally, maintainers are part of the lesson subcommittee that  
makes decisions regarding the lesson templates, tooling, release  
management, and other content-related matters.


The overhead hasn't been more than 1-2 hours a week (~1 day a month) tops.

If you would like to be considered, please email me separately at  
michaelj at epcc.ed.ac.uk by Friday 17th June (this Friday) with the  
following information:


* Your name.
* Your GitHub username.
* A brief statement of interest including:
  - Why you are interested being the Make maintainer.
  - Any contributions you've made to the Software Carpentry community  
(including teaching, pull requests, emails to this list, tool  
development, ...)
  - A few of the top changes you would like to make to the Make  
lessons and why you think they are important (this can be anything  
from formatting to content to ...)


I will evaluate the applications, and announce the new maintainer no  
later than Friday 25th.


Feel free to email me if you have any questions.

best wishes,
mike

[1] http://swcarpentry.github.io/make-novice
[2] https://github.com/swcarpentry/make-novice


Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.


___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/listinfo/discuss

Re: [Discuss] Numpy as the first section in the Python lessons?

2016-05-09 Thread Michael J Jackson

Hi folks,

Quoting Jan Kim  on Mon, 9 May 2016 11:11:12 +0100:


Dear All,

On Fri, May 06, 2016 at 10:20:41AM -0400, Ivan Gonzalez wrote:

Hi,

I do a similar thing. I usually start by running a simple statement
(print("Hello") or something alike) from the Python interpreter, then from
IPython, and then from the Jupyter notebook. (This was more important
before the renaming of IPython notebook to Jupyter).


I've used the same approach in the past (not in official SWC workshops
to be pedantic, but in teching computing / Linux to scientists in general).
I'd type some Python line-by-line into the plain vanilla interpreter,
pointing out that "now we have a different prompt, the Python prompt,
so we have to type Python code to be understood". Then (well before starting
with program flow control, because getting indentation right when typing
interactively is not a skill I really possess) I'd write the line(s)
known by then into a script, and go through the cycle of edit -- save
-- run -- check results a number of times quite explicitly and without
introducing new stuff that could be distracting at this point, to get
everyone familiar and comfortable with that cycle.

From my own experience, that cycle is one of those things that may appear
trivial to the initiated (most instructors), but can make a real difference
in terms of enabling learners to go on learning after the workshop.

One observation I have about using the numpy based intro is that this
can be confusing to participants. I got the question "what do these plots
mean?" after we had been through a couple of them.

Generally, not all particpants are not familiar with the concept of plotting
a matrix of numerical values using some arbitrary colour scheme. Without
some practice / familiarity / mental model of that, they may end up with
dual cognitive demands of having to match the colour-coded plot to the
time-courses (with the peak in the middle), and trying to figure out the
indexing and slicing (some of which is rather fancy and not standard
Python).

For these folks, introducing Python via a bunch of simple statements may
be more beneficial.


It would also be more in the spirit as to what is the stated goal of  
the lesson, which isn't to teach numpy or Python:


"Our real goal isn?t to teach you Python, but to teach you the basic  
concepts that all programming depends on." [1][2]


If I was a learner who has to write C or Fortran, I'd have difficulty  
seeing the point, whereas I'd see the point of good variable naming,  
pulling duplicated code into functions, meaningful comments etc.


I also agree with your moving to the edit-save-run approach as soon as  
possible, again because it's more consistent with how programming is  
done in C, C++, Fortran and Java, but also because typing loops or  
conditionals at the Python prompt quickly becomes painfully error prone.


cheers,
mike

[1] http://swcarpentry.github.io/python-novice-inflammation/
[2] No more than the revision control lesson is primarily to teach Git  
and GitHub, for example.



Best regards, Jan



Every time I open and close the corresponding tool, noting the differences
when pressing "Enter". This allows me to stress the difference between
Python, the language, and python, the program, and the rest of the tools.
This is useful if later in the class if I have to open/restart the
notebook. It good to note here what's Anaconda too.

Then I introduce arithmetic operators with a simple statement (say 1+1) and
then variable/names to save the result of the operation (say two = 1 + 1)
and briefly talk about the memory, objects and names.

This is very quick ~10 mins, but allows you to set some vocabulary (object,
name, statement, operator, ...) and some idea of what's happening
memory-wise which you may need later.

Then I follow the lesson importing numpy. I take advantage of the previous
definitions and usually say here that numpy is just another name which
refers to a bunch of code that is now loaded in memory and that was
installed as part of Anaconda.

Best,

Ivan

On Thu, May 5, 2016 at 5:50 PM, Byron Smith  wrote:


After my first time teaching python-novice, I decided to always skip the
first section.  Instead I work it in later while showing the use of
packages.

Although I understand why the Python lesson is structured the way it is,
and I like the idea of an application-first approach, this particular
implementation has been difficult for learners in my experience.  I look
forward to seeing the new lesson as it takes shape.

Instead I have had great success with the more traditional, "bottom-up"
approach.  Luckily, that's what you end up with when you remove section one
from the current lesson.

While my experience contradicts the general SWC belief that material needs
to be motivated early, I've found learners to already believe that they
should learn Python, making a focus on motivation less important.  This is
probably not the 

Re: [Discuss] moving discussions to GitHub issues

2016-05-09 Thread Michael J Jackson

Hi all,

Quoting Greg Wilson  on Fri, 6 May  
2016 12:01:51 -0400:


Hi Matthew; thanks for your mail.  Mailman (our mailing list  
manager) doesn't support ad hoc sub-lists, so when we've got a  
thread that a subset of subscribers are likely to want to discuss at  
length, we push it to a GitHub issue: it keeps the discussion public  
but opt-in (GitHub will auto-notify anyone who's previously  
commented on the thread and/or anyone who chooses to subscribe),  
while reducing traffic on the list for people who *aren't*  
interested in the details.  If and when there's a resolution to  
forward to the Steering Committee, a poll, or a concrete proposal  
(e.g., changing the tools we use for building lessons), someone can  
bring a short summary back to the main list.  It's not perfect, but  
it's worked pretty well so far.


While this process is known to us that have been on the list for a  
while, for newcomers it can seem rather abrupt. One of my colleagues,  
who was not aware of this process, interpreted it as "discussion over".


In ye olde days of Usenet newsgroups, many would have a monthly e-mail  
about the list, what was on and off topic, how they were moderated  
etc. It might be worth setting up an automated e-mail once a month to  
this list with a summary of processes such as when/why things are  
moved to GitHub, the revised code of conduct etc (or, at least, a link  
to page).


cheers,
mike


Thanks,

Greg

p.s. if anyone wants to *make* it perfect (or at least better), a  
script to take a selected thread from the Mailman archive and  
re-post messages in order as comments on a GitHub issue would be  
very useful - so much so that I will personally send a Software  
Carpentry t-shirt to whoever builds it.  For obvious reasons,  
though, please reply to me directly, rather than to this list :-)



On 2016-05-06 11:47 AM, Matthew Brett wrote:

On Fri, May 6, 2016 at 11:40 AM, Greg Wilson
 wrote:

+1

I would ask that this discussion be moved to github.

thank you,
--titus

Why do you think the discussion should be moved to github?  It's
certainly a tough discussion, but it seems like a legitimate one to
have on the discussion mailing list.

Best,

Matthew


--
Dr Greg Wilson
Director of Instructor Training
Software Carpentry Foundation



Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] Word and PowerPoint "all wrong"?

2016-05-05 Thread Michael J Jackson

Hi Tim,

Quoting Timothy Rice  on Thu, 5 May 2016  
19:56:17 +1000:



Statements that can be perceived as fundamentalist ("all wrong") or
patronising ("training wheels") when promoting one tool over another does
no favours and can be counter-productive.


I can see how it could appear so.

On the other hand, it can also end up being productive, if it makes people
re-evaluate what they previously took for granted, and they realise they
don't need to be trapped by training wheels foisted upon them by training
wheels manufacturers who ensure that training wheels appear in every K-13
classroom.

People can think it is patronising if they want.


It isn't productive if they think they're being patronised then go on  
the defensive, get irritated or switch off altogether. As an example,  
an attendee at a SWC workshop in September 2014 commented:


I never had any formal instruction in Excel, and instead have clawed  
my way into a decent working knowledge of it over the last almost  
two decades.  I am very proud of what I can do with it, and I have  
found it of great use, but I know there is a ton I don't know, so I  
was looking forward to that session. However, that session ended up  
being bitterly offensive. The basic message being conveyed was "you  
are an idiot for using Excel to do anything expect to put data into  
R, and an even worse idiot if you do things to make data  
comprehensible to a human."  There were snide cartoons, there was  
condescension...  It was infuriating. ...

By the end I was livid, tired, and very stressed.


from "Approaching Excel *angry student warning*" [1].

cheers,
mike

[1]  
http://lists.software-carpentry.org/pipermail/discuss_lists.software-carpentry.org/2014-September/002125.html




Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] Word and PowerPoint "all wrong"?

2016-05-05 Thread Michael J Jackson

Hi Timothy,

Quoting Timothy Rice  on Thu, 5 May 2016  
07:28:51 +1000:



Are training wheels on a bike "all wrong"?

To a beginner, training wheels also seem to have points of superiority; yet
we expect that as time goes on, the novice will discard the training
wheels. This is both a display of increased skill, and a prerequisite for
using the bike more effectively overall.

But maybe when even all the adults use training wheels too, and they can't
imagine a bike without training wheels, this state of affairs would hold
people back from using the bike to its full potential. It might even turn
out that anyone who does take the initiative of discarding training wheels
would seem like a freak who has to justify themselves to others. They might
find themselves responding to claims that training wheels aren't "all
wrong" ;)

And, you know, one of the things I emphasise at the start when teaching
LaTeX is that it is contraindicated for small, uncomplicated projects that
don't have special typesetting requirements. If someone is just writing a
letter to their grandma, they might wish to stick with their conventional
word processor, it's no skin off my nose.

However, one would hope that in academia, the researcher aspires to create
non-trivial documents; certainly many people who have tried writing a
thesis in Word later came to lament their choice.


Yes, I'm one of them!


Are Word and PowerPoint "all wrong"? Maybe not. But should we be content
with software whose main claim to fame is that they're not all wrong and
they happen to be used by a lot of people who refuse to discard training
wheels?


The "training wheels" analogy does not hold. Word and PowerPoint are  
not designed for beginners only. They are powerful document  
preparation tools in their own right.


My point was that Word and PowerPoint are not "all wrong" nor are they  
"all right". They have strengths and weaknesses, as does LaTeX (great  
for formulae!). Statements that can be perceived as fundamentalist  
("all wrong") or patronising ("training wheels") when promoting one  
tool over another does no favours and can be counter-productive. As an  
example, I've seen attendees at a workshop ask if they can hold Word  
docs under Git and, when told, "ideally you'd use plain-text documents  
to get the most benefit", switch off entirely as their community used  
Word, but when told "of course, you can put Word docs under Git", and  
having been shown this (including how to do a simple conflict  
resolution), brighten up again. I'd rather people be taught to  
appreciate and be aware of the strengths and weaknesses of all the  
tools they use, and, as Jan mentions, the technical debts they could  
incur. This includes the tools currently used by SWC (which, in  
future, people may wonder why we ever used some of them - a colleague  
recently railed against using a closed source platform like GitHub,  
for example)


cheers,
mike


Kind regards,


Tim

[1] https://github.com/cryptarch/latex-novice.git








As one who writes everything in MarkDown by preference, are Word and
PowerPoint "all wrong"? Yes, their binary formats don't play so well
with revision control than plain-text formats such as MarkDown or
LaTeX, for example (but sticking them under revision control is
still of great benefit). In other ways they're superior: WYSIWYG
editors, no compilation steps, PDF-generation from within the tool,
and they're ubiquitous. Similarly, for some tasks they allow a user
to "do more in less time with less pain" than the alternatives*.

cheers,
mike

* Having spent more than the 5 minutes it should have taken
yesterday trying (and failing even with Google's help) to put a
hyperlink to a Wikipedia page with multiple underscores in a LaTeX
document and have it clickable in the resulting PDF.



Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk



Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk



--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


[Discuss] Word and PowerPoint "all wrong"? Was Re: SWC for high school (16-18)

2016-05-04 Thread Michael J Jackson

Hi,

Quoting Dirk Eddelbuettel  on Tue, 3 May 2016 15:53:14 -0500:


My two daughters are in that very age bracket. The older one is off to
college in the fall and just did a year-long reasearch project which, per the
instructions of her teacher, did it 'all wrong' by our standards: data
analysis, regression, charts in Excel; write-up in Word and presentations in
Powerpoint.


As one who writes everything in MarkDown by preference, are Word and  
PowerPoint "all wrong"? Yes, their binary formats don't play so well  
with revision control than plain-text formats such as MarkDown or  
LaTeX, for example (but sticking them under revision control is still  
of great benefit). In other ways they're superior: WYSIWYG editors, no  
compilation steps, PDF-generation from within the tool, and they're  
ubiquitous. Similarly, for some tasks they allow a user to "do more in  
less time with less pain" than the alternatives*.


cheers,
mike

* Having spent more than the 5 minutes it should have taken yesterday  
trying (and failing even with Google's help) to put a hyperlink to a  
Wikipedia page with multiple underscores in a LaTeX document and have  
it clickable in the resulting PDF.



--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] Make lesson depends on Python 2?

2015-11-13 Thread Michael J Jackson

Hi Tiffany, Trevor,

I'm the maintainer and had updated the lesson code to be Python 2 and  
3 compatible.


Sorry, I forgot to update make-lesson.tar.gz (one of the perils of  
abusing version control by keeping auto-generated content in it!).  
I've done this now (1) and it's now downloadable from the lesson page  
and just tested under:


* Python 2.7.10 :: Anaconda 2.4.0 (64-bit)
* Python 3.5.0 :: Anaconda 2.4.0 (64-bit)

cheers,
mike

(1)  
https://github.com/swcarpentry/make-novice/commit/35068b140ae3da3d62fb69251a5f174da450170d


Quoting "W. Trevor King"  on Thu, 12 Nov 2015  
21:43:16 -0800:



On Thu, Nov 12, 2015 at 09:31:13PM -0800, Tiffany Timbers wrote:

I meant to say you get those errors when you try to use python 3
with the scripts you download from the link on the lesson page:
http://swcarpentry.github.io/make-novice/make-lesson.tar.gz


So the compiled tarball there is stale and just needs to be updated.
I'm not sure who's in charge of updating those tarballs or what the
procedure is to do so, but you can always run:

$ make make-lesson.tar.gz

in a Git checkout of the make-novice repository and put the resulting
tarball on your event website for your students.

It looks like you may be having some JPG/PDF trouble with master as
well [1], but I don't understand yet why that would be due to Python 2
vs. Python 3.

Cheers,
Trevor

[1]: https://github.com/swcarpentry/make-novice/pull/27

--
This email may be signed or encrypted with GnuPG (http://www.gnupg.org).
For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy






Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk




--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] pulling along those behind

2015-10-27 Thread Michael J Jackson

Hi Peter,

If there are more people falling behind than you have helpers to  
handle, then I'd just slow down. I'd (reluctantly) rather bore those  
who don't want a slower pace, than confuse those do.


cheers,
mike

Quoting Peter Steinbach  on Tue, 27 Oct 2015  
11:39:01 +0100:



Hi Raniere et al,

thanks for the pointers for recording the terminal history, I'd like  
to get back to my more general question though ... how to give  
participants that are not up to the level of the course a chance to  
follow? I don't wanna drag them all through, at some point there has  
to be a limit for the sake of the remaining crowd. But still, I'd  
like to hear people's experience on this.


Best,
Peter

On 10/27/2015 11:23 AM, Raniere Silva wrote:

Hi Peter,


Could you share these scripts?


Please check
https://github.com/swcarpentry/site/pull/1124/files#diff-9e17f2fd404c84648654a4fc54a9a2ecR71  
.

We are going to publish it this week.


I'd like to see if they'd capture a nano screen etc
(I presume not, but I'd like to try them anyhow).
Apologies if they were already shared with this community and I  
overlooked them.


There are terminal screen recorder that can capture nano
but from my experience they don't work for what you want. =(

Cheers,
Raniere



--
Peter Steinbach, Dr. rer. nat.
HPC Developer, Scientific Computing Facility

Scionics Computer Innovation GmbH
Löscherstr. 16
01309 Dresden
Germany

phone +49 351 210 2882
fax   +49 351 202 707 04
www.scionics.de

Sitz der Gesellschaft: Dresden (Main office)
Amtsgericht - Registergericht: Dresden HRB 20337 (Commercial Registry)
Ust-IdNr.: DE813263791 (VAT ID Number)
Geschäftsführer: John Duperon, Jeff Oegema (Managing Directors)

___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org







Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org

Re: [Discuss] a new lesson on Make

2015-07-02 Thread Michael J Jackson

Hi Damien,

Quoting Damien Irving d.irv...@student.unimelb.edu.au on Thu, 2 Jul  
2015 10:37:58 +1000:



Thanks, Michael. Those installation instructions are great (I've created an
issue to talk about including them in the workshop template:
https://github.com/swcarpentry/workshop-template/issues/228).



One last naive Windows question - does Git Bash come with the tar command?
That command is used extensively in the Make lesson.


It does :-)

cheers,
mike


On Mon, Jun 29, 2015 at 6:01 PM, Michael J Jackson micha...@epcc.ed.ac.uk
wrote:


Hi Damien,

Quoting Damien Irving d.irv...@student.unimelb.edu.au on Mon, 29 Jun
2015 16:19:36 +1000:

Great - I think I'll teach this lesson at a workshop next month:

http://damienirving.github.io/2015-07-13-amos/

Naive windows question (i.e. I don't have a windows machine to try this
on): Does Make come with Git Bash?



(1) has Make info for all platforms. For Windows...

Once you have installed Git Bash you can install Make by:

* Download make.exe from here (2)
* Place it in the bin directory where you installed Git Bash e.g.
C:\Program Files (x86)\Git\bin.
* To test: open a Git Bash window, type make, and press Enter.
* You should see the following message

```
make: *** No targets specified and no makefile found. Stop.

```
This means that Make was successfully installed. Otherwise, you'll see
this error message:

```
bash: make: command not found
```

cheers,
mike

(1) http://hpcarcher.github.io/2014-12-03-edinburgh/
(2) https://github.com/msysgit/msysgit/blob/master/bin/make.exe?raw=true







On Fri, Jun 19, 2015 at 4:01 AM, Greg Wilson 
gvwil...@software-carpentry.org wrote:

We now have a lesson on using Make that's actually human-readable (unlike

the one I did for version 4).  See
http://software-carpentry.org/blog/2015/06/adding-a-lesson-on-make.html
for the post - many thanks to Mike Jackson and Steve Croucher for putting
it together.  Additions, corrections, suggestions, and everything else
would be very welcome.
Cheers,
Greg

--
Dr. Greg Wilson| gvwil...@software-carpentry.org
Software Carpentry | http://software-carpentry.org


___
Discuss mailing list
Discuss@lists.software-carpentry.org


http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org








Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.




___
Discuss mailing list
Discuss@lists.software-carpentry.org

http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org








Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk



--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] a new lesson on Make

2015-06-29 Thread Michael J Jackson

Hi Damien,

Quoting Damien Irving d.irv...@student.unimelb.edu.au on Mon, 29 Jun  
2015 16:19:36 +1000:



Great - I think I'll teach this lesson at a workshop next month:
http://damienirving.github.io/2015-07-13-amos/

Naive windows question (i.e. I don't have a windows machine to try this
on): Does Make come with Git Bash?


(1) has Make info for all platforms. For Windows...

Once you have installed Git Bash you can install Make by:

* Download make.exe from here (2)
* Place it in the bin directory where you installed Git Bash e.g.  
C:\Program Files (x86)\Git\bin.

* To test: open a Git Bash window, type make, and press Enter.
* You should see the following message

```
make: *** No targets specified and no makefile found. Stop.

```
This means that Make was successfully installed. Otherwise, you'll see  
this error message:


```
bash: make: command not found
```

cheers,
mike

(1) http://hpcarcher.github.io/2014-12-03-edinburgh/
(2) https://github.com/msysgit/msysgit/blob/master/bin/make.exe?raw=true







On Fri, Jun 19, 2015 at 4:01 AM, Greg Wilson 
gvwil...@software-carpentry.org wrote:


We now have a lesson on using Make that's actually human-readable (unlike
the one I did for version 4).  See
http://software-carpentry.org/blog/2015/06/adding-a-lesson-on-make.html
for the post - many thanks to Mike Jackson and Steve Croucher for putting
it together.  Additions, corrections, suggestions, and everything else
would be very welcome.
Cheers,
Greg

--
Dr. Greg Wilson| gvwil...@software-carpentry.org
Software Carpentry | http://software-carpentry.org


___
Discuss mailing list
Discuss@lists.software-carpentry.org

http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org








Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] Food for thought for the Python 2 vs 3 debate

2015-06-17 Thread Michael J Jackson

Hi all,

At the risk of introducing a tangent ... while using the popular  
flavour of Python is important, surely the choice of Python version is  
less important than why Python is being used? That is, as a vehicle to  
introduce principles of good programming practice. I get concerned  
when attendees refer to SWC as Python training courses and tell them  
that is not what SWC courses are (not least, because one can't teach  
any programming language in half a day)


Attendees who write in C, C++, FORTRAN or Java all day won't benefit  
from (and won't care) about the differences between Python 2 and 3,  
but will benefit from knowing how to write better code in their own  
languages.


cheers,
mike

Quoting James Hiebert hieb...@uvic.ca on Tue, 16 Jun 2015 12:34:22 -0700:


Hi All,

Thanks for sending along this post, and please allow me the  
opportunity to weigh in on teaching 3 vs. 2.


I've read a lot of responses to this have essentially said Python 3  
doesn't have any killer features that you can't get in Python 2.  
One of the biggest things that my team gets out of Python 3 is that  
iteration and generator functions are much, much better. In Python  
3, Most container data types use iteration natively rather than  
instantiating and returning lists. For example dict.keys(),  
dict.values(), and dict.items() all return *iterators* and  
memoryviews rather than lists or tuples.


https://www.python.org/dev/peps/pep-3106/

Same with the range() builtin and a lot of others. This doesn't  
fundamentally change the way that the code reads (so may be a bit  
opaque to the user), but can have a large impact on how the code  
executes for large sets of input. In the earth sciences (I work in  
climate science) this is a big deal, because your input size can be  
huge. Most of the time, our computations are limited by the RAM on  
the system, so not having make copies of your data on the stack (R  
is notorious for this) can potentially give you a multiplicative  
increase in throughput.


Generators are substantiall easier to use with the addition of the  
yield from [some iterator] statement. It basically allows you to  
build up sets of generators and then mix and match them.


https://docs.python.org/3.3/whatsnew/3.3.html#pep-380-syntax-for-delegating-to-a-subgenerator

Python iterators and generators can be more advanced topics that we  
won't necessarily be teaching beginners. However, they are  
definitely something that allows you to scale up your code to larger  
input data sets, so they're something that scientists will want when  
they work up to using them. And the support in Python 3 is much  
better and more consistent.


Glad to hear that the workshops that have used Python 3 have been smooth.

~James

On Mon, Jun 15, 2015 at 04:37:11PM -0700, Steven Haddock wrote:
This was a timely post by Maxime, because I was just thinking of  
surveying instructors about what they use for their own work and  
what were the thoughts about porting SWC lessons to Python 3. I  
can?t remember if there was a recent thread on this?
Worth creating an issue (or something even more formal) and having  
people state their cases?


We are using Python 3 for the next edition of our book, but I feel  
a bit like the first guy over the wall at the Battle of Hastings,  
looking over my shoulder at the other 85% huddled in relative safety

.
-Steve


 On Jun 15, 2015, at 12:17 , Maxime Boissonneault  
maxime.boissonnea...@calculquebec.ca wrote:


 Some interresting reading :

 http://astrofrog.github.io/blog/2015/05/09/2015-survey-results/

 Maxime


--
James Hiebert
Lead, Computational Support
Pacific Climate Impacts Consortium
http://www.pacificclimate.org
E-mail: hieb...@uvic.ca

___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org





Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] SWC material as a semester long course?

2014-09-30 Thread Michael J Jackson

Hi Dan,


On 2014-09-29 9:36 AM, Daniel Chen wrote:

 I was wondering if anyone has had any success teaching the swc material
as a semester long lab course?  Assuming 1 lab a week for 1.5 hours a lab,
if we mimic the swc workshop pace we have at least 6 weeks of material:

 Bash: 2 weeks
Git: 2 weeks
Python/R: 2 weeks

 Now, this could be 2 half-semester courses or it can be expanded to
include LaTeX, SQL, data carpentry material,  for a semester long course.
Has anyone else thought of this or tried to pitch this to a department
chair?

 I've touched base on the idea of such a course with numerous faculty
members (from CUMC and the EE department at CU), and the response is all
positive.  I'm mostly asking to see what logistical/administrative hurdles
I will encounter.


EPCC runs an MSc in High Performance Computing which included a  
semester-long Tools and Techniques course, which was rebranded 3 years  
ago into Programming Skills. This consists of 1 hour lecture + 2 hour  
lab self-guided slots [1]. Since becoming aware of SWC, I've tried to  
underpin the content with the same motivations (do more in less time  
with less pain, reproducible research etc) as SWC. The main challenges  
to moving towards a more SWC-like approach are:


* Getting a room suitable for live coding in term time. The lab used  
is such that I can't use a laptop and see the students at the same time.

* Getting a suitable number of helpers.
* Encouraging the other lecturers to try live coding (it is a big  
ask so I don't insist they do it).


The course is mandatory and a common complaint from students is we  
know all this, but their coursework submissions often show otherwise.


cheers,
mike

[1] http://www.drps.ed.ac.uk/14-15/dpt/cxpgph11079.htm


Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


[Discuss] Boot camp, bootcamp, workshop

2014-09-25 Thread Michael J Jackson

Hi folks,

A few months ago I was corrected from boot camp to bootcamp [1]  
when blogging about a boot camp. I pushed the fused update and  
discussion moved onto how there was a push towards workshop  
[2][3][4]. I mentioned this intent to colleagues and since then have  
had a number of people point out to me every time the term bootcamp  
is still used, as it is, predominantly. So what is the currently  
preferred term? As, for now, 'd prefer to continue with bootcamp for  
consistency's sake and a quiet life ;-)


thanks,
mike

[1] https://github.com/swcarpentry/site/pull/563
[2] https://github.com/swcarpentry/site/pull/564
[3] https://github.com/swcarpentry/bc/issues/240
[4] https://github.com/swcarpentry/bc/pull/454


Dr. Michael (Mike) Jackson m.jack...@epcc.ed.ac.uk
Software Architect Tel: +44 (0)131 650 5141
EPCC, The University of Edinburgh  http://www.epcc.ed.ac.uk
Software Sustainability Institute  http://www.software.ac.uk


--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



___
Discuss mailing list
Discuss@lists.software-carpentry.org
http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org


Re: [Discuss] Approaching Excel *angry student warning*

2014-09-23 Thread Michael J Jackson
Quoting Azalee Bostroem abostr...@gmail.com on Sun, 21 Sep 2014  
10:12:29 -0700:


I just want to echo what Matt and Titus have said - SWC has never  
been about advocating a language, it is about giving scientists the  
tools to do their work in a more efficient manner. In an ideal  
world, we could present everyone these tools in the language they  
are already familiar with (as long as it lends itself to  
reproducibility and automation), however, this would significantly  
increase the work required to create and maintain our materials and  
divide our instructors. My understanding of why Python was chosen is  
that it is easy to learn in a short period of time. The syntax is  
pretty close to english and the formatting is such that it is easy  
to parse. This allows us to teach our audience in a single language  
with which we can communicate the reproducibility and automation we  
really want to teach.


This was my understanding also. A researcher working with 1 lines
of legacy FORTRAN is not going to leap to Python but can take away
advice on comments, naming, indentation, modularity and see about
adopting tests using FRUIT or pfUnit. Similarly for Automation and Make,
those using Java are far more likely to use ANT, but the underlying
concepts are the same. Likewise for the other tools. If someone comes
away from a workshop wary of Git but decides to start using Subversion
then that's a success.

Also, as Greg mentions in his Scipy talk - no one will spend 2 days  
learning reproducibility, but many people will spend 2 days learning  
Python - so we can sneak it in our real mission under the guise of  
something they will sign up for. I believe that the lesson  
development in other languages, such as R, has been driven by the  
prevalence of those languages in different fields and instructors  
who would like to teach in the language that they use for their work  
(please correct me if I?m wrong here). That being said, many of us  
do prefer R and Python and I think our conversations with our class  
should focus on why we believe the tools we are teaching them are  
worth learning? If the skills we are teaching in Python can be  
applied to VBA macros - awesome. By teaching students these tools,  
they can use them in their native language. If the skills cannot be  
applied, then hopefully students will move towards another language.


To consider: should we mention the short-comings of commonly used  
languages that we would like students to stop using or just focus on  
the tools we are teaching and hope they see those on their own.


Finally, in terms of advertising what we plan to teach. I think we  
are very straight forward with what we plan to teach. The biggest  
complaint I see is students who thought the class was too easy or  
too hard (usually a few of both).


-Azalee


Same here. Flagging this up at the start (like hillwalking the slowest
will set the pace of the group) might reduce these complaints (but then
again...)

cheers,
mike


On Sep 21, 2014, at 8:14 AM, W. Trevor King wk...@tremily.us wrote:


On Sun, Sep 21, 2014 at 12:04:12AM -0400, Marianne Corvellec wrote:

Plus, I concur with Titus that it wouldn't be manageable to
add/include/append to the SWC materials any and every other tool
that might be used out there.


I certainly focus *my* efforts on the Shell/Git/Python side of our
standard lessons, because I don't know, or really care, about
R/Mercurial/?.  Does that mean I think the folks who are working on
those lessons are wasting their time and should be contributing to the
lessons for my tools?  No.  There's a niche for just about every too
(although I think Python has a bigger niche than, say, Matlab ;).
Will explain to the curious why I use the tools I do?  Absolutely.
Will I treat them as second-class citizens if they want to teach/learn
other tools?  No [1].


We want to focus our efforts indeed; for instance, I can't imagine
how instructor training would remain consistent and manageable, if
we don't have a somewhat standard, small enough curriculum/toolset.


As I understand it, instructor training is mostly about pedagogy.  For
example:

$ git log -p -G 'git ' origin/master..origin/pr/703

shows no mention of a Git command in the current version of the
instructor course (see also [2]).  The best-practices paper doesn't
force a particular toolset [3,4,5,6], so and I think that pitching
that big tent is important.  For example [6]:

?Many good VCSes are open source and freely available?.  As with
coding style, the best one to use is almost always whatever your
colleagues are already using.?

If instructors are already comfortable with some tool that fits the
bill, I'm happy letting them use that.  I'm also happy pointing the
ones that *don't* come in with tools in their box towards our
favorites, and helping bring them up to speed there.  If a diversity
of tools makes it slightly harder to collaborate on lesson development
(and Git-vs-Mercurial is not going