Conference Tutorials

Conference Tutorials offer the bonus of additional educational experiences for SESUG Conference attendees. We have talented, recognized, and experienced instructors prepared to share their knowledge in these 3.5-hour sessions. The tutorials cover a wide variety of topics and skill levels, which appeal to everyone interested in exceptional in-depth training. Please note that tutorials are an extra fee event at SESUG.

SESUG 2024 is bring your own device for any tutorials and/or hands on workshops for which laptops and/or software is required.

Some of the Tutorials require a laptop and/or software. This is indicated in the tutorial description.

If you have any questions regarding a tutorial, please contact our Tutorial Coordinators:

Richann Watson and Louise Hadden .

Sunday, 09/22/2024 8:30am - 12:00pm
Tutorial Title Instructor
The SASSY System David Bosak
Getting Started with SAS® Macro Language Basics Josh Horstman
Utilizing National Healthcare Survey data in research and analysis using SAS® Jay Iyengar
Efficiency Tips for Database Programming in SAS® Mark Jordan, SAS

Sunday, 09/22/2024 1:30pm - 5:00pm
Tutorial Title Instructor
Getting Started with Mixed Models Danny Modlin, SAS
SAS® Arrays To Save the Day! DATA Step and PROC FCMP Usage Troy Martin Hughes
Mastering the Machine Learning Toolkit: A Hands-on-Workshop Leveraging Python’s Open-Source Libraries for Training Supervised ML Algorithms Ryan Paul Lafler
PROC SQL Programming Masterclass Using SAS® Kirk Paul Lafler

Tutorial Details

Title: The SASSY System

Scheduled Time: Sunday, September 22nd, 8:30 am - 12:00 pm
Instructor: David Bosak

Laptop with R Software Required. Instructor will send required packages to be loaded ahead of time.

Abstract: The SASSY system is a set of R language packages that make programming in R easier for everyone, especially those with a background in SAS®. The packages provide a nearly-automatic logging system, and many functions that mimic ideas from SAS®: a libname, a data step, reuseable formats, and functions that replicate common procedures like PROC FREQ and PROC MEANS. With these packages you will be able to easily replicate the outputs you create in SAS. This will be a hands-on workshop. By the end of the tutorial, you will be doing analysis and writing reports in R much in the same way you do it in SAS®.

Instructor Bio: David is the Chief Software Architect at Archytas Clinical Solutions, founder of, and author of the SASSY system. Prior to his current position, he was a consultant to pharma and non-pharma companies for 23 years. He has extensive experience creating solutions in SAS, R, .NET, database, and Web Technology. Currently obsessed with R, he has become an active package developer, and has ten R packages published on CRAN.


Title: Getting Started with SAS Macro Language Basics

Scheduled Time: Sunday, September 22nd, 8:30 am - 12:00 pm
Instructor: Josh Horstman

Abstract: This half-day seminar is designed for the SAS programmer who is new to the Macro Language. We will start with the basics and cover the fundamentals necessary to start applying SAS macros in your programs. Attendees will learn how the Macro Language works, what the Macro Symbol Table is, how the SAS system uses Macro Variables, calling and executing macros, using macro parameters, and other key Macro Language concepts. The examples in the course materials demonstrate the power and flexibility of this part of the SAS system and will enable you to apply its functionalities to your own programs right away!

Instructor Bio: Josh Horstman is an independent statistical programming consultant and trainer based in Indianapolis with over 25 years of experience using SAS. He works primarily in the life sciences industry and specializes in clinical trial analysis and reporting for pharmaceutical and biotech clients. Josh is a SAS Certified Advanced Programmer who loves coding and presenting at SAS user group conferences and other industry events. He also enjoys travelling and hiking with his family and has been to 47 states and 27 national parks.


Title: Utilizing National Healthcare Survey data in research and analysis using SAS

Scheduled Time: Sunday, September 22nd, 8:30 am - 12:00 pm
Instructor: Jay Iyengar

Abstract: This course is intended for programmer\analysts and researchers in the public health domain who need to learn how to access and analyze healthcare survey data. Attendees will learn about the different types of national healthcare surveys, such as the NHANES (National Health and Nutrition Examination Survey), the NHIS (National Health Interview Survey), MCBS (Medicare Current Beneficiaries Survey) and the MEPS (Medical Expenditure Panel Survey). They'll receive a background and explanation of the surveys and survey data sets. Attendees will also learn how to access, extract and analyze healthcare survey data sets. The course will include demonstrations using SAS to perform a series of tasks with the survey data.

Instructor Bio: Jay Iyengar is Principal of Data Systems Consultants LLC. He is a SAS Consultant, Trainer, and SAS Certified Advanced Programmer. He was co-chair of the Chicago SAS Users Group, WCSUG from 2015-19. He’s presented papers at SAS Global Forum (SGF), Midwest SAS Users Group (MWSUG), Wisconsin Illinois SAS Users Group (WIILSU), Northeast SAS Users Group (NESUG), and Southeast SAS Users Group (SESUG) conferences. He has been using SAS since 1997. His industry experience includes Healthcare, Pharmaceutical, Public Health, Direct Marketing and Educational Testing.


Title: Efficiency Tips for Database Programming in SAS®

Scheduled Time: Sunday, September 22nd, 8:30 am - 12:00 pm
Instructor: Mark Jordan

Abstract: This class teaches you how to tune SAS programs for faster execution, especially those that access relational database tables using SAS/ACCESS interfaces or SAS Viya data connectors.
Learn How To:

  • Use SAS options to evaluate efficiency when accessing database data.
  • Tune SAS programs for faster processing.
  • Understand how relational database tables are accessed on the SAS Compute Server and in SAS Cloud Analytic Services (CAS).
  • Understand conditions that can prevent SQL pass-through for execution in the database.
  • Modify SAS programs to maximize pass-through to the database and minimize execution time.
This is an intermediate level SAS training class. You should already be able to:
  • Access existing SAS data libraries using a LIBNAME statement.
  • Write and submit SAS programs to access and manipulate data using the DATA step and PROC SQL.
  • Read and interpret the SAS log.
  • Diagnose and correct syntax errors in SAS.
Instructor Bio: Mark Jordan (a.k.a. SAS Jedi) grew up in northeast Brazil as the son of Baptist missionaries. He served 20 years as a US Navy submariner, pursuing his passion for programming as a hobbyist. Upon retiring from the Navy, his hobby became his dream job and he’s been a happy SAS programmer ever since! Mark writes and teaches a broad spectrum of SAS programming classes, and his book, "Mastering the SAS® DS2 Procedure: Advanced Data Wrangling Techniques" is in its second edition.


Title: Getting Started with Mixed Models

Scheduled Time: Sunday, September 22nd, 1:30 pm - 5:00 pm
Instructor: Danny Modlin

A laptop will not be required but those that would like to try the code provided are welcome to bring theirs.

Abstract: In this tutorial, you learn to fit and interpret linear mixed models, and present the results, simply and meaningfully, to a nonstatistical audience. Emphasis is on a quick-start approach to learning the SAS programming techniques and interpreting results. Examples of mixed models will be shown including two-way mixed models, analysis of covariance with random effects, and repeated measures. A brief introduction to massive mixed models is also addressed.

Instructor Bio: Greetings everyone. I have been a Training Consultant at SAS since April 2011. Before SAS, I was a teacher in middle school, high school, as well as Teaching Assistant at the University of North Carolina at Wilmington and North Carolina State University. I have a Bachelors of Science in Mathematics from Elon College, a Masters of Mathematics from UNCW, and a Masters of Statistics from NCSU.


Title: SAS® Arrays To Save the Day! DATA Step and PROC FCMP Usage

Scheduled Time: Sunday, September 22nd, 1:30 pm - 5:00 pm
Instructor: Troy Martin Hughes

Laptop required as this is designed to be a hands-on-workshop

Abstract: Attend this Hands-on Workshop and receive a FREE copy of the author’s 550-page book, SAS® Data-Driven Development: From Abstract Design to Dynamic Functionality, Second Edition, released in 2022! Students will receive the physical book at the training. SAS arrays containerize linear, tabular, and multidimensional data into same-type data structures. Arrays can be iterated using various DO loops, and can greatly simplify software by reducing code redundancy and complexity, which in turn maximizes software readability and maintainability. In many cases, an array can be declared and used in lieu of a series of variables, such as when the OF or IN operator references an array. Moreover, arrays represent the only method to pass multi-element arguments to and from user-defined functions and subroutines created with PROC FCMP (aka, the SAS Function Compiler). This class demonstrates array syntax and advantages in both the DATA step and PROC FCMP, and no prior PROC FCMP experience is required, as you’ll be expertly instructed by the SAS Press author of the 2024 PROC FCMP book!

DATA step array functionality includes:

  • declaration and usage (e.g., DO loop) of explicitly indexed arrays
  • declaration and usage (e.g., DO OVER loop) of implicitly indexed arrays
  • usage of _I_ automatic variable to increment loops
  • usage of the DIM, LBOUND, and HBOUND functions to evaluate array dimensions
  • declaration of _TEMPORARY_ arrays and their benefits
  • use of the OF operator and the IN operator to reference arrays
  • advanced array syntax to merge data sets and perform lookup operations
PROC FCMP array functionality additionally includes:
  • passing a dynamic array to a user-defined function or subroutine
  • returning a dynamic array from a user-defined function or subroutine (using the OUTARGS statement)
  • declaring a static array inside a user-defined function or subroutine
  • usage of the READ_ARRAY function to ingest arrays into FCMP, and the WRITE_ARRAY function to export arrays to data sets
  • usage of the DYNAMIC_ARRAY built-in subroutine (and NOSYMBOLS option) to declare a dynamic array
  • conversion between arrays and hash objects
  • limitations (and workarounds) of arrays within PROC FCMP

Instructor Bio: Troy Martin Hughes has been a SAS practitioner for more than 20 years, has managed SAS projects in support of federal, state, and local government initiatives, and is a SAS Certified Advanced Programmer, SAS Certified Base Programmer, SAS Certified Clinical Trials Programmer, and SAS Professional V8. He has given more than 150 presentations, trainings, and hands-on workshops at SAS conferences, including at SAS Global Forum, SAS Analytics Experience, SAS Explore, WUSS, SCSUG, SESUG, MWSUG, PharmaSUG, BASAS, BASUG, and MSUG.
He has authored three groundbreaking books that model software design and development best practices:
  • PROC FCMP User-Defined Functions: An Introduction to the SAS® Function Compiler (2024)
  • SAS® Data-Driven Development: From Abstract Design to Dynamic Functionality, Second Edition (2022)
  • SAS® Data Analytic Development: Dimensions of Software Quality (2016)
Troy has an MBA in information systems management as well as other credentials, including: PMP, PMI-RMP, PMI-PBA, PMI-ACP, SSCP, CISSP, CSSLP, Network+, Security+, CySA+, CASP+, Cloud+, CISA, CGEIT, CISM, CRISC, ITIL Foundation, CSM, CSD, A-CSD, CSPO, CSP, CSP-SM, CSP-PO, and SAFe Government Practitioner (SGF). He is a US Navy veteran with two tours of duty in Afghanistan.


Title: Mastering the Machine Learning Toolkit: A Hands-on-Workshop Leveraging Python’s Open-Source Libraries for Training Supervised ML Algorithms

Scheduled Time: Sunday, September 22nd, 1:30 pm - 5:00 pm
Instructor: Ryan Paul Lafler

The instructor recommends that attendees bring their laptops with them, either with Python installed on their system or using Google Colab with their Google Drive accounts (Python in the Cloud), to actively program with me during the tutorial (the code will be provided in a Jupyter Notebook file to all registered attendees).

Abstract: This half-day tutorial is open to all Data Scientists, Statisticians, Programmers, and Researchers interested in developing, optimizing, and fine-tuning supervised Machine Learning algorithms for regression and classification tasks using Python. Whether you’re coming from SAS, R, or another language, this Hands-on-Training course will give attendees the confidence to leverage Python’s open-source libraries for supervised Machine Learning. By enrolling in this course, attendees receive their personal PDF copies of the slides, Python code organized as a Jupyter Notebook, and the confidence to fine-tune and deploy supervised Machine Learning algorithms tailored to their organization’s needs. Starting simple and then incrementally building towards more advanced Machine Learning algorithms, attendees are given strategies to mitigate algorithm overfitting and underfitting, reduce sources for training bias, evaluate their algorithm’s performance, and effectively interpret their algorithm’s results. All algorithms are developed in Python using the popular Scikit-Learn library, giving attendees an application-oriented approach to using each algorithm, including discussions about the advantages and disadvantages of using one algorithm over another. The supervised Machine Learning algorithms covered in this course include Penalized Regression methods (LASSO and Ridge); Elastic Nets; Decision Trees; and Random Forest Ensembles for regression, classification, and feature selection tasks. Topics include hyperparameter tuning; generalizing algorithms for better predictions on unseen data; and leveraging Python libraries like Scikit-Learn, Pandas, NumPy, SciPy, Matplotlib, and Seaborn to efficiently develop and evaluate their own Machine Learning algorithms.

Instructor Bio: Ryan Paul Lafler is the Founder, CEO, Chief Data Scientist, and Lead Consultant at Premier Analytics Consulting, LLC, a consulting firm based in San Diego, California, that specializes in optimizing Machine Learning algorithms for Artificial Intelligence workflows; developing responsive Full-Stack Applications and Dashboards; leveraging Open-Source Software for powerful analysis; and offering personalized training tailored to his Clients' Big Data goals.

He’s also an Adjunct Professor at San Diego State University for the Big Data Analytics Graduate Program and the Department of Mathematics and Statistics.

Ryan’s multilingual experience in Python, R, SAS, JavaScript (React.js & Node.js), and SQL has contributed to his success as a Big Data Scientist; Machine Learning Engineer; Statistician; Full-Stack Application Developer; and Project Manager.

He received his Master of Science in Big Data Analytics from San Diego State University in May 2023 following the successful defense and publication of his Thesis. He holds a Bachelor of Science in Statistics and minored in Quantitative Economics from San Diego State University after graduating Magna cum Laude. His passions include Machine Learning, Deep Learning, Artificial Intelligence, Statistics, full-stack application and interactive dashboard development, data visualization, and Open-Source programming languages.


Title: PROC SQL Programming Masterclass Using SAS®

Scheduled Time: Sunday, September 22nd, 1:30 pm - 5:00 pm

Instructor: Kirk Paul Lafler

Laptop encouraged to follow along with examples.

Abstract: PROC SQL Programming Masterclass Using SAS® provides attendee with core concepts, features and coding techniques on how to effectively use PROC SQL. Attendees learn how to use PROC SQL to access and retrieve data in SAS datasets (tables); essential programming tasks including specifying SELECT statement clauses (i.e., FROM, INTO, WHERE, ON, GROUP BY, HAVING, ORDER BY); execution order of the SELECT clauses; subsetting data with WHERE, ON and HAVING, ordering data and results with ORDER BY, and grouping data with GROUP BY and HAVING; constructing logic scenarios using case expressions; exploring one-to-one, one-to-many, and many-to-many data relationships; creating inner and outer join constructs (i.e., inner and outer - left, right, and full) as well as the application of set operators to combine two or more tables together; using summary (statistical) functions to aggregate data; creating new tables using three different approaches; interfacing PROC SQL and the macro facility to create single-value (aggregate) and multi-value (list) macro variables; the strategies and techniques related to the design and implementation of simple and composite indexes; the application of query debugging techniques to help detect coding errors, warnings, and other issues; and the application of efficient SQL queries (scaling) for improved performance.

Instructor Bio: Kirk Paul Lafler is a consultant, developer, programmer, educator, and data scientist; and currently works as a lecturer and adjunct professor at San Diego State University, a consultant who performs project-based ETL, data analysis, and data science services for clients in a variety of industries, and teaches SAS, SQL, open source, and cloud-based technology courses to users around the world. Kirk has decades of programming experience and specializes in SAS, SQL, RDBMS technologies (Oracle, SQL-Server, Teradata, MySQL, MongoDB, PostgreSQL), Python, R, and other languages and software tools. Currently Kirk serves as the WUSS EC Open-Source Coordinator and is also actively involved with SAS, SQL, Python, R, Database Management Systems, Machine Learning, and cloud-computing user groups, conference committees, and blogs. Kirk is the author of the popular PROC SQL: Beyond the Basics Using SAS, Third Edition (SAS Press. 2019) along with other technical books. He is also an Invited speaker, educator, keynote, and leader; and is the recipient of 28 “Best” contributed paper, hands-on workshop (HOW), and poster awards.