Jamie Jennings
She/her
Associate Teaching Professor
2304 Engineering Building II (EB2)
919-515-3208 jajenni3@ncsu.edu WebsiteBio
Jamie A. Jennings earned her Ph.D. in Computer Science at Cornell University in 1995, then joined the faculty of Tulane University, where she established a robotics lab to continue her work on cooperative navigation and manipulation with mobile robots. In collaboration with her graduate and undergraduate students, this work included computational geometry, algorithm design, distributed systems, and some applications of compiler design techniques.
She left academia for a 19-year career in industry, first as a Research Staff Member at IBM’s T.J. Watson Research Lab, then later as a Senior Technical Staff Member in IBM’s Software Group (now called the Watson Cloud division). During this time, she led the creation of several open technical standards as the chair of Expert Groups in the SyncML Initiative, the Open Mobile Alliance, and OSGi. She is the author of several software patents.
In August 2018, she joined the Computer Science department at NCSU as a member of the teaching faculty, focused on undergraduate education. Her research interests are largely in applications of theoretical computer science. Working primarily with undergraduate researchers, she and her students apply techniques from Programming Language Theory, Compilers, and the Theory of Computation (specifically, automata and grammars).
Dr. Jennings is the creator and primary author of the Rosie Pattern Language, a replacement for regular expressions that is designed to be used at industrial scale, where there are (1) many expressions (patterns) in use, (2) high data volume, velocity, and variability, and (3) many software developers involved in a project.
Office Hours
Office hours and Zoom details are available here.
Additional times available by request (email).
Note: Office hours may occasionally change due to travel or other scheduling needs.
Education
Ph.D. Computer Science Cornell University 1995
Area(s) of Expertise
Algorithms and Theory of Computation
Software Engineering and Programming Languages
Publications
- Automated tracking of S. pombe spindle elongation dynamics , Journal of Microscopy (2021)
- Demystifying regular expression bugs , Empirical Software Engineering (2021)
- An Empirical Study on Regular Expression Bugs , Proceedings of the 17th International Conference on Mining Software Repositories (2020)
- Distributed robotic manipulation: Experiments in minimalism , Experimental Robotics IV: The 4th International Symposium, Stanford, California, June 30 – July 2, 1995 (2005)
- Constructive recognizability for task-directed robot programming , Proceedings 1992 IEEE International Conference on Robotics and Automation (2003)
- Towards experimental verification of an automated compliant motion planner based on a geometric theory of error detection and recovery , Proceedings, 1989 International Conference on Robotics and Automation (2003)
- A pusher/steerer model for strongly cooperative mobile robot manipulation , Proceedings 1995 IEEE/RSJ International Conference on Intelligent Robots and Systems. Human Robot Interaction and Cooperative Robots (2002)
- Analyzing teams of cooperating mobile robots , Proceedings of the 1994 IEEE International Conference on Robotics and Automation (2002)
- Cooperative search and rescue with a team of mobile robots , 1997 8th International Conference on Advanced Robotics. Proceedings. ICAR'97 (2002)
- Distributed map-making and navigation in dynamic environments , Proceedings. 1998 IEEE/RSJ International Conference on Intelligent Robots and Systems. Innovations in Theory, Practice and Applications (Cat. No.98CH36190) (2002)