Home ContactScheduleResearch

Ian Finlayson

 

About

Welcome to my home page! I'm an associate professor of computer science at the University of Mary Washington in Fredericksburg, Virginia. My teaching interests include programming, computer organization, the theory of computation, parallel computing, data structures and algorithms.

My research interests include computer architecture, compilers, parallel computing and computer science education. My main research project right now is in the area of making parallel computing easier to accomplish.

You can read more about me on my about page.

Ian Finlayson

 

Contact Information

Title:Associate Professor
Education:Ph.D. from Florida State University
Office Number:Farmer B47
Telephone:540-654-1714
Email:ifinlay@umw.edu

 

Current Classes


 

Spring 2025 Schedule

Monday Tuesday Wednesday Thursday Friday
9:00 - 12:00
Office Hours
9:30 - 11:20
CPSC 305
9:00 - 12:00
Office Hours
9:30 - 11:20
CPSC 305
12:30 - 2:20
CPSC 240
12:30 - 2:20
CPSC 240

I am available other times besides these. If you want to make an appointment, please just email me.


 

Past Classes


 

Course Listing

Our school's course listing page leaves a lot to be desired, so I maintain a more usable one at this address: ianfinlayson.net/umw-courses

I also maintain flowcharts showing the prerequisites of our comp. sci. classes in visual form. These are auto-generated with Graphviz:


 

Exploring Computer Science

I have an introductory programming text book in Python. It is called Exploring Computer Science.


 

Programming Contests

I coach our programming contest teams and also host contests here at UMW from time to time. Below are programming contest puzzles I developed or adapted for our contests:

YearThemeProblem PacketMy Solutions (in C)Test Cases
2022Pokémon 2022 Problems 2022 Solutions 2022 Tests
2019Nintendo 2019 Problems 2019 Solutions 2019 Tests
2018Classic Disney 2018 Problems 2018 Solutions 2018 Tests
2017Harry Potter 2017 Problems 2017 Solutions 2017 Tests
2016Star Wars 2016 Problems 2016 Solutions 2016 Tests
2015Lord of the Rings 2015 Problems 2015 Solutions 2015 Tests
2014Zelda 2014 Problems 2014 Solutions 2014 Tests
2012Game of Thrones 2012 Problems 2012 Solutions 2012 Tests

 

Research

My research is mainly in the areas of compilers, programming languages, computer architecture, and parallel processing. I am especially interested in pedagogical work in these fields.

Publications:

My curriculum vitae.


 

Blog

You can see some of my side projects and random stuff on my blog.

Copyright © 2025 Ian Finlayson | Licensed under a Creative Commons BY-NC-SA 4.0 License.