This repository has been archived by the owner on Jan 3, 2018. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 133
/
Copy pathaudience.html
189 lines (186 loc) · 8.01 KB
/
audience.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
---
layout: base
root: ..
title: Our Audience
nocomments: 1
---
<section>
<h2>Bhadra Basepair</h2>
<div class="media">
<img class="media-object pull-left" src="{{page.root}}/img/cartoons/bhadra_basepair_179x237.png" alt="Bhadra Basepair" />
<div class="media-body">
<p>
Bhadra Basepair received a B.Sc. in biochemistry five years ago.
She has worked since then for Genes'R'Us,
a biotech firm with labs in four countries.
She did a Java programming course as a freshman,
and a bioinformatics course using R as a senior,
but has no other training in programming.
</p>
<p>
Bhadra and her colleagues are developing fuzzy pattern-matching algorithms
for finding similarities between DNA records in standard databases.
To help other Genes'R'Us researchers,
and to test her group's heuristics,
Bhadra runs queries that people send her by email.
These queries arrive as the subject lines of messages,
in their bodies,
as attachments,
or as links to pages on the company's firewalled file-sharing site.
Bhadra saves them in files called <code>search/a.in</code>,
<code>search/b.in</code>, and so on,
then edits them to add query parameters.
(She almost never accidentally overwrites one query with another…)
</p>
<p>
Once a week,
Bhadra runs all of the queries that have piled up
to create output files with matching names like <code>search/a.out</code>,
then emails those back to whoever sent the original query.
(She almost never sends someone the wrong file…)
Once every couple of months
she creates another directory called something like <code>may2013</code>
and copies the input and output files she has accumulated into it.
She would eventually like to do some statistical analysis on these,
but hasn't been able to find time.
</p>
<p>
Software Carpentry will teach Bhadra how to automate this task
by writing simple scripts to retrieve, process, and reply to email queries.
Those scripts will automatically record inputs and outputs
and update a web page every day
to show her and her colleagues
how their algorithms are doing.
</p>
</div>
</div>
</section>
<section>
<h2>Fan Fullerene</h2>
<div class="media">
<img class="media-object pull-left" src="{{page.root}}/img/cartoons/fan_fullerene_182x254.png" alt="Fan Fullerene" />
<div class="media-body">
<p>
Fan Fullerene is a graduate student in chemistry
who is working as a lab technician to help cover his costs.
His only programming experience is a general first-year introduction to computational science
using Python.
</p>
<p>
Fan's supervisor is studying the production of fullerenes
(also known as "buckyballs").
Each set of experiments involves testing a sample
at 20 different temperatures and 15 different pressures.
Using a machine borrowed from a collaborating lab,
Fan can run all temperature and pressure combinations in one job,
but must upload a parameter file to the machine to do this.
The temperatures and pressures to be used vary from sample to sample,
so Fan now has two dozen different parameter files,
each containing 300 lines of control information
that he fervently hopes is correct.
</p>
<p>
The machine sends these files to Fan
once the experiment is completed.
Fan analyzes them by opening Excel,
copying and pasting the data into a spreadsheet,
then creating a chart using the chart wizard.
He then saves the chart as a PNG file on the group's web site,
along with the original data file.
</p>
<p>
Software Carpentry will teach Fan how to write programs
to generate parameter files and analyze experimental results,
and how to track the provenance of the data he is working with
so that scientists can trace backward from the final charts
to the raw data they represent.
It will also teach him how to use version control systems to manage changes
to his code.
</p>
</div>
</div>
</section>
<section>
<h2>Helen Helmet</h2>
<div class="media">
<img class="media-object pull-left" src="{{page.root}}/img/cartoons/helen_helmet_156x217.png" alt="Helen Helmet" />
<div class="media-body">
<p>
Helen Helmet,
a Ph.D. student in mechanical engineering,
is currently doing a six-month internship at an engineering firm
that makes carbon-fiber helmets for firefighters and other emergency service personnel.
Her undergraduate courses included an introduction to scientific computing using MATLAB
and a robotics course that used C.
She learned some Python during a co-op placement between her junior and senior years,
and used it again in a graduate course on finite elements.
</p>
<p>
Helen's task is to model the non-combustive thermal degradation
(otherwise known as "melting")
of candidate materials.
Her starting point is a 4,000-line Python program
that her supervisor wrote six years ago.
She is currently trying to replace the mesh deformation functions
with new ones that can handle non-uniform meshes.
She sometimes writes, runs, and deletes sections of code
three or four times before she is satisfied.
</p>
<p>
Helen tests her program by writing
the total heat content of the mesh at each time step
to a file.
She then loads this data into a separate Python program
to graph the percentage differences between these values
and the ones produced by the original program for six sample problems.
Right now,
the difference is less than 5% for five test cases,
but 30% for the sixth.
Helen has added hundreds of <code>print</code> statements to the program
to try to track down the bug,
but still doesn't know where it is.
</p>
<p>
Software Carpentry will teach Helen
to develop and modify programs in a disciplined way,
to debug programs systematically, and
to use tests to ensure that new code doesn't break old code.
</p>
</div>
</div>
</section>
<section>
<h2>Mehrdad Mapping</h2>
<div class="media">
<img class="media-object pull-left" src="{{page.root}}/img/cartoons/mehrdad_mapping_187x242.png" alt="Mehrdad Mapping" />
<div class="media-body">
<p>
Mehrdad Mapping is a graduate student
studying bark beetle infestations in the Canadian taiga.
He has never taken a programming course,
but used SAS in an undergraduate statistics course.
</p>
<p>
For the last three years,
Mehrdad has spent six weeks every autumn
counting beetle bores in pine trees in the Yukon and Alaska.
He now has a spreadsheet with 5,000 entries,
each recording the location and time of a measurement,
the number of bores found,
the moisture and acidity of the soil,
and several other values.
He also has two hundred text files containing 7,000 measurements
that his supervisor made in the same regions in the 1970s and 1980s.
His task now is to clean up and analyze both sets of measurements
so that he can start to correlate changes in bark beetle distribution
with changes in climate.
</p>
<p>
Software Carpentry will teach Mehrdad how to standardize, merge, and set up basic analyses for these data sets,
and how to produce the figures and tables he needs for his papers
with just a few lines of code.
In addition, it will show him how to use web services to generate and share maps of these data with colleagues.
</p>
</div>
</div>
</section>