Download as TXT PDF
Nathan M. Wiegand
email: nathanwiegand@gmail.com
url: http://nathanwiegand.com
phone: (205)210-8283
address: Department of Computer Science
The University of Alabama
101 Houser Hall
Tuscaloosa, AL 35487-0290

Seeking

I am not currently seeking employment.

Interests

Computer science is a very exciting field because of its ability to solve diverse problems in a variety of disciplines, ranging from fluid-flow simulations to stock-market projections. I am most interested in further applying the tools I've gained as part of my education to such problems, especially those which require large scale computation. Recently, I've been focusing on the areas of programming languages and formal languages. I would like to further explore how purely functional languages and techniques can be used to build large scale, fault-tolerant systems.

Education

Doctorate

On Labeled Paths
PhD in Computer Science
3.94 GPA, May 2010
University of Alabama

Masters

MS in Computer Science
3.94 GPA, August 2007
University of Alabama

Undergraduate

BS in Mathematics, specializing in Mathematical Statistics
4.0 GPA, Summa Cum Laude, December 2004
University of Alabama

Honors and Awards

Nominated ECOB Outstanding Graduate Student, UA, 2010

Nomination for the Engineering Council of Birmingham's most outstanding graduate student in Engineering.

Association for Computing Machinery Outstanding Graduate Award, UA, 2009

Awarded to the most outstanding graduate student in the Computer Science program each year.

Nominated ECOB Outstanding Graduate Student, UA, 2009

Nomination for the Engineering Council of Birmingham's most outstanding graduate student in Engineering.

Graduate Council Fellowship, UA, 2005 -- 2006

The most prestigious and competitive graduate fellowship at the University. Awarded to graduate students with the highest academic and scholarly qualifications.

Association for Computing Machinery Graduate Award, UA, 2005

Awarded to the most outstanding graduate student in the Computer Science program each year.

Computer Science Outstanding Senior Award, UA, 2004

Awarded to the most outstanding senior in the Computer Science program each year.

Upsilon Pi Epsilon Honor Society, 2004

International honor society for the computing and information disciplines.

Space Grant Fellowship, UA, 2003-2004

Awarded by the Alabama Space Grant Consortium.

Computer Science Outstanding Sophomore Award, UA, 2003

Awarded to the most outstanding sophomore in the Computer Science program each year.

Experience

Teaching: Foundations of Computer Science (CS260) Spring 2010

UA Computer Science
I taught one section of CS260 which is an introduction to the field of Computer Science including the areas of data structures and elementary algorithmic analysis.I was the sole instructor of the course, so my duties included the creation of all course materials including projects and exams, along with the grading of each.

Teaching: Software Development (CS3) Fall 2009

UA Computer Science
I taught one section of a CS3 which focused on developing larger software projects using C++ and Java. The students were also exposed to the ideas of unit-testing and using a versioning system (Subversion). I was the sole instructor of the course, so my duties included the creation of all course materials including projects and exams, along with the grading of each.

Teaching: Introduction to Python (CS1) Spring 2009

UA Computer Science
I taught one section of a CS1 course using Python. My duties included lecturing, authoring and grading of examinations, and development of programming assignments.

Teaching: Introduction to Programming Using Alice Spring 2009

UA Computer Science
I taught one section of an introduction to programming course using a modified version of the Alice environment retrofitted to work with the iRobot iCreate robotics platform. My duties included lecturing, authoring and grading of examinations, and development of programming assignments.

Teaching: CS1 Lab (CS1) Aug 2006-Dec 2008

UA Computer Science
I taught a total of five lab sections associated with a CS1 course, and was responsible for development of one half of all course materials for all sections of the lab.

Teaching: Introduction to C++ (CS1) Fall 2007, Spring 2008

UA Computer Science
I taught two sections of a CS1 course using C++. My duties included lecturing, authoring and grading of examinations, and development of programming assignments.

Research Assistant Aug 2007-Dec 2007

UA CS Department
Helped build and set up the new robotics lab for the computer science department. This included running Linux on embedded devices and working with device drivers in Player/Stage to get them functioning with the robotic hardware.

Systems Administrator May 2005-May 2007

UA College of Engineering
Maintained the Linux network for the College of Engineering.

Information Services Co-op Dec 2003-May 2003

ACIPCO
Built a digital card catalog for the company library. Developed and maintained several databases and front-ends. Created an Excel spreadsheet which would pull real-time statistics from a database and create charts and reports on the fly.

Continuous Improvement Co-op May 2002-Aug 2002

ACIPCO
Built a digital suggestion box had to meet the demand the suggestions from many of the thousands of employees since the suggestions were incentivized by paying a percentage of any savings the company accrued to the suggester.

Projects

Auto-Discovery tool for OpenMosix

Wrote an auto-discovery daemon for the now defunct OpenMosix project. The project was canceled before the daemon was complete.

Parser Generator written in XSLT

Wrote a parser generator that took the grammar specification, decorated with annotations to describe the AST to be produced, in XML and then used an XSL Transform to convert this specification into an equivalent C form. This was phase one in a project for a compiler for a toy language. A later phase included type-checking in the language using another XSLT program.

FunVision

Created a language which was used as the term project for a 400 level CS course. The assignment was to compile the language to an assembly that ran in a VM. Each were developed in parallel.

Relational Algebra to SQL Translator

Made a tool which would interpret a relational algebra syntax, translating it into an equivalent SQL, and then run the queries against a database. Used as a pedagogical tool.

Funion

Currently working (part time) on a project to implement a user-land filesystem in Haskell for the purpose of creating unioned views of directories.
http://github.com/nathanwiegand/funion

Skill Set

Programming Languages

Tier 1 (Best)

C, JavaScript

Tier 2

C++, Java, Python, Perl, XSLT, PHP, TeX, Haskell, BASH, Make

Tier 3

Visual Basic, 68HC12 Assembly, Processing

Selected Publications

C. Ward, N. Wiegand. "Complexity Results on Labeled Shortest Path Problems from Wireless Routing Metrics," Accepted in Computer Networks.

C. Ward, N. Wiegand, P. Bradford. "A Distributed Context-Free Language Constrained Shortest Path Algorithm," ICPP '08 37th International Conference on Parallel Processing, 2008.

P. Bradford, O. Gavrylyako, C. Ward, N. Wiegand. "A Proposal for a Multimedia Traffic Analysis Attack," The 2005 International Conference on Wireless Networks (ICWN-05).

References

Richard Borie, Associate Professor

Department of Computer Science
University of Alabama
101 Houser Hall, Tuscaloosa, AL 35487-0290
borie@cs.ua.edu
http://cs.ua.edu/~borie/
205.348.1668

John Lusth, Associate Professor

Department of Computer Science
University of Alabama
101 Houser Hall, Tuscaloosa, AL 35487-0290
lusth@cs.ua.edu
http://cs.ua.edu/~lusth/
205.348.1618

Crutcher Dunnavant

Google, Inc.
36 Dorland St, Apt 4
San Francisco, CA 94110
crutcher@google.com
205-887-2552

Sibabrata Ray

Google, Inc.
604 Arizona Ave
Santa Monica, CA 90401A
siburay@gmail.com
310-309-6819

Charles Ward

Postdoctoral Associate
Stony Brook University
Stony Brook, NY 11794
charles@cs.sunysb.edu
631-632-5922