WUSS 2024 Classes

WUSS will once again be offering a full menu of optional pre- and post-conference training classes on a variety of topics taught by seasoned experts. Classes are not included in conference registration and must be added separately.

Through the regular registration deadline, your first half-day class is just $200 and each additional half-day class is only $150, so bundle multiple classes for the best value. (All classes are $250 during late registration.)

Don’t miss this chance to maximize your experience at WUSS 2024!

Course Title (click for description) Instructor(s)
(click for bio)
Time
Tuesday, Sep. 3, 2024 – HALF DAY MORNING
Share Your Code with SAS Packages – Tutorial from Zero to Hero Bart Jablonski 8:00 AM – 12:00 PM
PROC SQL Programming Masterclass Using SAS Kirk Paul Lafler 8:00 AM – 12:00 PM
Get Your Report to Excel, PDF, or the Web LeRoy Bessler 8:00 AM – 12:00 PM
Tuesday, Sep. 3, 2024 – HALF DAY AFTERNOON
Create Charts and Plots That Are Quickly, Easily Understood LeRoy Bessler 1:00 PM – 5:00 PM
Efficiency Tips for Database Programming in SAS Mark Jordan 1:00 PM – 5:00 PM
Modern Practices in Causal Inference Jim Blum 1:00 PM – 5:00 PM
The Dummy’s Guide to Getting Started with SAS Chris Hemedinger 1:00 PM – 5:00 PM
Wednesday, Sep. 4, 2024 – HALF DAY MORNING
SAS Arrays: Fundamentals and Applications Paul Dorfman
& Don Henderson
8:00 AM – 12:00 PM
Comparative Analysis: SAS Data Step vs. Python for Data Scientists Workshop Charu Shankar
& Peter Styliadis
8:00 AM – 12:00 PM
Data Cleaning 101 Ron Cody 8:00 AM – 12:00 PM
Dates, Times, and More! Derek Morgan
& Richann Watson
8:00 AM – 12:00 PM
Friday, Sep. 6, 2024 – HALF DAY AFTERNOON
Translating a Report Template to PROC REPORT code Jane Eslinger 1:00 PM – 5:00 PM
Quick Start to Mixed Modeling Danny Modlin 1:00 PM – 5:00 PM
Cooking with the SAS Hash Object: From Basic Ingredients to Gourmet Entrées Paul Dorfman
& Don Henderson
1:00 PM – 5:00 PM
Macro’s There For You – A “Zero to Hero” Introduction to Be Friends with SAS Macro Language Bart Jablonski 1:00 PM – 5:00 PM



Course Descriptions

Share Your Code with SAS Packages – Tutorial from Zero to Hero
Bart Jablonski
Tuesday, September 3, 2024
8:00 AM – 12:00 PM PDT

When working with SAS code, especially when it becomes more and more complex, there is a point in time when a developer decides to break it into small pieces. The developer creates separate files for macros, formats/informats, and for functions or data, too. Eventually the code is ready and tested and sooner or later, you will want to share code with another SAS programmer. Maybe a friend has written a bunch of cool macros that will help you get your work done faster. Or maybe you have written a pack of functions that would be useful to your friend. There is a chance you have developed a program using local PC SAS, and you want to deploy it to a server, perhaps with a different OS. If your code is complex (with dependencies such as multiple macros, formats, datasets, etc.), it can be difficult to share. Often when you try to share code, the receiver will quickly encounter an error because of a missing helper macro, missing format, or whatever… Small challenge, isn’t it? How nice it would be to have it all (i.e. the code and its structure) wrapped up in a single file – a SAS package – which could be copied and deployed, independent from OS, with a one-liner like: %loadPackage(MyPackage).

Back to top


PROC SQL Programming Masterclass Using SAS
Kirk Paul Lafler
Tuesday, September 3, 2024
8:00 AM – 12:00 PM PDT

PROC SQL Programming Masterclass Using SAS provides attendees 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; and using iterative programming constructs and processes with PROC SQL and the Macro language to dynamically create data-driven programs; 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.

Back to top


Get Your Report to Excel, PDF, or the Web
LeRoy Bessler
Tuesday, September 3, 2024
8:00 AM – 12:00 PM PDT

Let your program get to those destinations. The SAS Output Delivery System (ODS) supports a variety of output formats, also called “output destinations” in the documentation. Three of them are the ones where most programmers and the viewers of their output go. They are the formats that recipients and seekers of information most frequently encounter and find useful. SAS ODS Excel output lets your recipient reformat the data however desired, or do post-delivery analysis. Excel probably holds most of the world’s data. One of my consulting clients had a corporate standard of requiring all SAS reporting output be delivered in Excel. ODS Excel permits you to programmatically customize your deliverable, rather than do it manually after export. SAS ODS PDF presents a finished, edit-proof package (or, at least, not editable without special software). SAS ODS HTML5 gives the recipient data tips or mouseover text for graphics, and allows you to interlink report content components, or provide links to anywhere you want to be linkable. When plot points are too dense for annotation or axis tables, data tips are the only recourse to give the viewer correct and certain knowledge. HTML5 is the latest and best version of HTML. All three destinations support hyperlinks, and outputs in any of the formats can link to related output in another of the formats. Learn how to take advantage of these SAS-provided reporting conveniences and courtesies for the recipients of your work product, whether tabular or graphic or text. The only prerequisite is familiarity with SAS basics.

Back to top


Create Charts and Plots That Are Quickly, Easily Understood
LeRoy Bessler
Tuesday, September 3, 2024
1:00 PM – 5:00 PM PDT

Learn best ways to get beyond the defaults, for wise design with SAS ODS Graphics, THE Graphics SuperPower Tool. Not just How To, but What To. ODS Graphics comes with SAS at no added charge. Put its super value to work for your company, your client, or yourself. No prior experience is needed for this course. Visuals are for quick easy inference, but precise numbers are needed for correct reliable inference. Learn all the ways to deliver precise numbers. Free the viewer from estimating where bar end or plot point lands on the axis (axes). Provide certainty, not guesses. That’s only one of the key design principles. Color misuse is a common obstacle to visual communication. Learn how my graphic and color design principles are implemented with widely applicable examples. Learn from what I learned, discovered, and invented over 44 years of effort to get the best out of SAS graphics. See Time Series Plots and Trend Lines, simple or overlaid, including use of uncommon, but powerful, design concepts, for when the familiar and customary is not enough. Categorical Data has so many ways to show itself, and with designs to make it show itself better. For One Categorical Variable: Bar Chart; Dot Plot as horizontal bar chart alternative; Needle Plot as vertical bar chart alternative; Pie Chart, and Donut Chart as a hole-in-the-middle alternative; Text Chart as a surprising but equally communication-effective bar chart alternative. For Two Categorical Variables: Stacked, Clustered, or Overlaid versions of bar charts, dot plots, and needle plots; Butterfly Chart, the bi-directional horizontal bar chart for when the second categorical variable has only two values; Line Chart as on-image second categorical variable companion to a bar chart; Bubble Plot; Heat Map with a Discrete Legend or an Actually USABLE Gradient Legend. ODS Graphics lets you package composites of different graphic views of the same data, or similar graphic views of related data, using PROC SGPANEL, PROC SGSCATTER, or ODS LAYOUT. This is a course for which there is no substitute. It can take you from no experience to proficient at creating charts and plots for quick easy understanding—instant, immediate, unambiguous communication. Resources will be suggested where the student can find additional and more advanced possibilities and capabilities than can be covered in the half-day course.

Back to top


Efficiency Tips for Database Programming in SAS
Mark Jordan
Tuesday, September 3, 2024
1:00 PM – 5:00 PM PDT

Do you use database tables in your SAS programs? Have you ever wished your SAS code would run faster? Then this is the class for you! We’ll quickly review how SAS/ACCESS Interfaces work, take a deep dive into identifying processing bottlenecks, then practice tuning SAS programs for faster execution. This course is designed for both SAS® 9 and SAS® Viya® programmers. 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; and Modify SAS programs to maximize pass-through to the database and minimize execution time.

Back to top


Modern Practices in Causal Inference
Jim Blum
Tuesday, September 3, 2024
1:00 PM – 5:00 PM PDT

This course gives an introduction to best practices for causal inference in a variety of scenarios, including perspectives from human health/epidemiology, social sciences, and econometrics. We start with foundational concepts including counterfactual outcomes, exchangeability, and positivity, and contrast these in the realms of designed experiments versus observational data. This leads to a look at common pitfalls when attempting causal inference from non-experimental data, including several forms of confounding and bias. Finally, the bulk of the course applies current methodology from statistics and machine learning for making appropriate causal inferences to real, observational data sets.

Back to top


The Dummy’s Guide to Getting Started with SAS
Chris Hemedinger
Tuesday, September 3, 2024
1:00 PM – 5:00 PM PDT

This course is designed for beginners who want to learn the basics of SAS software and programming. By the end of this course, you will be able to: Understand what SAS is and how it works; Navigate the SAS user interface(s) and access data sources; Write and run SAS programs using basic syntax and logic; Perform common data manipulation and analysis tasks; Generate and customize reports and graphs; and Use SAS online resources and communities to enhance your skills.

Back to top


SAS Arrays: Fundamentals and Applications
Paul Dorfman, Don Henderson
Wednesday, September 4, 2024
8:00 AM – 12:00 PM PDT

SAS arrays are powerful and versatile data structures, indispensable to any SAS programmer in many aspects. For instance, with respect to program organization, using arrays helps make your code better structured, less hard-coded, and thus more robust. SAS arrays are also essential if you need to implement your own algorithms. In particular, in the area of in-memory data search and retrieval, no other SAS facility offers greater benefits in terms of execution speed and efficiency. Last but not least, SAS arrays can make your program much terser and clearer by eliminating wallpaper code, the result being not only more aesthetical but cleaner and easier to inherit. This class is intended to offer the attendees a journey from the basics to advanced usage of SAS arrays in the hope that everyone from a novice to an array geek will learn something useful and interesting. The course comprises two parts: (1) Fundamentals and (2) Applications. The subtopics in part 1 part include: · Why SAS arrays? Propaedeutics by example. · Fundamental concepts: Arrays as indexed data structures. · A peek under the hood: How array items are accessed by the index behind-the-scenes. · Compile-time vs run-time, array declaration timing vs array reference. · Basic declaration syntax and naming conventions. · Array items: Data types and lengths. · Arrays indexes and ranges, dimensional functions. · Explicitly indexed arrays of PDV variables (“ordinary” arrays): ® Arrays indexing existing PDV variables. Special _numeric_ and _character_ arrays. ® Arrays creating new PDV variables and indexing them. · Implicitly indexed SAS arrays vs explicitly indexed arrays. · Multi-dimensional arrays, data type rules, dimensional functions. · Parallel arrays, using multidimensional arrays as parallel. · Temporary SAS arrays: Rules of reference. Temporary vs “ordinary” arrays. · Compile-time array initialization: syntax and rules. Cf. run-time initialization. Part II (Applications) covers various aspects of using SAS arrays for data management: · De-wallpaperizing SAS code: Using array indexation to implement in-loop statement repetition. · Compressing a data set by resizing its character variables. · Dynamic random sampling without replacement. · Implementing stacks and queues. · Using arrays for table lookup and data retrieval: ® Based on comparisons between keys (linear search, binary search and their variations). ® Based on direct addressing (ley-indexed search, hash search, bitmap search). · Using
array table lookup for subsetting and joining SAS data files. Discussion: SAS Arrays vs the SAS hash object.

Back to top


Comparative Analysis: SAS Data Step vs. Python for Data Scientists Workshop
Charu Shankar, Peter Styliadis
Wednesday, September 4, 2024
8:00 AM – 12:00 PM PDT

Python has emerged as a versatile tool with a rich ecosystem of libraries for data manipulation tasks. Attendees will adopt a dynamic, comparative approach, leveraging the Python programming language. Additionally, they will delve into Python’s rich ecosystem of libraries for data manipulation and examine powerful libraries such as Pandas, discovering how to perform similar data manipulation tasks using Python’s intuitive syntax and extensive library support. Through hands-on exercises, participants in the workshop will gain proficiency in leveraging Python’s capabilities for data management tasks, including data cleaning, preprocessing, and transformation. By providing a comprehensive comparative analysis, this workshop aims to inform data scientists and practitioners about the relative merits of the SAS Data Step and Python for data manipulation, empowering them to make informed decisions when selecting tools and methodologies for their data science projects.

Back to top


Data Cleaning 101
Ron Cody
Wednesday, September 4, 2024
8:00 AM – 12:00 PM PDT

This half-day workshop discusses ways to look for data errors using both DATA step programming and Base SAS procedures. We start with programs and procedures to detect errors in character data. Functions such as NOTDIGIT and NOTALPHA are especially useful in this regard. For numeric data, we investigate methods for detecting data points outside of fixed ranges and continue on to develop programs for automatic outlier detection.

This workshop does much more than just showing you techniques for detecting and fixing data errors—it’s also aims to make you a better SAS programmer. Whether you are new to SAS programming or are a veteran programmer, you will take valuable programming tips and tricks away with you.

Although this course does not require you to know the SAS macro language, you will be taught how to run macros that perform a variety of data cleaning functions. For example, one macro, called AUTO_OUTLIERS, checks for possible data errors in numeric data, using a concept called “trimmed statistics.”

Back to top


Dates, Times, and More!
Derek Morgan, Richann Watson
Wednesday, September 4, 2024
8:00 AM – 12:00 PM PDT

Dates and times are an important part of most SAS data sets. Understanding how dates and times are read and displayed in SAS can make the handling of the dates much easier. SAS has myriad functions and formats that can be used for SAS date and time handling. This class takes a deeper dive into some of the more powerful, yet lesser-known features of SAS date and time handling. Topics include functions, formats and informats that can be used for ISO 8601 standards, date intervals, and calculating differences between dates. In addition, the course illustrates how user-defined functions, formats, and even user-defined intervals can be created to meet your specific needs. Lastly, it shows how to use dates when producing graphs.

Back to top


Translating a Report Template to PROC REPORT code
Jane Eslinger
Friday, September 6, 2024
1:00 PM – 5:00 PM PDT

Reports are an everyday fact of business. As a SAS programmer, you might be given a template or mock-up of a report that needs to be created from the data you are already working with. It can sometimes be hard to know where to begin in developing your code. In this seminar, we will investigate several examples of report templates that you might encounter. We’ll discuss coding strategies such as: creating hidden ordering variables; using dummy variables for section breaks and summary rows; manipulating report headers with ACROSS variables and spanning headers; generating page breaks; and applying style attributes and formats. With these strategies, we’ll break down a report into its individual pieces and translate that into PROC REPORT code.

Back to top


Quick Start to Mixed Modeling
Danny Modlin
Friday, September 6, 2024
1:00 PM – 5:00 PM PDT

In this course, 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 using PROC MIXED and GLIMMIX. Examples of mixed models will be shown including two-way mixed models, analysis of covariance with random effects, and repeated measures. We conclude with a look at PROC LMIXED in CAS for large, sparce matrices.

Back to top


Cooking with the SAS Hash Object: From Basic Ingredients to Gourmet Entrées
Paul Dorfman, Don Henderson
Friday, September 6, 2024
1:00 PM – 5:00 PM PDT

Most programmers who use the SAS hash object, only use it to do table lookup. But it can do so much more! This class will be useful for both novice and experienced hash users who wish to more fully understand how the hash object works and what it can do for you. The first half of the course will address the basics and discuss some lesser-used but important and powerful features. The second half of the course will use an extended case study that demonstrates how using the hash object for data aggregation which can offer big savings in run time and memory footprint compared to other SAS techniques, but can also make certain tasks that were once unapproachable by other methods, now solvable.

Back to top


Macro’s There For You – A “Zero to Hero” Introduction to Be Friends with SAS Macro Language
Bart Jablonski
Friday, September 6, 2024
1:00 PM – 5:00 PM PDT

“So no one told you SAS was gonna be this way Your code’s a joke, you’re broke Your 4GL’s DOA It’s like you’re always stuck in second gear Like it hasn’t been your SET, your MERGE, your LOG Or even your LIB, but %Macro’s there for you (When a loop starts to roll) %Macro’s there for you (And I’ve used them before) %Macro’s there for you (‘Cause they’re help for you too)” The power and speed of 4GL comes from two places. The first, 4GL is a compiled language, no more to add, period. The second, 4GL is static, i.e. all input and output datasets, variables lengths, arrays dimensions, etc. have to be provided upfront. If a data step reads data set A and produces data set B you cannot change it without rewriting the code. Moreover, you cannot react differently than with SAS Error, when A does not exist. So, being a professional SAS 4GL Programmer, without knowing macro language, indeed may feel like “being stuck in second gear”. Macro language introduces flexibility to the code. It allows us to dynamically react to data changes. It gives you the power to write programs that write programs. During the workshop we gradually go through the macro language fundamentals and how to use them: – We start from macro variables, their role in code. Also we learn about functions which operate on macro variables. – Next, we introduce some simple macro programs and discover how the macro processor thinks. – Then we take a look at the conditional logic (%if-%then-%else) and iterative processing (%do-loops). – Subsequently, we touch more advanced subjects, like interaction between 4GL layer and macro language layer with: call symputx(), symget(), or SQL’s INTO: clause. – Eventually we will try to reach out to the hardcore and understand macro quoting. The workshop assumes you have written at least a few DATA steps or PROC steps, but no prior macro language knowledge is required.

Back to top


Meet the Instructors

LeRoy Bessler is a data analyst, data artist, and world’s longest serving advisor on best practices for graphic design and use of color with SAS® software.. When not working on his next book to follow “Visual Data Insights Using SAS ODS Graphics: The Guide to Communication-Effective Data Visualization”, he is a family man, carpenter, gardener, arborist, potamologist, occasional political activist, and formerly an elected and appointed official in local government. LeRoy earned a Ph.D. in physics (minor in mathematics). His first professional job was teaching mathematics at Milwaukee School of Engineering. As Senior Fellow in Theoretical Physics at Queen Mary College, University of London, he found the theory of submicroscopic elementary particles becom­ing increasingly unphysical. (It’s even more so today.) He returned to America to devote his energy to the macroscopic needs of business using computers and networks, in finance, health insurance, property and casualty insurance, manufacturing, energy, and retail. Eventually LeRoy decided to specialize in SAS software. He has supported SAS servers, SAS software, SAS data, and the users of those facilities, as well as working as data analyst and SAS programmer. His distinguishing expertise with SAS software has been communication-effective data visualization, SAS ODS, Natural Intelligence, and Software-Intelligent Application Development for reli­ability, reusability, maintainability, extendability, and flexibility—to deliver Visual Data Insights™ and Strong Smart Systems™.

Back to top

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, and is a member of the committee that designed the Clinical Trials Programming Using SAS 9.4 Certification Exam.. He earned his MS in Applied Mathematics and PhD in Statistics from Oklahoma State University.

Back to top

Dr. Ron Cody is a retired professor from the Rutgers Robert Wood Johnson Medical who now works as a private consultant and national instructor for SAS. A SAS user since 1977, Ron’s extensive knowledge and innovative style have made him a popular presenter at local, regional, and national SAS conferences. He has authored or co-authored numerous books such as Learning SAS by Example, 2nd edition, Getting Started with SAS programming: Using SAS Studio in the Cloud, A Gentle Introduction to Statistics Using SAS Studio in the Cloud, SAS Functions by Example, 2nd edition, Cody’s Data Cleaning Techniques, 3rd edition, and many other books on SAS programming and statistics. During his career at Rutgers Medical School, he authored or co-authored over 100 articles in scientific journals.

Back to top

Paul Dorfman is a software consultant with a focus on developing SAS software solutions from ad hoc to building complete data management systems in telecom, banking, insurance, retail, engineering, research, retail, and pharma industries. A native of Ukraine, Paul got his feet wet with SAS in 1988 while pursuing his graduate degree in Kyiv Institute for Physics. In 1997, he started sharing his theretofore acquired SAS expertise in the area of implementing quick, radix, and combsort algorithms of sorting SAS arrays. In 1998-2000, he pioneered direct-addressing search methods by implementing key-indexing, hashing, and bitmapping algorithms based on SAS arrays. In the early 2000’s, Paul developed and published high-performance data manipulation techniques based on the SAS direct memory access functions (ADDR, PEEKC/POKE). The first practical user of the SAS hash object (2003), Paul introduced techniques for parameter type matching, sorting, unduplication, filtering, data aggregation, dynamic file splitting and memory optimization. They are shared in his SUGI, SGF, SESUG, NESUG, WUSS papers, BASUG/PhilaSUG presentations and in the 2018 SAS Press book on the hash object co-authored with Don Henderson. Paul has been active on SAS-L and communities.sas.com and presenting at global, regional, and local SAS conferences and meetings since 1997.

Back to top

Jane Eslinger is an independent programmer based in North Carolina with over 20 years of experience with SAS. Jane has authored two books: The SAS® Programmer’s PROC REPORT Handbook: Basic to Advanced Reporting Techniques and The SAS® Programmer’s PROC REPORT Handbook: ODS Companion. Her SAS certifications include Advanced Programmer for SAS®9, SAS® Certified Data Scientist, and SAS® Certified Advanced Visual Business Analyst. She has presented at numerous conferences and users’ groups across the US, including SAS Global Forum from 2015 to 2020. Jane has served as a statistician and statistical programmer in the social science and clinical research fields. She earned her BS in Statistics from NC State University.

Back to top

Chris Hemedinger Meet Chris Hemedinger, one of the authors of SAS For Dummies and a long-time contributor to SAS Enterprise Guide. Chris has been a SAS user since he joined SAS in 1993. He started as a writer, creating documentation and examples for SAS products. Later, he became a developer, working on features and enhancements for SAS Enterprise Guide, SAS Studio, and other SAS software. He also spent some time as a consultant, helping customers to adopt and use SAS technologies. Currently, Chris is the Director of SAS User Engagement, leading a team of experts who create content and resources for SAS users of all levels and backgrounds. Chris is an avid SAS programmer and blogger, sharing tips and tricks on how to get the most out of SAS. If you find that you just cannot get enough of this guy, you can watch some of his popular tutorials on the SAS Users YouTube channel, or settle in with some popcorn and watch a few of his recorded webinars for the Ask the Expert series at SAS.com.

Back to top

Don Henderson, now retired, had a long career as a SAS user, programmer, developer and instructor. He started using SAS software in 1975, designing and developing business applications with a focus on data warehouse, business intelligence, and analytic applications. Don was one of the primary architects in the initial development and release of SAS/IntrNet software in 1996, and he was one of the original developers for the SAS/IntrNet Application Dispatcher. He has written three SAS Press books and along with Paul Dorfman is the co-author of Data Management Solutions Using SAS Hash Table Operations: A Business Intelligence Case Study.

Back to top

Bartosz Jablonski, PhD – but everyone calls him Bart. Bart is a mathematician working and playing with data, an open-minded analyst, and science enthusiast. Bart is also a consultant, seasoned SAS professional (since 2009), and SAS teacher. Bart gained experience in various domains including: higher education, telecommunication, clinical trials, and banking; mostly by resolving various “analytic tasks” using (among others) advanced SAS techniques mixed with domain knowledge or statistical methods. Since 2015 he has led the SAS Programming course at the Faculty of Mathematics and Information Science (Warsaw University of Technology). Bart is a speaker at various local and international SAS-related conferences; a Certified SAS trainer; and an author, designer, and developer of the SAS Packages Framework, which allows users to create SAS Packages – a practical, organised, devops oriented, and “easy to work with” code sharing medium for SAS. He’s not afraid to admit he’s a SAS geek… an active member of Polish SAS Users Group (PolSUG) who also has “third and a half dan in sasensei”. To turn on Bart’s internal problem solver mode just say: “you probably can’t do something like this in SAS…”

Back to top

Mark Jordan (a.k.a. SAS Jedi) grew up in northeast Brazil as the son of Baptist missionaries. After graduating from high school, he worked for two years as a mainframe computer operator for a large bank before joining the Navy. In his 20-year career as a US Navy nuclear power plant operator, primarily in submarines, Mark pursued 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 acquired ten years of experience as a SAS programmer and application developer in heavy manufacturing and banking before coming to work for SAS in 2003. He now writes and teaches a broad spectrum of SAS programmingclasses, and his book, “Mastering the SAS® DS2 Procedure: Advanced Data Wrangling Techniques”, is in its second edition. In his spare time, Mark enjoys drone photography, playing with his grandchildren, hanging out at the beach, and reading science fiction novels.

Back to top

Kirk Paul Lafler is a consultant, developer, programmer, educator, and data scientist; and teaches SAS Programming and Data Management in the Statistics Department at San Diego State University. Kirk also provides project-based consulting and programming services to client organizations in a variety of industries; and teaches “virtual” and “live” SAS, SQL, Python, Database Management Systems, Excel, R, and cloud-based technology courses to users around the world. With decades of programming and systems experience, Kirk specializes in SAS, Python, SQL, Database Management Systems (Oracle, SQL-Server, Teradata, MySQL, MongoDB, PostgreSQL), Excel, R, and other software and tools. Currently, Kirk serves as the WUSS EC Open-Source Advocate and Coordinator and is actively involved with several SAS, SQL, Python, R, Database Management Systems (DBMSs), 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.

Back to top

Danny Modlin has been a Training Consultant at SAS since April 2011. Before SAS, Danny 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. Danny has a Bachelor of Science in Mathematics from Elon University, a Master of Mathematics from UNCW, and a Masters of Statistics from NCSU.

Back to top

Derek Morgan has experince as a professional SAS programmer for over 35 years in academia, pharmaceuticals, and other businesses. Derek has presented many times at SAS User Group conferences. Currently an associate director of Global Macro Programming for Bristol Myers Squibb, he is author of the SAS Press Book, “The Essential Guide to SAS® Dates and Times,” and known as “Mr. Dates and Times”. In his spare time, he plays electric bass, and has performed onstage with three members of the Rock and Roll Hall of Fame.

Back to top

Charu Shankar, a SAS instructor with a background in computer systems management, engages with logic, visuals, and analogies to spark critical thinking. Prior to joining SAS, Charu served in the United Nations managing educational projects and taught computer and natural languages at Rotman School of Management, University of Toronto. At SAS, Charu curates and delivers unique content on SAS, SQL, Python, Viya, etc. via the SAS YouTube channel, SAS global forum, SAS Ask the Expert Series, SAS Training Post, etc. When not coding, Charu teaches yoga and loves to explore Canadian trails with her husky Miko.

Back to top

Peter Styliadis is a Senior Technical Training Consultant and Curriculum Lead at SAS. With expertise in Python, SAS, SQL, SAS Viya programming, and SAS Visual Analytics, he excels in crafting and delivering engaging learning content through courses, workshops, conferences, blogs, and customer mentoring sessions. In his role, Peter leads the development and delivery of comprehensive data engineering, analytics, and visualization courses. Leveraging SQL, SAS, and Python, he adeptly handles diverse data sources, including databases, JSON, XML, CSV, parquet, SAS tables, and text files. Peter also actively engages in customer meetings to understand learning needs and assists in the adoption of SAS. Committed to continuous learning and embracing emerging technologies, Peter remains dedicated to navigating the evolving landscape of data analytics.

Back to top

Richann Jean Watson is an independent statistical programmer and CDISC consultant based in Ohio who loves to code and is very active in the SAS User Group community. Richann is the co-author of SAS Press book “SAS® Graphics for Clinical Trials by Example”. When Richann is not busy coding or volunteering in the SAS User Group community, she is spending time with her family and cute but psycho puppy, Loki, or doing some of her favorite crafts such as crocheting or sewing.

Back to top