Aaron Stevens: Teaching

Aaron is a Senior Lecturer at Boston University, with appointments in the College of Arts and Sciences in the Department of Computer Science, and the Questrom School of Business in the Department of Finance. Aaron's teaching interests include courses in computer programming, application development, data analytics, derivatives and risk management, personal finance, and programming for investments.

Aaron is the holder of an undergraduate degree in business from Indiana University; a master's degree in computer science from Boston University; and a master's degree in finance from Boston College.

Teaching Interests

Computational finance, computer programming, web applications, databases, personal finance, applied statistics, quantitative reasoning.

Courses Taught

CS108 Programming Workshop
Boston University Department of Computer Science

9/2004 - present, 44 sections total

CS108 is an introductory programming course for students not majoring in computer science.

I developed this class beginning in 2004 using the Java programming language. From 2007-2021 the course has covered Python, SQL, and HTML, with a focus on web application development using the Linux-Apache-MySQL-Python software stack. Since 2022, the course has included a unit about data analytics with Pandas.

The current version of the course uses the flipped-classroom model, where students learn the new content and practice examples on their own at home and use classroom time to complete in-class assignments. To support the flipped-classroom, I created over 60 YouTube videos with examples and mini-lectures, as well as greatly expanding the number of programming assignments. Students complete 23 individual programming assignments and a 2-week long data analytics project.

CS412 Full Stack Application Development
Boston University Department of Computer Science

9/2024 - present, 7 sections total

CS412 is an immersive practical programming experience to extend and enhance studentsŐ programming and debugging skills in the context of a complex and large-scale application. Students learn and use a web application framework to implement Ňfull-stackÓ applications with a web-based user interface and persistent data management.

I developed this class beginning in 2024 using the Django web application framework, which follows the model-view-controller architecture pattern.

The class is workshop with emphasis on developing applications in class. Students develop several small applications to learn the basics of the Django framework, and then proceed to a 5-week case study in which they implement a simple version of Instagram (formerly Facebook), with multiple data models, views, and the logic to develop the application features. The course then proceeds to smaller units on using external data, searching and filtering data, and graphing aggregate data/results. Finally, the course has a 2-week unti on developing mobile applications to interface with the Django REST API.

CS111 Introduction to Computers Science
Boston University Department of Computer Science

5/2005 - present, 50 sections total

CS111 is an introduction to computer science and programming in Python. The course is the first course in the Computer Science concentration and a required course for mathematics majors and other natural science majors.

The current version of the course uses a breadth-first approach to learning computer science, and teaches: functional programming and recursion; computer architecture and assembly language programming; imperative programming; object-oriented programming; and a sampling of topics from CS theory including definite finite automata and computability. Assignments include numerical programs, image (matrix) manipulation, text processing and analysis, and games and artificial intelligence.

The current version of the course (since summer 2015) uses the flipped-classroom model, where students learn the new content and practice examples on their own at home and use classroom time to do peer-based learning and complete in-class assignments. To support the flipped-classroom, I created over 50 YouTube videos with examples and mini-lectures.

During the period 2004-2014, I taught this class in the Java programming language.

CS698 Teaching Fellow Seminar
Boston Univeristy Department of Computer Science

9/2011 - present, 8 sections total

CS698 is a teaching methods seminar for first-year graduate students in computer science.

The course prepares new teaching fellows in our department for one-on-one tutoring with students; preparing lab activities; preparing a lecture; and active learning methods for in-class activities and assignments. The course includes discussion of learning styles, curriculum development for lectures, assignments and tests, and the art of public speaking.

FE459 Computational Techniques for Finance
Boston University Department of Finance

Summer 2018 - present, 9 sections total

FE459 teaches students how to use computational techniques to implement financial algorithms for security pricing and risk analysis, including, bonds, stocks, and options.

This is a rigorous, hands-on programming course to prepare students for quantitative jobs in finance. The overall objective of the course is to enhance the studentsŐ understanding of the well-known financial models used to price securities including bonds and options, to evaluate the risk and return characteristics of stocks and portfolios.

After the course, students will have a deeper understanding of investment portfolios, risk management techniques that use derivatives, and arbitrage strategies. Additionally, students will become comfortable with a modern programming language based on functional and object-oriented programming, which will enhance their job opportunities in a variety of fields beyond finance.

MF703 Programming for Mathematical Finance
Boston University Department of Finance

9/2016 - 9/2019, 8 sections total

MF703 is an introduction to functional, imperative, and object-oriented programming programing in Python for students in the masterŐs program in mathematical finance.

Programming assignments include: the time value of money; bond pricing and analytics; statistical analysis of historical stock market data; linear algebra and matrix operations; creation of minimum variance efficient portfolios and the efficient frontier; option pricing algorithms, including the binomial model, Black-Scholes formula, and Monte Carlo methods for simulating future stock market returns and calculating the value of path-dependent options.

The teaching/learning methodology has an emphasis on teaching by example in an active- learning classroom environment. Students bring their laptop computers to class, and the typical use of classroom time involves about 50% demonstration of syntax and language semantics, and 50% with students working on in-class practice problems to build programming skill. The course teaches Python first, with an emphasis on algorithmic thinking and problem solving, with an emphasis on run-time analysis and efficiency.

FE429 Futures, Options, and Risk Management
Boston University Department of Finance

Spring 2018 - Spring 2021, 4 sections total

FE429 is an introduction to the use of derivative instruments for risk management. The course covers the payoff and profit calculations arising from various derivative instruments, replicating payoffs with different strategies, and hedging techniques. Option pricing techniques including binomial trees, the Black-Scholes equation, and Monte Carlo simulation. The course has an emphasis on developing spreadsheet models and solutions.

CS101 Introduction to Computers
Boston University Department of Computer Science

9/2006 - 12/2014, 23 sections total

CS101 is a computer science literacy class for non-CS majors, which discusses computing and computer science through the main ideas of algorithmic thinking, encoding of information, protocols, and abstraction. CS101 surveys a selection of fundamental topics in computer science, including the digital representation of numbers, text, images, audio and video; the World-Wide Web; computer networks and the Internet; algorithms for searing and sorting; and an overview of computer programming concepts through vector graphics animation.

The applied component of the course introduced students to a practical set of tools including HTML/web-development, manipulating images and audio, and an introduction to object oriented programming concepts using the Alice 3D animation environment.

MA120 Applied Mathematics for Personal Finance
Boston University Department of Mathematics

1/2014 - 5/2017, 7 sections total

MA120 is an introduction to the applications of mathematics for personal financial decision- making. The course introduces and applies quantitative techniques involving systems of equations, exponential functions and logarithms, probability and expected value, mortality and survival probability, descriptive and inferential statistics, and numerical simulation. Applications include life cycle decisions about spending and saving; borrowing and repayment; inflation and purchasing power; insurance and annuities; investments and asset allocation.

This is a class in quantitative reasoning and decision-analysis using mathematical models. The class uses a flipped-classroom methodology, wherein each class meeting centers around a specific assignment (e.g., an Excel spreadsheet model) that students will work on during class time.

I have written a draft textbook, Applied Mathematics for Personal Finance for this class.

EC171 Personal Life-Cycle Economics
Boston Univeristy Department of Economics

6/2010 - 12/2013, 11 sections total

EC171 was an introduction to applied economics, which applied the life-cycle model and consumption smoothing to personal economic decisions including spending, saving, borrowing, insuring; matriculation and investing in human capital; choosing careers, jobs, and locations; marrying, having children, divorcing; retiring, retirement accounts, taking Social Security; buying insurance; and investing in stocks and bonds.

I developed this new course (with Larry Kotlikoff and Zvi Bodie) beginning in 2009. I custom- published a draft edition textbook (Personal Life-cycle Economics) that was used in this class for 2011-2013. Beginning in the Spring 2013 semester, I used a flipped-classroom approach to EC171. Students read assigned readings and took a reading quiz before coming to the classroom. During class meetings, we begin with a brief question and answer session and summarize the main ideas from the readings. The majority of class time was used for in-class assignments to develop deeper understanding of the material by focusing on applications.

MF021 Basic Finance
Boston College Department of Finance

Spring 2004

MF021 course is a general introduction to finance required for all majors and minors in the School of Management. The course covers present and future values, streams of payments, bond pricing, the capital structure of firms and the cost of capital, market efficiency, the capital asset pricing model, and an overview of derivatives

GB204 Data Analysis and Statistics
Bentley College Department of Mathematics

9/2003 - 5/2004, 2 sections total

This course is a general introduction to descriptive and inferential statistics for undergraduate students in business. Techniques include measures of central tendency and dispersion, correlation and OLS regression, confidence intervals and hypothesis testing.

Education Inspiration

"The worst thing we can do for our students, the most insidious way of cheating them, the surest formula for failure is to ask little and expect little of our students."
-Ramon Cortines, former chancellor of public schools in New York City

"The purpose of education is to replace an empty mind with an open one."
- Malcolm Forbes

Created by: Aaron Stevens, azs@bu.edu
people.bu.edu/azs/teaching/
Last update: September 2025