higher level language for the bulk of my experiments.
\citetalias{comedi} already had \citetalias{beazley96}-generated
Python bindings, so I set to work creating \pycomedi, an
-object-oriented interface around the SWIG bindings. The first
-generation \pycomedi\ interface was much easier to use than the raw
-SWIG bindings, especially for simultaneous analog input/output, which
-I needed to monitor cantilever deflection during piezo-sweeping
+object-oriented interface around the \citetalias{swig} bindings. The
+first generation \pycomedi\ interface was much easier to use than the
+raw SWIG bindings, especially for simultaneous analog input/output,
+which I needed to monitor cantilever deflection during piezo-sweeping
velocity-clamp pulls.
The SWIG-based interface to Comedi provided a solid base for my
experiment control stack, but as the stack matured, I started bumping
up against problems due to both my poor design
choices\footnote{\citet{brooks95} says ``plan to throw one away,''
- although I'm a more optimistic about the feasibility of long-term
+ although I'm more optimistic about the feasibility of long-term
maintenance than he is.} and general awkwardness with the thin SWIG
bindings. In 2011 I ripped out most of this layer and used
\citetalias{cython} to bind directly to Comedi's userspace library.
\ref{item:pypiezo-surface-ramp-approach}, which should clearly show
the contact kink, is fit to a bilinear model (a linear non-contact
region and a linear contact region, which meet at the the contact
-kink). The fitting is carried out my minimizing the residual
+kink). The fitting is carried out by minimizing the residual
difference between the approach data and bilinear model with SciPy's
\imint{python}|leastsq| optimizer, a wrapper around MINPACK's
\imint{fortran}|lmdif| and \imint{fortran}|lmder|