index.md 37.6 KB
Newer Older
1
---
2
layout: workshop      # DON'T CHANGE THIS.
3
4
carpentry: "FIXME"    # what kind of Carpentry (must be either "lc" or "dc" or "swc").  
                      # Be sure to update the Carpentry type in _config.yml as well.  
5
venue: "FIXME"        # brief name of host site without address (e.g., "Euphoric State University")
6
address: "FIXME"      # full street address of workshop (e.g., "Room A, 123 Forth Street, Blimingen, Euphoria")
7
8
country: "FIXME"      # lowercase two-letter ISO country code such as "fr" (see https://en.wikipedia.org/wiki/ISO_3166-1#Current_codes)
language: "FIXME"     # lowercase two-letter ISO language code such as "fr" (see https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
Katrin Leinweber's avatar
Katrin Leinweber committed
9
latlng: "FIXME"       # decimal latitude and longitude of workshop venue (e.g., "41.7901128,-87.6007318" - use https://www.latlong.net/)
10
11
12
13
14
15
humandate: "FIXME"    # human-readable dates for the workshop (e.g., "Feb 17-18, 2020")
humantime: "FIXME"    # human-readable times for the workshop (e.g., "9:00 am - 4:30 pm")
startdate: FIXME      # machine-readable start date for the workshop in YYYY-MM-DD format like 2015-01-01
enddate: FIXME        # machine-readable end date for the workshop in YYYY-MM-DD format like 2015-01-02
instructor: ["FIXME"] # boxed, comma-separated list of instructors' names as strings, like ["Kay McNulty", "Betty Jennings", "Betty Snyder"]
helper: ["FIXME"]     # boxed, comma-separated list of helpers' names, like ["Marlyn Wescoff", "Fran Bilas", "Ruth Lichterman"]
16
email: ["fixme@example.org"]    # boxed, comma-separated list of contact email addresses for the host, lead instructor, or whoever else is handling questions, like ["marlyn.wescoff@example.org", "fran.bilas@example.org", "ruth.lichterman@example.org"]
17
collaborative_notes:             # optional: URL for the workshop collaborative notes, e.g. an Etherpad or Google Docs document
18
eventbrite:           # optional: alphanumeric key for Eventbrite registration, e.g., "1234567890AB" (if Eventbrite is being used)
19
---
20

Raniere Silva's avatar
Raniere Silva committed
21
{% comment %} See instructions in the comments below for how to edit specific sections of this workshop template. {% endcomment %}
22

Raniere Silva's avatar
Raniere Silva committed
23
{% comment %}
François Michonneau's avatar
François Michonneau committed
24
HEADER
25

François Michonneau's avatar
François Michonneau committed
26
27
28
29
Edit the values in the block above to be appropriate for your workshop.
If the value is not 'true', 'false', 'null', or a number, please use
double quotation marks around the value, unless specified otherwise.
And run 'make workshop-check' *before* committing to make sure that changes are good.
Raniere Silva's avatar
Raniere Silva committed
30
{% endcomment %}
31

32
33
34
35
36
37


{% comment %}
For a workshop please delete the following block
{% endcomment %}
<div class="alert alert-danger">
38
39
40
41
42
43
This is the workshop template. Delete these lines and use it to customize your
own website. If you are running a self-organized workshop or have not put in a
workshop request yet, please also fill in 
<a href="{{site.amy_site}}/submit">this workshop request form</a> to let us know
about your workshop and our administrator may contact you if we need any extra
information.
44
45
</div>

46
47
{% if page.carpentry != site.carpentry %}
<div class="alert alert-warning">
François Michonneau's avatar
François Michonneau committed
48
49
You specified <code>carpentry: {{page.carpentry}}</code> in <code>index.md</code> and
<code>carpentry: {{site.carpentry}}</code> in <code>_config.yml</code>. Make sure you edit both files. After editing <code>_config.yml</code>, you need to run <code>make serve</code> again to 
50
51
52
see the changes take effect locally.
</div>
{% endif %}
53

Raniere Silva's avatar
Raniere Silva committed
54
{% comment %}
François Michonneau's avatar
François Michonneau committed
55
EVENTBRITE
56

François Michonneau's avatar
François Michonneau committed
57
58
59
60
This block includes the Eventbrite registration widget if
'eventbrite' has been set in the header.  You can delete it if you
are not using Eventbrite, or leave it in, since it will not be
displayed if the 'eventbrite' field in the header is not set.
Raniere Silva's avatar
Raniere Silva committed
61
{% endcomment %}
62
63
{% if page.eventbrite %}
<iframe
64
  src="https://www.eventbrite.com/tickets-external?eid={{page.eventbrite}}&ref=etckt"
65
  frameborder="0"
66
  width="100%"
67
  height="280px"
68
69
70
71
  scrolling="auto">
</iframe>
{% endif %}

72

73
<h2 id="general">General Information</h2>
74

Raniere Silva's avatar
Raniere Silva committed
75
{% comment %}
François Michonneau's avatar
François Michonneau committed
76
INTRODUCTION
77

François Michonneau's avatar
François Michonneau committed
78
79
Edit the general explanatory paragraph below if you want to change
the pitch.
Raniere Silva's avatar
Raniere Silva committed
80
{% endcomment %}
81
{% if page.carpentry == "swc" %}
François Michonneau's avatar
François Michonneau committed
82
{% include sc/intro.html %}
83
{% elsif page.carpentry == "dc" %}
François Michonneau's avatar
François Michonneau committed
84
{% include dc/intro.html %}
85
{% elsif page.carpentry == "lc" %}
François Michonneau's avatar
François Michonneau committed
86
{% include lc/intro.html %}
87
{% endif %}
88

Raniere Silva's avatar
Raniere Silva committed
89
{% comment %}
François Michonneau's avatar
François Michonneau committed
90
AUDIENCE
91

François Michonneau's avatar
François Michonneau committed
92
93
Explain who your audience is.  (In particular, tell readers if the
workshop is only open to people from a particular institution.
Raniere Silva's avatar
Raniere Silva committed
94
{% endcomment %}
95
{% if page.carpentry == "swc" %}
François Michonneau's avatar
François Michonneau committed
96
{% include sc/who.html %}
97
{% elsif page.carpentry == "dc" %}
François Michonneau's avatar
François Michonneau committed
98
{% include dc/who.html %}
99
{% elsif page.carpentry == "lc" %}
François Michonneau's avatar
François Michonneau committed
100
{% include lc/who.html %}
101
{% endif %}
102

Raniere Silva's avatar
Raniere Silva committed
103
{% comment %}
François Michonneau's avatar
François Michonneau committed
104
LOCATION
105

François Michonneau's avatar
François Michonneau committed
106
107
108
109
This block displays the address and links to maps showing directions
if the latitude and longitude of the workshop have been set.  You
can use https://itouchmap.com/latlong.html to find the lat/long of an
address.
Raniere Silva's avatar
Raniere Silva committed
110
{% endcomment %}
111
{% if page.latlng %}
112
<p id="where">
113
  <strong>Where:</strong>
114
  {{page.address}}.
115
  Get directions with
116
  <a href="//www.openstreetmap.org/?mlat={{page.latlng | replace:',','&mlon='}}&zoom=16">OpenStreetMap</a>
117
  or
118
  <a href="//maps.google.com/maps?q={{page.latlng}}">Google Maps</a>.
119
120
121
</p>
{% endif %}

Raniere Silva's avatar
Raniere Silva committed
122
{% comment %}
François Michonneau's avatar
François Michonneau committed
123
DATE
124

François Michonneau's avatar
François Michonneau committed
125
This block displays the date and links to Google Calendar.
Raniere Silva's avatar
Raniere Silva committed
126
{% endcomment %}
127
128
129
130
{% if page.humandate %}
<p id="when">
  <strong>When:</strong>
  {{page.humandate}}.
131
  {% include workshop_calendar.html %}
132
133
134
</p>
{% endif %}

Raniere Silva's avatar
Raniere Silva committed
135
{% comment %}
François Michonneau's avatar
François Michonneau committed
136
SPECIAL REQUIREMENTS
137

François Michonneau's avatar
François Michonneau committed
138
Modify the block below if there are any special requirements.
Raniere Silva's avatar
Raniere Silva committed
139
{% endcomment %}
140
<p id="requirements">
Tom Wright's avatar
Tom Wright committed
141
  <strong>Requirements:</strong> Participants must bring a laptop with a
Nicola Soranzo's avatar
Nicola Soranzo committed
142
  Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed <a href="#setup">below</a>).
143
144
</p>

145
146
147
{% comment%}
CODE OF CONDUCT
{% endcomment %}
François Michonneau's avatar
François Michonneau committed
148
<p id="code-of-conduct">
149
150
151
152
<strong>Code of Conduct:</strong>  Everyone who participates in Carpentries activities is required to conform to the <a href="https://docs.carpentries.org/topic_folders/policies/code-of-conduct.html">Code of Conduct</a>. This document also outlines how to report an incident if needed.
</p>


Raniere Silva's avatar
Raniere Silva committed
153
{% comment %}
François Michonneau's avatar
François Michonneau committed
154
ACCESSIBILITY
Tom Wright's avatar
Tom Wright committed
155

François Michonneau's avatar
François Michonneau committed
156
157
Modify the block below if there are any barriers to accessibility or
special instructions.
Raniere Silva's avatar
Raniere Silva committed
158
{% endcomment %}
Tom Wright's avatar
Tom Wright committed
159
<p id="accessibility">
Greg Wilson's avatar
Greg Wilson committed
160
161
  <strong>Accessibility:</strong> We are committed to making this workshop
  accessible to everybody.
162
  The workshop organizers have checked that:
Greg Wilson's avatar
Greg Wilson committed
163
164
165
166
167
168
169
170
171
172
</p>
<ul>
  <li>The room is wheelchair / scooter accessible.</li>
  <li>Accessible restrooms are available.</li>
</ul>
<p>
  Materials will be provided in advance of the workshop and
  large-print handouts are available if needed by notifying the
  organizers in advance.  If we can help making learning easier for
  you (e.g. sign-language interpreters, lactation facilities) please
173
  get in touch (using contact details below) and we will
Greg Wilson's avatar
Greg Wilson committed
174
  attempt to provide them.
Tom Wright's avatar
Tom Wright committed
175
176
</p>

Raniere Silva's avatar
Raniere Silva committed
177
{% comment %}
François Michonneau's avatar
François Michonneau committed
178
CONTACT EMAIL ADDRESS
179

François Michonneau's avatar
François Michonneau committed
180
Display the contact email address set in the configuration file.
Raniere Silva's avatar
Raniere Silva committed
181
{% endcomment %}
182
<p id="contact">
183
  <strong>Contact</strong>:
184
  Please email
185
  {% if page.email %}
François Michonneau's avatar
François Michonneau committed
186
187
188
189
190
191
192
193
194
195
  {% for email in page.email %}
  {% if forloop.last and page.email.size > 1 %}
  or
  {% else %}
  {% unless forloop.first %}
  ,
  {% endunless %}
  {% endif %}
  <a href='mailto:{{email}}'>{{email}}</a>
  {% endfor %}
196
  {% else %}
François Michonneau's avatar
François Michonneau committed
197
  to-be-announced
198
199
  {% endif %}
  for more information.
200
201
202
203
</p>

<hr/>

204
{% comment %} 
François Michonneau's avatar
François Michonneau committed
205
SURVEYS - DO NOT EDIT SURVEY LINKS 
Raniere Silva's avatar
Raniere Silva committed
206
{% endcomment %}
207
<h2 id="surveys">Surveys</h2>
208
<p>Please be sure to complete these surveys before and after the workshop.</p>
Erin Becker's avatar
Erin Becker committed
209
210
211
212
213
214
215
216
217
218
{% if site.carpentry == "swc" %} 
<p><a href="{{ site.swc_pre_survey }}{{ site.github.project_title }}">Pre-workshop Survey</a></p>
<p><a href="{{ site.swc_post_survey }}{{ site.github.project_title }}">Post-workshop Survey</a></p>
{% elsif site.carpentry == "dc" %}
<p><a href="{{ site.dc_pre_survey }}{{ site.github.project_title }}">Pre-workshop Survey</a></p>
<p><a href="{{ site.dc_post_survey }}{{ site.github.project_title }}">Post-workshop Survey</a></p>
{% elsif site.carpentry == "lc" %}
<p><a href="{{ site.lc_pre_survey }}{{ site.github.project_title }}">Pre-workshop Survey</a></p>
<p><a href="{{ site.lc_post_survey }}{{ site.github.project_title }}">Post-workshop Survey</a></p>
{% endif %}
219

220
221
<hr/>

Erin Becker's avatar
Erin Becker committed
222

223
{% comment %}
François Michonneau's avatar
François Michonneau committed
224
SCHEDULE
225

François Michonneau's avatar
François Michonneau committed
226
227
228
Show the workshop's schedule.  Edit the items and times in the table
to match your plans.  You may also want to change 'Day 1' and 'Day
2' to be actual dates or days of the week.
229
230
{% endcomment %}
<h2 id="schedule">Schedule</h2>
231

232
{% if page.carpentry == "swc" %}
François Michonneau's avatar
François Michonneau committed
233
{% include sc/schedule.html %}
234
{% elsif page.carpentry == "dc" %}
François Michonneau's avatar
François Michonneau committed
235
{% include dc/schedule.html %}
236
{% elsif page.carpentry == "lc" %}
François Michonneau's avatar
François Michonneau committed
237
{% include lc/schedule.html %}
238
{% endif %}
239

Raniere Silva's avatar
Raniere Silva committed
240
{% comment %}
François Michonneau's avatar
François Michonneau committed
241
Collaborative Notes
242

François Michonneau's avatar
François Michonneau committed
243
If you want to use an Etherpad, go to
244

245
http://pad.carpentries.org/YYYY-MM-DD-site
246

François Michonneau's avatar
François Michonneau committed
247
248
where 'YYYY-MM-DD-site' is the identifier for your workshop,
e.g., '2015-06-10-esu'.
Raniere Silva's avatar
Raniere Silva committed
249
{% endcomment %}
250
251
252
{% if page.collaborative_notes %}
<p id="collaborative_notes">
  We will use this <a href="{{page.collaborative_notes}}">collaborative document</a> for chatting, taking notes, and sharing URLs and bits of code.
253
254
255
</p>
{% endif %}

256
257
<hr/>

Raniere Silva's avatar
Raniere Silva committed
258
{% comment %}
François Michonneau's avatar
François Michonneau committed
259
SYLLABUS
260

François Michonneau's avatar
François Michonneau committed
261
Show what topics will be covered.
262

François Michonneau's avatar
François Michonneau committed
263
264
265
266
267
268
269
1. If your workshop is R rather than Python, remove the comment
around that section and put a comment around the Python section.
2. Some workshops will delete SQL.
3. Please make sure the list of topics is synchronized with what you
intend to teach.
4. You may need to move the div's with class="col-md-6" around inside
the div's with class="row" to balance the multi-column layout.
270

François Michonneau's avatar
François Michonneau committed
271
272
273
This is one of the places where people frequently make mistakes, so
please preview your site before committing, and make sure to run
'tools/check' as well.
Raniere Silva's avatar
Raniere Silva committed
274
{% endcomment %}
275
<h2 id="syllabus">Syllabus</h2>
276

277
{% if page.carpentry == "swc" %}
François Michonneau's avatar
François Michonneau committed
278
{% include sc/syllabus.html %}
279
{% elsif page.carpentry == "dc" %}
François Michonneau's avatar
François Michonneau committed
280
{% include dc/syllabus.html %}
281
{% elsif page.carpentry == "lc" %}
François Michonneau's avatar
François Michonneau committed
282
{% include lc/syllabus.html %}
283
{% endif %}
284
285
286

<hr/>

Raniere Silva's avatar
Raniere Silva committed
287
{% comment %}
François Michonneau's avatar
François Michonneau committed
288
SETUP
289

François Michonneau's avatar
François Michonneau committed
290
291
292
Delete irrelevant sections from the setup instructions.  Each
section is inside a 'div' without any classes to make the beginning
and end easier to find.
293

François Michonneau's avatar
François Michonneau committed
294
295
296
This is the other place where people frequently make mistakes, so
please preview your site before committing, and make sure to run
'tools/check' as well.
Raniere Silva's avatar
Raniere Silva committed
297
{% endcomment %}
298

299
<h2 id="setup">Setup</h2>
300

301
<p>
302
303
304
305
306
307
308
309
310
311
312
  To participate in a
  {% if page.carpentry == "swc" %}
  Software Carpentry
  {% elsif page.carpentry == "dc" %}
  Data Carpentry
  {% elsif page.carpentry == "lc" %}
  Library Carpentry
  {% endif %}
  workshop,
  you will need access to the software described below.
  In addition, you will need an up-to-date web browser.
313
314
</p>
<p>
David LeBauer's avatar
David LeBauer committed
315
316
  We maintain a list of common issues that occur during installation as a reference for instructors
  that may be useful on the
317
  <a href = "{{site.swc_github}}/workshop-template/wiki/Configuration-Problems-and-Solutions">Configuration Problems and Solutions wiki page</a>.
318
319
</p>

Raniere Silva's avatar
Raniere Silva committed
320
<div id="shell"> {% comment %} Start of 'shell' section. {% endcomment %}
321
322
323
324
325
  <h3>The Bash Shell</h3>
  <p>
    Bash is a commonly-used shell that gives you the power to do simple
    tasks more quickly.
  </p>
326

François Michonneau's avatar
François Michonneau committed
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#shell-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#shell-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#shell-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="shell-windows">
        <a href="https://www.youtube.com/watch?v=339AEqk9c-8">Video Tutorial</a>
        <ol>
          <li>Download the Git for Windows <a href="https://git-for-windows.github.io/">installer</a>.</li>
          <li>Run the installer and follow the steps below:
            <ol>
              {% comment %} Git 2.18.0 Setup {% endcomment %}
              <li>
343
344
345
                Click on "Next" four times (two times if you've previously
                installed Git).  You don't need to change anything
                in the Information, location, components, and start menu screens.
François Michonneau's avatar
François Michonneau committed
346
347
              </li>
              <li>
348
                <strong>
349
                  Select "Use the nano editor by default" and click on "Next".
350
                </strong>
François Michonneau's avatar
François Michonneau committed
351
352
353
354
              </li>
              {% comment %} Adjusting your PATH environment {% endcomment %}
              <li>
                Keep "Use Git from the Windows Command Prompt" selected and click on "Next".
355
356
                If you forgot to do this programs that you need for the workshop will not work properly.
                If this happens rerun the installer and select the appropriate option.
François Michonneau's avatar
François Michonneau committed
357
358
359
360
361
              </li>
              {% comment %} Choosing the SSH executable {% endcomment %}
              <li>Click on "Next".</li>
              {% comment %} Configuring the line ending conversions {% endcomment %}
              <li>
bhjolly's avatar
bhjolly committed
362
                Keep "Checkout Windows-style, commit Unix-style line endings" selected and click on "Next".
François Michonneau's avatar
François Michonneau committed
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
              </li>
              {% comment %} Configuring the terminal emulator to use with Git Bash {% endcomment %}
              <li>
                <strong>
                  Select "Use Windows' default console window" and click on "Next".
                </strong>
              </li>
              {% comment %} Configuring experimental performance tweaks {% endcomment %}
              <li>Click on "Install".</li>
              {% comment %} Installing {% endcomment %}
              {% comment %} Completing the Git Setup Wizard {% endcomment %}
              <li>Click on "Finish".</li>
            </ol>
          </li>
          <li>
            If your "HOME" environment variable is not set (or you don't know what this is):
            <ol>
              <li>Open command prompt (Open Start Menu then type <code>cmd</code> and press [Enter])</li>
              <li>
                Type the following line into the command prompt window exactly as shown:
                <p><code>setx HOME "%USERPROFILE%"</code></p>
              </li>
              <li>Press [Enter], you should see <code>SUCCESS: Specified value was saved.</code></li>
              <li>Quit command prompt by typing <code>exit</code> then pressing [Enter]</li>
            </ol>
          </li>
        </ol>
        <p>This will provide you with both Git and Bash in the Git Bash program.</p>
      </article>
392
      <article role="tabpanel" class="tab-pane active" id="shell-macos">
François Michonneau's avatar
François Michonneau committed
393
394
395
396
397
398
399
400
401
402
403
        <p>
          The default shell in all versions of macOS is Bash, so no
          need to install anything.  You access Bash from the Terminal
          (found in
          <code>/Applications/Utilities</code>).
          See the Git installation <a href="https://www.youtube.com/watch?v=9LQhwETCdwY ">video tutorial</a>
          for an example on how to open the Terminal.
          You may want to keep
          Terminal in your dock for this workshop.
        </p>
      </article>
404
      <article role="tabpanel" class="tab-pane active" id="shell-linux">
François Michonneau's avatar
François Michonneau committed
405
406
407
408
409
410
411
        <p>
          The default shell is usually Bash, but if your
          machine is set up differently you can run it by opening a
          terminal and typing <code>bash</code>.  There is no need to
          install anything.
        </p>
      </article>
412
    </div>
413
  </div>
Raniere Silva's avatar
Raniere Silva committed
414
</div> {% comment %} End of 'shell' section. {% endcomment %}
415

Katrin Leinweber's avatar
Katrin Leinweber committed
416
<div id="git"> {% comment %} Start of 'Git' section. GitHub browser compatibility
François Michonneau's avatar
François Michonneau committed
417
  is given at https://help.github.com/articles/supported-browsers/{% endcomment %}
418
419
420
421
422
  <h3>Git</h3>
  <p>
    Git is a version control system that lets you track who made changes
    to what when and has options for easily updating a shared or public
    version of your code
423
    on <a href="https://github.com/">github.com</a>. You will need a
424
425
    <a href="https://help.github.com/articles/supported-browsers/">supported
    web browser</a>.
426
  </p>
427
428
  <p>
    You will need an account at <a href="https://github.com/">github.com</a>
Jan T. Kim's avatar
Jan T. Kim committed
429
430
    for parts of the Git lesson. Basic GitHub accounts are free. We encourage
    you to create a GitHub account if you don't have one already.
431
432
433
    Please consider what personal information you'd like to reveal. For
    example, you may want to review these
    <a href="https://help.github.com/articles/keeping-your-email-address-private/">instructions
François Michonneau's avatar
François Michonneau committed
434
      for keeping your email address private</a> provided at GitHub.
435
  </p>
436

François Michonneau's avatar
François Michonneau committed
437
438
439
440
441
442
443
444
445
446
447
448
449
450
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#git-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#git-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#git-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="git-windows">
        <p>
          Git should be installed on your computer as part of your Bash
          install (described above).
        </p>
      </article>
451
      <article role="tabpanel" class="tab-pane active" id="git-macos">
François Michonneau's avatar
François Michonneau committed
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
        <a href="https://www.youtube.com/watch?v=9LQhwETCdwY ">Video Tutorial</a>
        <p>
          <strong>For OS X 10.9 and higher</strong>, install Git for Mac
          by downloading and running the most recent "mavericks" installer from
          <a href="http://sourceforge.net/projects/git-osx-installer/files/">this list</a>.
          Because this installer is not signed by the developer, you may have to
          right click (control click) on the .pkg file, click Open, and click
          Open on the pop up window. 
          After installing Git, there will not be anything in your <code>/Applications</code> folder,
          as Git is a command line program.
          <strong>For older versions of OS X (10.5-10.8)</strong> use the
          most recent available installer labelled "snow-leopard"
          <a href="http://sourceforge.net/projects/git-osx-installer/files/">available here</a>.
        </p>
      </article>
467
      <article role="tabpanel" class="tab-pane active" id="git-linux">
François Michonneau's avatar
François Michonneau committed
468
469
470
471
472
473
474
        <p>
          If Git is not already available on your machine you can try to
          install it via your distro's package manager. For Debian/Ubuntu run
          <code>sudo apt-get install git</code> and for Fedora run
          <code>sudo dnf install git</code>.
        </p>
      </article>
475
    </div>
476
  </div>
Raniere Silva's avatar
Raniere Silva committed
477
</div> {% comment %} End of 'Git' section. {% endcomment %}
478

Raniere Silva's avatar
Raniere Silva committed
479
<div id="editor"> {% comment %} Start of 'editor' section. {% endcomment %}
Raniere Silva's avatar
Raniere Silva committed
480
481
482
483
484
  <h3>Text Editor</h3>

  <p>
    When you're writing code, it's nice to have a text editor that is
    optimized for writing code, with features like automatic
485
    color-coding of key words. The default text editor on macOS and
Raniere Silva's avatar
Raniere Silva committed
486
    Linux is usually set to Vim, which is not famous for being
487
    intuitive. If you accidentally find yourself stuck in it, hit
Raniere Silva's avatar
Raniere Silva committed
488
    the <kbd>Esc</kbd> key, followed by <kbd>:</kbd>+<kbd>Q</kbd>+<kbd>!</kbd> 
489
490
    (colon, lower-case 'q', exclamation mark), then hitting <kbd>Return</kbd> to 
    return to the shell.
Raniere Silva's avatar
Raniere Silva committed
491
492
  </p>

François Michonneau's avatar
François Michonneau committed
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#editor-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#editor-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#editor-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="editor-windows">
        <p>
          nano is a basic editor and the default that instructors use in the workshop.
          It is installed along with Git.
        </p>
        <p>
          Others editors that you can use are
          <a href="https://notepad-plus-plus.org/">Notepad++</a> or
          <a href="https://www.sublimetext.com/">Sublime Text</a>.
          <strong>Be aware that you must
            add its installation directory to your system path.</strong>
          Please ask your instructor to help you do this.
        </p>
      </article>
515
      <article role="tabpanel" class="tab-pane active" id="editor-macos">
François Michonneau's avatar
François Michonneau committed
516
517
518
519
520
521
522
523
524
525
526
527
        <p>
          nano is a basic editor and the default that instructors use in the workshop.
          See the Git installation <a href="https://www.youtube.com/watch?v=9LQhwETCdwY ">video tutorial</a>
          for an example on how to open nano.
          It should be pre-installed.
        </p>
        <p>
          Others editors that you can use are
          <a href="https://www.barebones.com/products/bbedit/">BBEdit</a> or
          <a href="https://www.sublimetext.com/">Sublime Text</a>.
        </p>
      </article>
Kevin Ernst's avatar
Kevin Ernst committed
528
      <article role="tabpanel" class="tab-pane active" id="editor-linux">
François Michonneau's avatar
François Michonneau committed
529
530
531
532
533
534
535
536
537
538
539
        <p>
          nano is a basic editor and the default that instructors use in the workshop.
          It should be pre-installed.
        </p>
        <p>
          Others editors that you can use are
          <a href="https://wiki.gnome.org/Apps/Gedit">Gedit</a>,
          <a href="https://kate-editor.org/">Kate</a> or
          <a href="https://www.sublimetext.com/">Sublime Text</a>.
        </p>
      </article>
Raniere Silva's avatar
Raniere Silva committed
540
541
    </div>
  </div>
Raniere Silva's avatar
Raniere Silva committed
542
</div> {% comment %} End of 'editor' section. {% endcomment %}
Raniere Silva's avatar
Raniere Silva committed
543

Raniere Silva's avatar
Raniere Silva committed
544
<div id="python"> {% comment %} Start of 'Python' section. Remove the third paragraph if
François Michonneau's avatar
François Michonneau committed
545
546
547
  the workshop will teach Python using something other than
  the Jupyter notebook.
  Details at https://jupyter-notebook.readthedocs.io/en/stable/notebook.html#browser-compatibility {% endcomment %}
548
  <h3>Python</h3>
549

550
  <p>
Katrin Leinweber's avatar
Katrin Leinweber committed
551
    <a href="https://python.org">Python</a> is a popular language for
552
553
    research computing, and great for general-purpose programming as
    well.  Installing all of its research packages individually can be
554
    a bit difficult, so we recommend
555
    <a href="https://www.anaconda.com/distribution/">Anaconda</a>,
556
    an all-in-one installer.
557
  </p>
558

François Michonneau's avatar
François Michonneau committed
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
  <p>
    Regardless of how you choose to install it,
    <strong>please make sure you install Python version 3.x</strong>
    (e.g., 3.6 is fine).
  </p>

  <p>
    We will teach Python using the <a href="https://jupyter.org/">Jupyter notebook</a>,
    a programming environment that runs in a web browser. For this to work you will need a reasonably
    up-to-date browser. The current versions of the Chrome, Safari and
    Firefox browsers are all
    <a href="https://jupyter-notebook.readthedocs.io/en/stable/notebook.html#browser-compatibility">supported</a>
    (some older browsers, including Internet Explorer version 9
    and below, are not).
  </p>

  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#python-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#python-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#python-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="python-windows">
        <a href="https://www.youtube.com/watch?v=xxQ0mzZ8UvA">Video Tutorial</a>
        <ol>
          <li>Open <a href="https://www.anaconda.com/download/#windows">https://www.anaconda.com/download/#windows</a> with your web browser.</li>
          <li>Download the Python 3 installer for Windows.</li>
          <li>Install Python 3 using all of the defaults for installation <em>except</em> make sure to check <strong>Add Anaconda to my PATH environment variable</strong>.</li>
        </ol>
      </article>
591
      <article role="tabpanel" class="tab-pane active" id="python-macos">
François Michonneau's avatar
François Michonneau committed
592
593
594
595
596
597
598
        <a href="https://www.youtube.com/watch?v=TcSAln46u9U">Video Tutorial</a>
        <ol>
          <li>Open <a href="https://www.anaconda.com/download/#macos">https://www.anaconda.com/download/#macos</a> with your web browser.</li>
          <li>Download the Python 3 installer for OS X.</li>
          <li>Install Python 3 using all of the defaults for installation.</li>
        </ol>
      </article>
599
      <article role="tabpanel" class="tab-pane active" id="python-linux">
François Michonneau's avatar
François Michonneau committed
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
        <ol>
          <li>Open <a href="https://www.anaconda.com/download/#linux">https://www.anaconda.com/download/#linux</a> with your web browser.</li>
          <li>Download the Python 3 installer for Linux.<br>
            (The installation requires using the shell. If you aren't
            comfortable doing the installation yourself
            stop here and request help at the workshop.)
          </li>
          <li>
            Open a terminal window.
          </li>
          <li>
            Type <pre>bash Anaconda3-</pre> and then press
            <kbd>Tab</kbd>. The name of the file you just downloaded should
            appear. If it does not, navigate to the folder where you
            downloaded the file, for example with:
            <pre>cd Downloads</pre>
            Then, try again.
          </li>
          <li>
            Press <kbd>Return</kbd>. You will follow the text-only prompts. To move through
            the text, press <kbd>Spacebar</kbd>. Type <code>yes</code> and
            press enter to approve the license. Press enter to approve the
            default location for the files. Type <code>yes</code> and
            press enter to prepend Anaconda to your <code>PATH</code>
            (this makes the Anaconda distribution the default Python).
          </li>
          <li>
            Close the terminal window.
          </li>
        </ol>
      </article>
631
    </div>
632
  </div>
François Michonneau's avatar
François Michonneau committed
633
  {% comment %}
634
  <p>
François Michonneau's avatar
François Michonneau committed
635
636
637
    Once you are done installing the software listed above,
    please go to <a href="setup/index.html">this page</a>,
    which has instructions on how to test that everything was installed correctly.
638
  </p>
François Michonneau's avatar
François Michonneau committed
639
  {% endcomment %}
Raniere Silva's avatar
Raniere Silva committed
640
</div> {% comment %} End of 'Python' section. {% endcomment %}
641

Raniere Silva's avatar
Raniere Silva committed
642
<div id="r"> {% comment %} Start of 'R' section. {% endcomment %}
643
  <h3>R</h3>
644

645
  <p>
Katrin Leinweber's avatar
Katrin Leinweber committed
646
    <a href="https://www.r-project.org">R</a> is a programming language
647
648
    that is especially powerful for data exploration, visualization, and
    statistical analysis. To interact with R, we use
649
    <a href="https://www.rstudio.com/">RStudio</a>.
650
  </p>
651

François Michonneau's avatar
François Michonneau committed
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#rstats-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#rstats-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#rstats-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="rstats-windows">
        <a href="https://www.youtube.com/watch?v=q0PjTAylwoU">Video Tutorial</a>
        <p>
          Install R by downloading and running
          <a href="https://cran.r-project.org/bin/windows/base/release.htm">this .exe file</a>
          from <a href="https://cran.r-project.org/index.html">CRAN</a>.
          Also, please install the
          <a href="https://www.rstudio.com/products/rstudio/download/#download">RStudio IDE</a>.
          Note that if you have separate user and admin accounts, you should run the 
          installers as administrator (right-click on .exe file and select "Run as 
          administrator" instead of double-clicking). Otherwise problems may occur later, 
          for example when installing R packages.
        </p>
      </article>
674
      <article role="tabpanel" class="tab-pane active" id="rstats-macos">
François Michonneau's avatar
François Michonneau committed
675
676
677
678
679
680
681
682
683
        <a href="https://www.youtube.com/watch?v=5-ly3kyxwEg">Video Tutorial</a>
        <p>
          Install R by downloading and running
          <a href="https://cran.r-project.org/bin/macosx/R-latest.pkg">this .pkg file</a>
          from <a href="https://cran.r-project.org/index.html">CRAN</a>.
          Also, please install the
          <a href="https://www.rstudio.com/products/rstudio/download/#download">RStudio IDE</a>.
        </p>
      </article>
684
      <article role="tabpanel" class="tab-pane active" id="rstats-linux">
François Michonneau's avatar
François Michonneau committed
685
686
687
688
689
690
691
692
693
        <p>
          You can download the binary files for your distribution
          from <a href="https://cran.r-project.org/index.html">CRAN</a>. Or
          you can use your package manager (e.g. for Debian/Ubuntu
          run <code>sudo apt-get install r-base</code> and for Fedora run
          <code>sudo dnf install R</code>).  Also, please install the
          <a href="https://www.rstudio.com/products/rstudio/download/#download">RStudio IDE</a>.
        </p>
      </article>
694
    </div>
695
  </div>
Raniere Silva's avatar
Raniere Silva committed
696
</div> {% comment %} End of 'R' section. {% endcomment %}
697

Raniere Silva's avatar
Raniere Silva committed
698
<div id="sql"> {% comment %} Start of 'SQLite' section. {% endcomment %}
699
  <h3>SQLite</h3>
700

701
702
703
  <p>
    SQL is a specialized programming language used with databases.  We
    use a simple database manager called
Katrin Leinweber's avatar
Katrin Leinweber committed
704
    <a href="https://www.sqlite.org/">SQLite</a> in our lessons.
705
  </p>
706

François Michonneau's avatar
François Michonneau committed
707
708
709
710
711
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#sql-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#sql-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#sql-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
712
713
714
      {% if page.carpentry != 'dc' %}
      <li role="presentation"><a data-os="Web" href="#sql-web" aria-controls="Linux" role="tab" data-toggle="tab">Web</a></li>
      {% endif %}
François Michonneau's avatar
François Michonneau committed
715
    </ul>
716
    {% if page.carpentry == 'dc' %}
François Michonneau's avatar
François Michonneau committed
717
718
719
    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="sql-windows">
        <p>
720
          Visit <a href="https://sqlitebrowser.org/dl/">SqliteBrowser</a> and download and install it. Version 3.11.0 or greater.
François Michonneau's avatar
François Michonneau committed
721
722
        </p>
      </article>
723
      <article role="tabpanel" class="tab-pane active" id="sql-macos">
724
725
726
727
        <p>
          Visit <a href="https://sqlitebrowser.org/dl/">SqliteBrowser</a> and download and install it. Version 3.11.0 or greater.
        </p>
      </article>
728
      <article role="tabpanel" class="tab-pane active" id="sql-linux">
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
        <p>
          Visit <a href="https://sqlitebrowser.org/dl/">SqliteBrowser</a> and download and install it. Version 3.11.0 or greater.
        </p>
      </article>
      
    </div>
    {%else%}
    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="sql-windows">
        <p>
          <ul>
            <li>Run git-bash from the start menu</li>
            <li>Copy the following <code>curl {{site.url}}{{site.baseurl}}/getsql.sh | bash</code></li>
            <li>Paste it into the window that git bash opened. If you're unsure, ask an instructor for help</li>
            <li>You should see something like <code>3.27.2 2019-02-25 16:06:06 ...</code></li>
          </ul>
            
          <p>If you want to do this manually, download <a href="https://www.sqlite.org/2019/sqlite-tools-win32-x86-3270200.zip">sqlite3</a>, make a bin directory in the user's home directory, unzip sqlite3, move it into the bin directory, and then add the bin directory to the path.</p>

        </p>
      </article>
750
      <article role="tabpanel" class="tab-pane active" id="sql-macos">
François Michonneau's avatar
François Michonneau committed
751
752
753
754
        <p>
          SQLite comes pre-installed on macOS.
        </p>
      </article>
755
      <article role="tabpanel" class="tab-pane active" id="sql-linux">
François Michonneau's avatar
François Michonneau committed
756
757
758
759
        <p>
          SQLite comes pre-installed on Linux.
        </p>
      </article>
760
      <article role="tabpanel" class="tab-pane active" id="sql-web">
761
762
763
764
765
766
767
768
769
        <p>
          <ul>
            <li>In case of problems: register for an account at <a href="http://pythonanywhere.com/">Python Anywhere</a></li>
            <li>Download <a href="http://swcarpentry.github.io/sql-novice-survey/files/survey.db">survey.db</a></li>
            <li>Click on files and upload survey.db</li>
            <li>Click on dashboard and Choose new console <code>$ bash</code></li>
            </ul>
        </p>
      </article>
770
    </div>
771
      {%endif%}
772
  </div>
773
774

  <p><strong>If you installed Anaconda, it also has a copy of SQLite
François Michonneau's avatar
François Michonneau committed
775
776
      <a href="https://github.com/ContinuumIO/anaconda-issues/issues/307">without support to <code>readline</code></a>.
      Instructors will provide a workaround for it if needed.</strong></p>
Raniere Silva's avatar
Raniere Silva committed
777
</div> {% comment %} End of 'SQLite' section. {% endcomment %}
778

Raniere Silva's avatar
Raniere Silva committed
779
<div id="openrefine"> {% comment %} Start of 'OpenRefine' section. {% endcomment %}
780
781
782
783
784
785
786
  <h3>OpenRefine</h3>
  <p>
    For this lesson you will need <em>OpenRefine</em> and a
    web browser. <em>Note:</em> this is a Java program that runs on your machine (not in the cloud).
    It runs inside a web browser, but no web connection is needed.
  </p>

François Michonneau's avatar
François Michonneau committed
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
  <div>
    <ul class="nav nav-tabs nav-justified" role="tablist">
      <li role="presentation" class="active"><a data-os="windows" href="#openrefine-windows" aria-controls="Windows" role="tab" data-toggle="tab">Windows</a></li>
      <li role="presentation"><a data-os="macos" href="#openrefine-macos" aria-controls="MacOS" role="tab" data-toggle="tab">MacOS</a></li>
      <li role="presentation"><a data-os="linux" href="#openrefine-linux" aria-controls="Linux" role="tab" data-toggle="tab">Linux</a></li>
    </ul>

    <div class="tab-content">
      <article role="tabpanel" class="tab-pane active" id="openrefine-windows">
        <p>
          Check that you have either the Firefox or the Chrome browser installed and set as your default browser.
          <strong>OpenRefine runs in your default browser.</strong>
          It will not run correctly in Internet Explorer.
        </p>
        <p>Download software from <a href="http://openrefine.org/">http://openrefine.org/</a></p>
        <p>Create a new directory called OpenRefine.</p>
        <p>Unzip the downloaded file into the OpenRefine directory by right-clicking and selecting "Extract ...". </p>
        <p>Go to your newly created OpenRefine directory.</p>
        <p>Launch OpenRefine by clicking <code>openrefine.exe</code> (this will launch a command prompt window, but you can ignore that - just wait for OpenRefine to open in the browser).</p>
        <p>If you are using a different browser, or if OpenRefine does not automatically open for you, point your browser at <a href="http://127.0.0.1:3333/">http://127.0.0.1:3333/</a> or <a href="http://localhost:3333">http://localhost:3333</a> to use the program.</p>
      </article>
      <article role="tabpanel" class="tab-pane active" id="openrefine-macos">
        <p>Check that you have either the Firefox or the Chrome browser installed and set as your default browser. <strong>OpenRefine runs in your default browser.</strong> It may not run correctly in Safari.</p>
        <p>Download software from <a href="http://openrefine.org/">http://openrefine.org/</a>.</p>
        <p>Create a new directory called OpenRefine.</p>
        <p>Unzip the downloaded file into the OpenRefine directory by double-clicking it.</p>
        <p>Go to your newly created OpenRefine directory.</p>
        <p>Launch OpenRefine by dragging the icon into the Applications folder.</p>
        <p>Use <code>Ctrl-click/Open ... </code> to launch it.</p>
        <p>If you are using a different browser, or if OpenRefine does not automatically open for you, point your browser at <a href="http://127.0.0.1:3333/">http://127.0.0.1:3333/</a> or <a href="http://localhost:3333">http://localhost:3333</a> to use the program.</p>
      </article>
      <article role="tabpanel" class="tab-pane active" id="openrefine-linux">
        <p>Check that you have either the Firefox or the Chrome browser installed and set as your default browser. <strong>OpenRefine runs in your default browser.</strong></p>
        <p>Download software from <a href="http://openrefine.org/">http://openrefine.org/</a>.</p>
        <p>Make a directory called OpenRefine.</p>
        <p>Unzip the downloaded file into the OpenRefine directory.</p>
        <p>Go to your newly created OpenRefine directory.</p>
        <p>Launch OpenRefine by entering <code>./refine</code> into the terminal within the OpenRefine directory.</p>
        <p>If you are using a different browser, or if OpenRefine does not automatically open for you, point your browser at <a href="http://127.0.0.1:3333/">http://127.0.0.1:3333/</a> or <a href="http://localhost:3333">http://localhost:3333</a> to use the program.</p>
Nicola Soranzo's avatar
Nicola Soranzo committed
826
      </article>
Nicola Soranzo's avatar
Nicola Soranzo committed
827
828
    </div>
  </div>
Raniere Silva's avatar
Raniere Silva committed
829
</div> {% comment %} End of 'OpenRefine' section. {% endcomment %}
830

Raniere Silva's avatar
Raniere Silva committed
831
{% comment %}
832
<div id="vm">
833
  <h3>Virtual Machine</h3>
834

835
836
837
838
839
840
841
842
843
844
  <p>
    Some instructors prefer to have learners use a virtual machine (VM)
    rather than install software on their own computers.  If your
    instructors have chosen to do this, please:
  </p>
  <ol>
    <li>
      Install <a href="https://www.virtualbox.org/">VirtualBox</a>.
    </li>
    <li>
845
      Download our <a href="{{site.swc_vm}}">VM image</a>.
846
847
848
849
850
851
852
853
854
      <strong>Warning:</strong> this file is 1.7 GByte, so please
      download it <em>before</em> coming to your workshop.
    </li>
    <li>
      Load the VM into VirtualBox by selecting "Import Appliance" and
      loading the <code>.ova</code> file.
    </li>
  </ol>
</div>
Raniere Silva's avatar
Raniere Silva committed
855
{% endcomment %}