SOUTHEAST SAS USER GROUP CONFERENCE

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 4-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.

If you have any questions regarding a tutorial, please contact our Tutorial Coordinators, Richann Watson and Lesa Caves, at e-mail tutorials@sesug.org .

SESUG has scheduled 10 virtual tutorials! Check out the list of tutorials below.

Sunday, 10/17/2021 1:00pm - 5:00pm EST
Tutorial Title Instructor
Building Reusable Tools Using the SAS® Macro Language Kirk Paul Lafler
Mapping SAS® Processing to R Brian Varney

Wednesday, 10/20/2021 8:00am - 12:00pm EST
Tutorial Title Instructor
Take Advantage of Public Use Datasets (PUFs) to Learn SAS® Analytical, Graphical and Reporting Techniques, Analytic and Data Management Tools, and Explore Specialized Techniques Louise S. Hadden
Advanced SAS® Macro Language Techniques for Building Dynamic Programs Josh M. Horstman

Wednesday, 10/20/2021 1:00pm - 5:00pm EST
Tutorial Title Instructor
Hands-On Data-Driven Design: Developing More Flexible, Reusable, Configurable SAS® Software Troy Martin Hughes

Thursday, 10/21/2021 8:00am - 12:00pm EST
Tutorial Title Instructor
Creating Reports in R Using the SASSY System David J. Bosak
Advanced DATA Step Programming Techniques Josh M. Horstman

Thursday, 10/21/2021 1:00pm - 5:00pm EST
Tutorial Title Instructor
Data Cleaning Techniques Using SAS® Kirk Paul Lafler

Friday, 10/22/2021 8:00am - 12:00pm EST
Tutorial Title Instructor
Professional Reporting: Beyond the Basics of PROC REPORT Jonathan Duggins

Friday, 10/22/2021 1:00pm - 5:00pm EST
Tutorial Title Instructor
Advanced Topics in ODS Graphics James Blum


Tutorial Details

Title: Building Reusable Tools Using the SAS® Macro Language

Scheduled Time: Sunday, October 17th, 1:00 pm - 5:00 pm EST
Instructor: Kirk Paul Lafler

Abstract: The SAS® Macro Language is a powerful feature in the Base SAS software for extending and customizing the capabilities of the SAS System. This course presents a practical approach to macro tool design and development, along with a collection of techniques for constructing reusable and effective macros tools. Attendees learn basic design principles in the development of reusable macro tools; how to build functional macros that process SAS statement code using efficient and portable code; the different methods of creating macro variables including using the macro – PROC SQL interface to create single-value and value-list macro variables; how to create user-defined macro routines that accept keyword and positional parameters; utilize and implement defensive programming techniques to make your macro routines smarter; explore how to build a library of macro utility tools; and macro debugging and troubleshooting code errors, warnings, and other special messages.

Instructor Bio: Kirk Paul Lafler is an entrepreneur, consultant, programmer and educator, and has been a SAS user since 1979. Kirk is a lecturer and adjunct professor at San Diego State University; an advisor and adjunct professor at the University of California San Diego Extension; and teaches dozens of SAS, SQL, Excel, R and Python courses, seminars, workshops, and webinars to users around the world. As the author of several books including PROC SQL: Beyond the Basics Using SAS, Third Edition (SAS Press. 2019) along with hundreds of papers and articles on a variety of SAS topics; Kirk has been selected as an Invited speaker, educator, keynote and section leader at SAS conferences and meetings worldwide; and is the recipient of 25 “Best” contributed paper, hands-on workshop (HOW), and poster awards.

 

Title: Mapping SAS® Processing to R

Scheduled Time: Sunday, October 17th, 1:00 pm - 5:00 pm EST
Instructor: Brian Varney

Abstract: The SAS and R coding languages are different enough that it is not straight-forward to convert a SAS program to an equivalent R program. This tutorial will examine differences and side by side examples in interactive development interfaces, variable and data structure differences, and data processing operations that are commonly carried out in SAS.

Instructor Bio: Brian Varney has been a SAS® consultant, trainer, and senior technical manager for over 30 years with the Experis Solutions Group. Located in Kalamazoo, Michigan, he keeps busy with providing SAS & R training, consulting support and business development (plus a few hours a week for soccer & rugby).

 

Title: Take Advantage of Public Use Datasets (PUFs) to Learn SAS® Analytical, Graphical and Reporting Techniques, Analytic and Data Management Tools, and Explore Specialized Techniques

Scheduled Time: Wednesday, October 20th, 8:00 am - 12:00 pm EST
Instructor: Louise S. Hadden

Abstract: Interest in data sources useful for demonstrating statistical, graphical and reporting techniques has increased with the exponential growth of interest and activity in the fields of Data Science, Machine Learning, and Natural Language Processing. Thus, freely available and reliable banks of data have become highly sought after. This tutorial will introduce three high quality and robust data sources for analytic work suitable for journal submissions, and explore in depth public use data sets and BASE SAS tools that can be used to analyze and graphically represent measures and trends. These data sets include USAID’s Demographic and Health Surveys which include health survey data from Afghanistan to Zimbabwe; the Centers for Medicare and Medicaid Services' Care Compare Tool (data.medicare.gov and data.cms.gov) focusing on nursing homes; and CDC’s National Health and Nutrition Examination Survey (NHANES) which will demonstrate how to work with a complex sampling design. Exploration of the NHANES survey will also include the use of National Cancer Institute (NCI) macros to analyze usual daily intake. The tutorial will prepare attendees to construct an analysis plan (AP) and standard operating procedures (SOPs) for researching, analyzing and documenting PUFs. SAS tools used will be standard statistical and reporting tools available in BASE SAS, as well as geographic tools including PROC GEOCODE.

Instructor Bio: Ms. Hadden is a Lead Programmer Analyst at Abt Associates Inc., a social science research firm. She is an expert SAS programmer, focusing on health and environmental issues. She works on numerous government contracts, including with CMS, CDC and state governments. She is co-author on multiple peer reviewed journal articles, as well as more than one hundred SAS papers, a number of which earned best contributed paper. Several journal articles were published using public use data sets. She has presented, volunteered and participated on conference teams at multiple SAS user group conferences. She is also the girl with the SAS tattoo.

 

Title: Advanced SAS® Macro Language Techniques for Building Dynamic Programs

Scheduled Time: Wednesday, October 20th, 8:00 am - 12:00 pm EST
Instructor: Josh M. Horstman

Abstract: This seminar shows you how to take advantage of SAS Macro Language capabilities that enable you to write dynamic programs and applications. By mastering the concepts and techniques presented in this class your programs will become free of hard-coded data dependencies, thus eliminating the need to re-write the code every time a data set name, variable name, or other data attribute changes. Topics will include how to build and process macro variable lists, using the macro language to control the data environment, using control files, working with datasets and libraries in the macro language, accessing the SAS data dictionaries, and other miscellaneous macro topics that will help you create dynamic code.

Instructor Bio: Josh Horstman is an independent statistical programmer based in Indianapolis with over 20 years’ experience using SAS in the life sciences industry. He specializes in analyzing clinical trial data, and his clients have included major pharmaceutical corporations, biotech companies, and research organizations. A SAS Certified Advanced Programmer, Josh loves coding and is a frequent presenter and trainer at SAS Global Forum and various regional and local SAS users group. Josh holds a bachelor's degree in mathematics and computer science, and a master's degree in statistics from Colorado State University.

 

Title: Hands-On Data-Driven Design: Developing More Flexible, Reusable, Configurable SAS® Software

Scheduled Time: Wednesday, October 20th, 1:00 pm - 5:00 pm EST
Instructor: Troy Martin Hughes

Abstract: Attend and receive a FREE copy of the author’s 600-page book, SAS® Data-Driven Development: From Abstract Design to Dynamic Functionality, Second Edition, released in 2021. Students will receive the physical book in advance of this virtual training, which includes all course scenarios and code. Sample code will also be provided electronically so students can run all programs in real-time using SAS Display Manager, SAS Enterprise Guide, or SAS OnDemand for Academics.

This HANDS-ON tutorial installs the student as the new SAS consultant within Scranton, Pennsylvania’s most infamous paper supply company — charged with improving software functionality and performance through data-driven software design. Navigate office intrigue and antics to gather software requirements, analyze hardcoded legacy SAS programs, and refactor (improve) software through data-driven design principles and methods. Help Jim, Dwight, Phyllis, and Stanley sell more paper through higher quality data-driven software!

Data-driven design describes software in which configuration items, business rules, data validation rules, data models, data dictionaries, report style, and other dynamic elements are maintained in external data structures — NOT in underlying code. Benefits include increased software flexibility, reusability, maintainability, modularity, readability, interoperability, extensibility, and configurability. In other words, data-driven design improves your software quality. Topics include:

  • Compare undesirable hardcoded design with preferred data-driven design, and demonstrate the methods to help SAS practitioners refactor from the former to the latter
  • Build reusable procedures, functions, and call routines (subroutines) using SAS macros and PROC FCMP (the SAS function compiler)
  • Demonstrate built-in and user-defined data structures (including parameters, macro lists, arrays, hash objects, control tables, configuration files, data sets, Excel spreadsheets, CSV files, and CSS files)
  • Use SAS components that support data-driven development (including CALL EXECUTE, CNTLIN option in PROC FORMAT, SYSPARM option, SAS dictionary tables, and CSSSTYLE option in PROC REPORT)
  • Ingest positional flat files, CSV files, SAS data sets, and other transactional files, and dynamically identify altered or invalid file format/structure through prescriptive data dictionaries
  • Create color-coded, “traffic light” quality control reports that automatically identify bad data while standardizing good data
  • Configure the style (e.g., format, font, color scheme, graphics) of data products using user-defined SAS formats and CSS files
  • Learn how user-defined configuration files can facilitate software flexibility, by enabling different users to achieve dynamic functionality based on user-specified preferences that can be saved, modified, and shared with other users
  • Understand how master data management (MDM) can support data structures that are leveraged by SAS, Python, and other languages/applications simultaneously


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 100 presentations, trainings, and hands-on workshops at SAS conferences, including at SAS Global Forum, SAS Analytics Experience, WUSS, SCSUG, SESUG, MWSUG, PharmaSUG, BASAS, and BASUG. He has authored two groundbreaking books that model software design and development best practices: • SAS® Data-Driven Development: From Abstract Design to Dynamic Functionality, Second Edition (2021) • 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+, 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: Creating Reports in R Using the SASSY System

Scheduled Time: Thursday, October 21th, 8:00 am - 12:00 pm EST
Instructor: David J. Bosak

Abstract: This tutorial will explore how to create statistical reports using R and the SASSY system. The SASSY system is a set of packages designed to make R easier for SAS® Programmers. The system includes tools to create a log, declare a libname, perform a datastep, define a format, generate a report, and more. The overall experience makes writing code in R more similar to writing code in SAS. If you are a SAS programmer who wants to be more comfortable and productive in R, then this tutorial is for you!

Instructor Bio: David is the Chief Software Architect at Archytas Clinical Solutions, 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 five R packages published on CRAN.

 

Title: Advanced DATA Step Programming Techniques

Scheduled Time: Thursday, October 21th, 8:00 am - 12:00 pm EST
Instructor: Josh M. Horstman

Abstract: To solve complex coding problems with the SAS® DATA step, one must go beyond a basic understanding of the individual statements. You need to understand how the various statements interact with each other and how their options can be leveraged to build DATA step code that provides innovative solutions to the toughest of problems. Based on Art Carpenter’s book, Carpenter’s Guide to Innovative SAS® Techniques, this class is a must for the DATA step programmer who wants to take his or her programs to the ‘next’ level. Topics include working across multiple observations using look-ahead and Look-back techniques, employing the DOW loop, taking advantage of double SET statements, working with hash objects, performing table lookups, using arrays to transpose data from columns to rows and back again, evaluating complex expressions, applying data set options, adopting new DATA step functions (and old function with new options), and more. This course is designed to be taken by a student who has a basic understanding of the DATA step and its primary statements. The material will focus on advanced topics that will give the student a deeper understanding of the operation of the DATA step. Through examples, students will be exposed to innovative techniques for solving difficult programming problems.

Instructor Bio: Josh Horstman is an independent statistical programmer based in Indianapolis with over 20 years’ experience using SAS in the life sciences industry. He specializes in analyzing clinical trial data, and his clients have included major pharmaceutical corporations, biotech companies, and research organizations. A SAS Certified Advanced Programmer, Josh loves coding and is a frequent presenter and trainer at SAS Global Forum and various regional and local SAS users group. Josh holds a bachelor's degree in mathematics and computer science, and a master's degree in statistics from Colorado State University.

 

Title: Data Cleaning Techniques Using SAS®

Scheduled Time: Thursday, October 21th, 1:00 pm - 5:00 pm EST
Instructor: Kirk Paul Lafler

Abstract: If you are spending too much time and money dealing with data quality issues, then this course is for you. SAS® users often turn to off-the-shelf, or user-built, tools to handle messy data issues. Unfortunately, and all too often, many tools in use today fall short and/or have steep learning curves to master. This course explores the problems found in data, the types of data quality issues, and the various programming techniques users can learn and use to clean their data, once and for all. Attendees learn how to check and clean character and numeric data issues, handle missing data, remove duplicate data based on the row’s values and/or keys, read and write date/time variables, and apply data integrity rules to prevent messy data from creeping into a data set or table. Using PROC FREQ, PROC MEANS, PROC PRINT, PROC SORT, PROC SQL, PROC SUMMARY, DATA step programming techniques including BY-group and FIRST. and LAST. processing, and numerous SAS functions to clean data issues and anomalies.

Instructor Bio: Kirk Paul Lafler is an entrepreneur, consultant, programmer and educator, and has been a SAS user since 1979. Kirk is a lecturer and adjunct professor at San Diego State University; an advisor and adjunct professor at the University of California San Diego Extension; and teaches dozens of SAS, SQL, Excel, R and Python courses, seminars, workshops, and webinars to users around the world. As the author of several books including PROC SQL: Beyond the Basics Using SAS, Third Edition (SAS Press. 2019) along with hundreds of papers and articles on a variety of SAS topics; Kirk has been selected as an Invited speaker, educator, keynote and section leader at SAS conferences and meetings worldwide; and is the recipient of 25 “Best” contributed paper, hands-on workshop (HOW), and poster awards.

 

Title: Professional Reporting: Beyond the Basics of PROC REPORT

Scheduled Time: Friday, October 22nd, 8:00 am - 12:00 pm EST
Instructor: Jonathan Duggins

Abstract: This tutorial covers various uses of PROC REPORT for producing professional reports -- an essential skill for SAS programmers regardless of industry. The tutorial begins with an overview of PROC REPORT, DEFINE usages, and an introduction to COMPUTE blocks. Techniques to customize appearance such as fonts and colors as well as techniques to affect the structure of the report, such as nesting, aliasing, including summary rows, and deriving new columns are covered next. Finally, advanced customizations such as drilldown reports and integrating images into a report are covered to round out this thorough introduction to generating high-quality reports. No experience with PROC REPORT is expected at the outset of this tutorial; however, by the end of the tutorial, participants will have the skills necessary to create a variety of professional reports.

Instructor Bio: Jonathan Duggins is an Associate Teaching Professor in the Department of Statistics at North Carolina State University. He has worked in industry as a biostatistician where he regularly handled and analyzed data with SAS and has taught at multiple universities. Jonathan has always been dedicated to education and that is his main role at NCSU where he teaches both face-to-face and distance education courses at undergraduate and graduate levels. The majority of his courses focus on statistical programming in SAS. More information and public course materials are available at jonathanduggins.com.

 

Title: Advanced Topics in ODS Graphics

Scheduled Time: Friday, October 22nd, 1:00 pm - 5:00 pm EST
Instructor: James Blum

Abstract: This tutorial covers advanced graph, chart, and map construction with PROCs SGPLOT, SGPANEL, SGMAP, and SGRENDER. The tutorial begins with an overview of PROC SGPLOT plotting statements and options, along with styling statements and options. Advanced SGPLOT topics begin with annotations, and alternatives to standard SAS/GRAPH annotations using SGPLOT statements and options. Next, the lesson adds in attribute maps and their uses. These are used as part of the next topic, the POLYGON statement in PROC SGPLOT, which is compared and contrasted with the SGMAP Procedure. PROC SGPLOT concepts are then extended to the SGPANEL Procedure, for which various layout and styling options are covered. For graphs, charts, and maps from all of these procedures, methods for embedding tool-tips and hyperlinks to create interactive/drill-down results are also covered. Finally, some time is given to creating custom graphs with PROC SGRENDER (and PROC TEMPLATE). Foundational experience with PROC SGPLOT is expected at the outset of this tutorial; and, by the end of the tutorial, you will have the skills necessary to extract much of the power of the ODS graphics procedures.

Instructor Bio: Jim Blum is a co-author of Fundamentals of Programming in SAS: A Case Studies Approach, published in 2019. Since August of 2000, he has been a Professor of Statistics at the University of North Carolina Wilmington where he has developed and taught original courses in SAS programming for the university. These courses cover topics in Base SAS, SAS/SQL, SAS/STAT, and SAS Macros. He also regularly teaches courses in regression, experimental design, categorical data analysis, and mathematical statistics; and he is a primary instructor in the Master of Data Science program at UNC Wilmington which debuted in the fall of 2017. He has experience as a consultant on data analysis projects in clinical trials, finance, public policy and government, and marine science and ecology. He earned his MS in Applied Mathematics and PhD in Statistics from Oklahoma State University.

 



If you have any questions regarding a tutorial, please contact our Tutorial Coordinators, Richann Watson and Lesa Caves, at e-mail tutorials@sesug.org .