image_MJP
Matthew J. Patitz
mpatitz (at) self-assembly (dot) net

Associate Professor
Department of Computer Science and Computer Engineering
University of Arkansas
Fayetteville, AR
Office: JBHT 517
Lab: JBHT 448

Research Interests

I am interested in researching self-assembling and self-organizing systems which display complexity arising from simple components and local interactions. There are many examples in the natural world of both living and non-living systems in which large numbers of small, autonomous pieces form systems that are extremely complex without any centralized control and from simple sets of rules. By studying existing systems and designing novel ones, I hope to help illuminate fundamental properties of such systems which give rise to their complex behavior, including life. Additionally, the creation of complex artificial systems which self-assemble and self-organize could help to revolutionize many areas of technology, enabling wonders such as atomically precise manufacturing and nanoscale medical devices.

My current research deals with models of self-assembling DNA 'tiles' and their ability to self-assemble intricate structures and to perform computations.

[My research group at the University of Arkansas is populating and maintaining a wiki full of content related to self-assembly, which can be found at self-assembly.net]

[Please see my 'Research' page for more info on my past and present work...]

[Please see my 'Publications' page for a list of my publications...]


Teaching

Fall 2017:
  • CSCE 4561: Capstone I
    • Meeting times: Tuesdays 3:30pm - 4:45pm
    • Location: WJWH 0218
    • Office hours: Tuesdays 1:30pm - 3:30pm, and by appointment
    • Web site on Blackboard: https://learn.uark.edu.
Spring 2017:
  • CSCE 4963: Capstone II
  • CSCE 5013: Introduction to DNA Nanotechnology
Fall 2016:
  • CSCE 3193: Programming Paradigms
  • CSCE 4561: Capstone I
Spring 2016:
  • CSCE 4963: Capstone II
Fall 2015:
  • CSCE 3193: Programming Paradigms
  • CSCE 5013: Advanced Special Topics: Algorithmic Self-Assembly
  • CSCE 4561: Capstone I
Spring 2015:
  • CSCE 4963: Capstone II
  • CSCE 5013: Advanced Special Topics: Models of Computation
Fall 2014:
  • CSCE 3193: Programming Paradigms
  • CSCE 4561: Capstone I
Spring 2014:
  • CSCE 5013: Advanced Special Topics – Current Applications of Graph Theory
Fall 2013:
  • CSCE 3193: Programming Paradigms
Spring 2013: Fall 2012 (University of Arkansas):
  • CSCE 3193: Programming Paradigms
Spring 2012 (University of Texas-Pan American):
  • CSCI/CMPE 3340: Software Engineering
  • CSCI/CMPE 2333: Computer Organization and Assembly Language
Fall 2011:
  • CSCI/CMPE 3340: Software Engineering
  • CSCI/CMPE 2333: Computer Organization and Assembly Language
Spring 2011:
  • CSCI/CMPE 3340: Software Engineering
  • CSCI/CMPE 2333: Computer Organization and Assembly Language
Fall 2010:
  • CSCI 1201: Introduction to Computer and Information Technology
  • CSCI/CMPE 2333: Computer Organization and Assembly Language



Education

I received my B.S. and M.S. in Computer Science from Iowa State University, then moved to Silicon Valley to work as a software engineer for 5 years. In 2005 I decided to move back to ISU and get my PhD, also in Computer Science.

  PhD, Computer Science   Iowa State University; received May 2010
  M.S., Computer Science   Iowa State University; received December 2002
  B.S., Computer Science   Iowa State University; received December 1998

Program Committees

I have served or am serving on the following program committees: Referee Work

I have reviewed papers for the following conferences, workshop, and journals:
Professional Career

After finishing the courses for my Master's in the spring of 2000, I moved to Redwood City, California to work as a software engineer at SupportSoft, which was then a small startup software company. For the next five years I designed and developed software and served as the team lead for a full engineering team throughout the development and release of product suites. I gained valuable experience in several areas of software engineering and with a variety of programming languages, platforms, and development environments.

Since leaving SupportSoft, I have held several contract programming positions as a software developer with startup software companies and also as a web site and web application developer. A sampling of technologies that I'm familiar with and areas I've worked in are listed below.

  • Programming languages: C/C++, Java/JSP, ASP, MIPS R2000/R3000 and x86 assembly, Scheme, LISP, SQL, Perl, PHP, HTML, Javascript
  • Platforms: Windows 9x/NT/2K/XP, Linux, UNIX, AIX
  • Databases: MSSQL, Oracle, DB2, MySql
  • Areas of expertise:
    • Client/server architecture with multi-million client deployments, emphasizing client synchronization and stability and server performance and scalability
    • Internationalization and localization of large product suites, supporting multiple locales per deployment, including multi-byte character sets and across DB servers, application servers, network communications, and client software
    • Web application design, development, and deployment to support large numbers of end users across a variety of platforms and browsers
    • Cross-platform application development

Personal Info

I grew up primarily in central Iowa, near a small town named Adel. I graduated from Adel DeSoto Minburn High School in the spring of 1994, then came to Iowa State to start my Bachelor degree. During my undergraduate career I wrestled for the Iowa State Cyclone wrestling team, which has a fantastic tradition of dominance and is usually one of the top few teams in the nation. Other than my research and wrestling, I also love traveling and have been all over the United States, India, Peru, Costa Rica, and both Eastern and Western Europe.

For more information about me and more pictures than you could care to view, you can visit my web site here: Patitz.net.

Thanks for visiting my site and feel free to email me with any questions about my research, software, etc!