Photo of Cthulu

Emily Alden: Programming




Programming Portfolio

My current programming focus is on control system design, data management, and data analysis. I previously built and usability-tested a database-driven website for the University of Michigan Physics Demonstration Lab. Here are a selection of programming projects I've completed.

Control System Design - Hot Mercury (Hg) Clock Experiment


Control


Sample Data Analysis Screen
When 2011-2013
LoC GUI - 500
Data Acquisition - 500
Data Analysis - 2000
Contribution Architect, Principal Developer, Data Manager, System Administrator, Requirements Analyst, Theme Designer, Hardware Manager
Tech
Software
MatLab
Tech
Hardware
Hg Vapor Cell, Fiber Seed Laser, Fiber Laser Amplifier, Single-pass PPMgO:SLT SHG, Wavelength-meter, High Quantum Efficiency Photodetector, Gated photon counting (SRS SR400), PID controller, Table-top optics and fiber optics, Waveform generators, Oscilliscopes, Kitchen sink.
Description This experiment required interfacing many equipment systems to perform the measurement. Most data-aquisition was autonomous once the experiment was launched creating a data-log file with concurrent reports on photon signal, laser frequency, system temperatures, and laser powers. This apparatus required TTL, RS-232, USB, and Network control.
Examples Experiment Code - DAQ - MatLab (.m) LoC: 331
Once the hardware is initialized, this experiment code iterates indefinitely (until GUI Stop is pressed) and appends data run results to the data set. This experimental loop allows data acquisition and synchronization between three autonomous expermeintal systems, a wavelength meter, a photon counter, and an oscilloscope.
Analysis Code - MatLab (.m) LoC: 604
This code analyzes and reports on the data taken in a given Hg experiment run. It can run concurrently with the experiment to permit live monitoring of the experiment.

Web Development


Experiment
When 2006-2008
LoC ASP.Net - 9800
VB - 8500
Java & CSS - 4500
(excludes comments)
Contribution Architect, Sole Developer, Usability Tester, DBA, System Administrator, Requirements Analyst, End User Documentation, Theme Designer
Tech VB.NET, ASP.NET, SQL, HTML, CSS
More: DemoLab Website
User Documentation
Description This website served as a catalog of the DemoLab's demonstrations, experiments, and equipment. It was also an ordering site for instructors, and maintained an agenda of instructor orders for demonstrations and teaching technologies. It allowed instructors to review past semesters' orders and re-order in bulk. It also kept a dashboard of unavailable demonstrations and demolab projects. After I left the DemoLab in 2008 it lost all support, however it continued to be the portal for the lab and instructors through 2012! The university migrated the site to a new platform in 2012 so it could receive university tech support. I'm proud that I gave the site enough structural integrity that it could fly solo for years.
References available.

Physics Simulations


Experiment
When 2008-present
Contribution Developer
Select Projects Two-photon E1-M1 Excitation Rates, Two-photon E1-M1 Coherence, Velocity broadening of a thermal beam, Tripartite Entanglement from Two-Photon Cascade in Atomic Systems.
Tech MatLab, Mathematica

Fluency - MatLab


Experiment
When March 2013
LoC 440
Contribution Architect, Sole Developer, Usability Tester
Tech MatLab, HTML
MathWorks: Attributed Plot Html
Example HTML: Clock Uncertainties
An attributed source for current state-of-the-art atomic clocks is why I wrote this program. This connects a plot of clock uncertainties with each data point's respective source.
Race Temps
This is a generic example of the program's function which plots marathon finish time with respect to race day temperature.

Fluency - C++


Experiment
When November 2013
LoC 260
Contribution Architect, Sole Developer, Usability Tester
Tech C++
File: Find Next Ascent
Description A terminal game that accepts a current odometer reading (6-digits) and provides the next ascending sequence. For example, an input of 000480 has a next ascender of 012345.

Adobe CS


Cold Atom Entanglement
When 2003-present
Tech Adobe Illustrator and Photoshop
Examples: Hg Clock - Optics Table Layout
Tripartite Entanglement - Animated GIF
Tripartite Entanglement - Poster
Description I use Illustrator to graphically represent the underlying physics and systems I'm presenting. I utilize true to scale information in my graphics where possible to enrich the presentations.