-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsample-logs-the-secret-to-managing-multi-person-projects.html
183 lines (175 loc) · 18.4 KB
/
sample-logs-the-secret-to-managing-multi-person-projects.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
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title> Sample logs - the secret to managing multi-person projects
</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="https://jrsmith3.github.io/theme/css/normalize.css">
<link href='//fonts.googleapis.com/css?family=Lato' rel='stylesheet' type='text/css'>
<link href='//fonts.googleapis.com/css?family=Oswald' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://jrsmith3.github.io/theme/css/font-awesome.min.css">
<link rel="stylesheet" href="https://jrsmith3.github.io/theme/css/main.css">
<link rel="stylesheet" href="https://jrsmith3.github.io/theme/css/blog.css">
<link rel="stylesheet" href="https://jrsmith3.github.io/theme/css/github.css">
<link href="https://jrsmith3.github.io/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="Generic Surname Atom Feed" />
<script src="https://jrsmith3.github.io/theme/js/vendor/modernizr-2.6.2.min.js"></script>
</head>
<body>
<!--[if lt IE 7]>
<p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
<![endif]-->
<div id="wrapper">
<header id="sidebar" class="side-shadow">
<hgroup id="site-header">
<a id="site-title" href="https://jrsmith3.github.io"><h1><i class="icon-coffee"></i> Generic Surname</h1></a>
<p id="site-desc"></p>
</hgroup>
<nav>
<ul id="nav-links">
<li><a href="https://jrsmith3.github.io/pages/about.html">About</a></li>
<li><a href="https://jrsmith3.github.io/pages/contact.html">Contact</a></li>
<li><a href="https://jrsmith3.github.io/pages/curriculum-vitae.html">Curriculum Vitae</a></li>
</ul>
</nav>
<footer id="site-info">
<p>
Proudly powered by <a href="http://getpelican.com/" target="pelican">Pelican</a> and <a href="http://python.org/" target="python">Python</a>. Theme by <a href="https://github.com/hdra/pelican-cait" target="github">hndr</a>.
</p>
<p>
Textures by <a href="http://subtlepatterns.com/" target="subtlepatterns">Subtle Pattern</a>. Font Awesome by <a href="http://fortawesome.github.io/Font-Awesome/" target="github">Dave Grandy</a>.
</p>
</footer></header>
<div id="post-container">
<ol id="post-list">
<li>
<article class="post-entry">
<header class="entry-header">
<time class="post-time" datetime="2014-04-02T22:55:00-04:00" pubdate>
Wed 02 April 2014
</time>
<a href="https://jrsmith3.github.io/sample-logs-the-secret-to-managing-multi-person-projects.html" rel="bookmark"><h1>Sample logs - the secret to managing multi-person projects</h1></a>
</header>
<section class="post-content">
<!-- Having embedded CSS is a hack, but I want the images to be side-by-side.
I stole this CSS from: https://ghost.org/forum/using-ghost/1931-markdown-inline-images/
-->
<style type="text/css">
#myImages {
width: auto; //need to keep div to the parent width so the text doesn't slide up
margin-left: auto;
margin-right: auto;
}
#myImages img {
display: inline;
}
</style>
<h1>Summary</h1>
<ul>
<li>A <a href="https://github.com/jrsmith3/sample_log/releases/download/2014-11-19/sample_log.pdf">sample log</a> is a record of all the events a sample experiences.</li>
<li>Sample logs are necessary, especially if sample processing/analysis steps are preformed by different people.</li>
<li>The fundamental unit of a sample log is an entry.</li>
<li>Entries should be recorded at the time of event, not before or after.</li>
<li>Each entry should record four pieces of information: <ul>
<li>A date/time stamp in <a href="https://en.wikipedia.org/wiki/ISO_8601">YYYY-MM-DD HH:MM format</a> where HH:MM is in 24h format.</li>
<li>The event name.</li>
<li>A brief description.</li>
<li>Cross-references -- particularly lab notebooks and computer data files.</li>
</ul>
</li>
<li>Sample logs should be stored alphabetically according to sample name in <a href="http://www.amazon.com/exec/obidos/ASIN/B0006HVEI4">three-ring 1" binders</a> in a central location.</li>
<li>When moving between people and experiments, sample logs should be placed in <a href="http://www.amazon.com/exec/obidos/ASIN/B00006IC89">plastic page protectors</a> along with the sample in its case.</li>
</ul>
<h1>Introduction</h1>
<p>A sample log is a record of all the events that a sample experiences. Sample logs are just as necessary as lab notebooks because they capture a set of information that simply isn't captured in a lab notebook. The necessity of such a record is particularly clear in projects where samples undergo process and analysis steps by many different people. Samples tend to move from place to place and from person to person; they have complex and eventful lifecycles.</p>
<div id = "myImages">
<a href="images/samplelog_jrs0019_p1.png"> <img src="images/samplelog_jrs0019_p1_small.png" /> </a> <a href="images/samplelog_jrs0019_p2.png"> <img src="images/samplelog_jrs0019_p2_small.png" /> </a>
</div>
<p>You may think, "What purpose does a sample log serve? Isn't this information contained in lab notebooks?" In contrast to a lab notbook, a sample log won't contain a long narrative description of an experiment; it only contains a list of brief records of every event the sample experiences. Each entry contains the bare minimum amount of information with generous cross-referencing to the relevant lab notebooks and computer data files. In this way a reader of the sample log can comprehend the entire lifecycle of a sample, and the reader can follow the cross-references to find more details about particular events. There is not another source of information that provides these features. </p>
<p>Sample logs and lab notebooks are good compliments to one another since they contain different types of information and serve different purposes -- the information in one is enhanced by the information in the other. In principle, a sample log could be constructed from the entries in a lab notebook, but in practice this task would be very time consuming -- especially since the records are likely split over multiple lab notebooks belonging to multiple people.</p>
<p>Sample logs are composed of two components: metadata and the list of entries.</p>
<h1>Sample log metadata</h1>
<p>The metadata section contains information about the sample. Obviously, the sample log should include the sample's name. The sample's name should be unique (a method for choosing unique sample names will appear in a later post). Using unique names for samples gives you the added bonus of getting a unique name for your sample log.</p>
<p>Beyond sample name, required metadata depends on the needs of individual labs. I've found it useful to record the size of the sample, the substrate, the manufacturer/supplier, and the manufacturer's metadata (lot number, etc.). Doping, structure, etc. is appropriate to record here.</p>
<p><a href="images/samplelog_jrs0070_p1.png"><img alt="Sample Log JRS0070, p1" src="images/samplelog_jrs0070_p1_small.png" title="Sample Log JRS0070, p1" /></a></p>
<h1>Sample log entries</h1>
<p>Entries are the fundamental unit of the sample log. Every time the sample experiences an event, an entry should be recorded. Each entry should have four components: date/time stamp, event name, brief description, and cross-reference. Entries should be recorded in pen. Each entry should be recorded on a new line.</p>
<div id = "myImages">
<a href="images/samplelog_jrs0019_p1.png"> <img src="images/samplelog_jrs0019_p1_small.png" /> </a> <a href="images/samplelog_jrs0019_p2.png"> <img src="images/samplelog_jrs0019_p2_small.png" /> </a>
</div>
<h2>Date/time stamp</h2>
<p>Each entry should have a date and time in <a href="http://en.wikipedia.org/wiki/ISO_8601">YYYY-MM-DD HH:MM format</a>. The time should be in 24-hour format which eliminates ambiguity. It is equally plausible that "8:45" refers to something that happened in the morning or the evening. On the other hand, "20:45" can only mean the evening.</p>
<h2>Event name</h2>
<p>The entry should name the event. Obviously, events that change the nature of the sample should be recorded: material deposition, material removal, annealing, and things of that sort. Additionally, experiments that characterize the sample should also be recorded: e.g. <a href="http://en.wikipedia.org/wiki/X-ray_photoelectron_spectroscopy">XPS</a>, <a href="http://en.wikipedia.org/wiki/atomic_force_microscope">AFM</a>, <a href="http://en.wikipedia.org/wiki/x-ray_diffraction">XRD</a>, I-V characterization of devices, etc. Third, it is generally useful to record the location of the sample: mounting to a sample holder, loading and unloading into an instrument, etc.</p>
<h2>Event description</h2>
<p>Every entry should also include any necessary, but brief, description. The description should not go into great detail about the experiment (detail should be recorded in the lab notebook), but it is sometimes useful to annotate the difference between events. For example, if the event is that the sample was loaded, the description would be the instrument. If the event is AFM is performed on the sample, the description might be the scan size (e.g. 1μm × 1μm). There isn't a hard and fast rule for what info should be recorded as the description, but its more based on the experience of the person writing things down.</p>
<h2>Cross-reference</h2>
<p>Finally, the records should have one or more cross-references, if applicable. Cross-references usually point to a page in a lab notebook or a filename. Since your lab notebook has a <a href="https://jrsmith3.github.io/http://localhost:8000/effective-lab-notebooks.html">unique name</a>, the cross-reference might look something like <code>JRS Lab Notebook 2014-02-27 p14</code>. If the event you are recording results in a computer data file, the cross-reference to the <a href="https://jrsmith3.github.io/naming-files-uniquely-to-reduce-confusion.html">uniquely named</a> computer file might look like <code>20140217-2355_stm_0001_jrs.dat</code>. </p>
<p>Many times, an entry will have multiple cross-references. Put each cross-reference on a new line.</p>
<p><a href="images/samplelog_jrs0075_p3_2011-02-05_18-55.png"><img alt="Sample Log JRS0075, p3" src="images/samplelog_jrs0075_p3_2011-02-05_18-55_small.png" title="Sample Log JRS0075, p3" /></a></p>
<p>There are some events that probably don't require a reference. For example, loading a sample into an instrument won't likely have a reference unless there was some unusual circumstance associated with it, in which case the details should be recorded in a lab notebook and the reference noted on the sample log. </p>
<h1>When should a new sample log be created vs. a new entry in an existing log?</h1>
<p>A sample log should be started every time a sample is created. In my experience, it is best to consider each new individual piece of material as a unique sample. From this definition, there are only two events that would result in creating a new sample log:</p>
<ul>
<li>Taking a new wafer out of the package from the manufacterer.</li>
<li>Dicing/cleaving an existing wafer.</li>
</ul>
<p>All other semiconductor processing and analysis to an existing sample would simply result in entries added to that sample's log. Examples of typical semiconductor processing are:</p>
<ul>
<li>Metal deposition via evaporation or sputtering.</li>
<li>Wet etch.</li>
<li>Plasma/RIE/dry etch.</li>
<li>PECVD of dielectric.</li>
<li>Lithographic patterning.</li>
<li>Annealing.</li>
<li>Etc.</li>
</ul>
<p>Note also that a single sample can contain many devices. You can imagine a photolithography mask with tens of Schottky diodes patterned on a single 10mm x 10mm die. The die would have its own sample log; C-V measurements done on an individual diode would generate an entry in that sample's log.</p>
<h1>Does this advice apply to your lab?</h1>
<p>What follows is a list of tips based on my experience working on projects at the intersection of device physics, surface science, materials science, and electrical engineering. I usually work with the typical materials science samples: mainly semiconductor wafers (Si, SiC, GaN) or insulating wafers (sapphire). I usually deal with some surface science analysis like XPS, AES, LEED, STM, or AFM. I also deal with processing steps like photolithography and metallization and analysis of fabricated devices like IV and CV measurements or microanalysis via SEM or EBIC. Samples usually start as 2" or 4" wafers and then are diced into smaller pieces during processing. If your work isn't based on wafers like mine, this approach may not apply. Also, my experience is in research science and not industrial process engineering or fab. I know the advice I give in this post applies to operations that deal with tens to a few hundred samples per year with a group encompassing four to around twenty people.</p>
<h1>Recommendations</h1>
<p>Creating and maintaining sample logs is a continual occurance and so I've created a <a href="https://github.com/jrsmith3/sample_log/releases/download/2014-11-19/sample_log.pdf">worksheet</a> (and the <a href="https://github.com/jrsmith3/sample_log">repo</a>). For what its worth, I used an open-source program named <a href="http://scribus.net">scribus</a> to generate this worksheet and I've licensed it <a href="https://creativecommons.org/licenses/by/4.0/">CC-BY 4.0</a> to make it easy for others to modify it for their own needs.</p>
<p>I recommend printing these worksheets instead of attempting to keep electronic sample logs. The advantages of electronic files (copying, publishing) aren't terribly beneficial for sample logs. On the other hand, electronic sample logs introduce issues of synchronization, backups, and findability.</p>
<p>The sample log worksheet PDF is two pages. Once the two pages have been filled, the second page of the PDF can be printed and appended to the log. When a new page is appended, write the sample name at the top and the new page number at the bottom right in the spaces provided. If every new sample log page is marked with the sample name and page number, then that page implicitly gets a unique identifier (e.g. page n of the sample log of sample x). Thus, if someone finds the page lying on the ground, it is easy to return it to its proper place.</p>
<p>I recommend punching holes in the sample logs with a three-hole punch (or printing them on pre-punched paper) and storing them in <a href="http://www.amazon.com/exec/obidos/ASIN/B0006HVEI4">one-inch binders</a>. I've found that in larger binders, pages flop around and eventually rip out. Don't pack the binder full, just start a new binder once the current binder starts to get full. I recommend labeling the binder(s) with "Sample Log" on the spine. I recommend against indexing the sample logs because I recommend adding individual sample logs alphabetically according to sample name (in other words, don't mark the binders with anything beyond "Sample Logs"). I'll go into more detail later with a recommendation on how to uniquely name samples so that their index grows chronologically. In that way, inserting new sample logs into the middle of a sample log is a rare occurance. Thus, once a binder gets filled, its unlikely that additional sample logs will need to be added which prevents shuffling sample logs through binders to make room.</p>
<p><a href="images/samplelog_binders.jpg"><img alt="Sample Log binders" src="images/samplelog_binders_small.jpg" title="Sample Log binders" /></a></p>
<p>Binders containing sample logs should be kept in a central location, preferrably in the same location as lab notebooks and samples. Despite the binder suggestion, sample logs should travel with their sample as the sample moves from place to place. I've found that <a href="http://www.amazon.com/exec/obidos/ASIN/B00006IC89">plastic page protectors</a> are good for this purpose. If your sample is up to a 4" wafer, the wafer carrier can be slipped inside the plastic sleeve with the sample log and the entire packet can be passed between researchers. If any of the sample processing or analysis occurs in the cleanroom, sample logs should be printed on cleanroom paper.</p>
<p><a href="images/samplelog_sample_jrs0033_sleeve.jpg"><img alt="Sample log in plastic sleeve with wafer carrier." src="images/samplelog_sample_jrs0033_sleeve_small.jpg" title="Sample log in plastic sleeve with wafer carrier." /></a></p>
</section>
<hr/>
<aside class="post-meta">
<p>Category: <a href="https://jrsmith3.github.io/category/blog.html">Blog</a></p>
</aside>
<hr/>
<div class="comments">
<div id="disqus_thread"></div>
<script type="text/javascript">
var disqus_shortname = 'genericsurname';
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>
</article>
</li>
</ol>
</div>
</div>
<script>
var _gaq=[['_setAccount','UA-1567200-4'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
<script src="https://jrsmith3.github.io/theme/js/main.js"></script>
</body>
</html>