Is SAS a programming language?

As a long-time developer and technologist, my news feed always lights up when tech media outlets release their annual "Top Programming Languages" lists. Examples include the annual TIOBE Index, StackOverflow Developer Survey and the IEEE Spectrum list. "SAS" always appears on these lists as a programming language, although historically it scores a middling ranking for reasons I'll describe in just a bit.

However, the 2024 IEEE Spectrum "Top Programming Languages" list recently placed SAS at the #5 position when the ranking is weighted for "job opportunities". This surprise validation has excited a lot of us SAS fans, as this confirms something that we've known all along. Organizations in all industries rely on SAS technology for mission-critical tasks, and they recruit SAS-skilled talent to maintain these and get the most from their SAS investment.

The methodology for tracking programming language popularity usually does not favor SAS. That's because these rankings track public activity such as "prevalence on GitHub or public repositories", "amount of search traffic" in public search engines, or "discussion activity on forums like StackOverflow or Reddit." As a vendor-supported technology, most internet activity for SAS is concentrated on SAS sites and communities. And since SAS customers often work in regulated industries building proprietary methods and models – they cannot and would not share this work on GitHub, at least not at the scale you might see for the top-ranked languages like Java or C. (By the way, SAS users do freely share their knowledge on our own community and in-person at SAS user events, which I am very grateful for.)

I've often said that if we could rank languages by "amount of code that is running in production systems at organizations around the world," SAS would rise to the top.

But does SAS even belong on a "programming languages" list?

I'm going to get pedantic here: SAS is not a programming language. SAS has a programming language. (Actually, SAS has several programming languages.) The SAS programming language you're thinking of (DATA step, PROCs and SAS macro) provides access to all the capabilities of SAS: data management, analytics, machine learning and AI, and more. While most SAS users leverage code to get to these capabilities, there are many other interfaces and methods that provide access as well.

Most of the programming languages that appear on these "top language" lists do not provide inherent capabilities for any specific discipline. For example, Java is a popular object-oriented language that is used to teach computer science concepts in schools. Its standard libraries provide basic access to operating system services and computation. But in industry, Java is most often used with specific frameworks to build things like mid-tier applications or embedded systems. Developers add these frameworks to the stew to provide the capabilities, and the Java syntax is their tool to unlock them. The same is true for C and C++. (By the way, C is the programming language that is used to build the core capabilities of SAS – so we love the C language here.)

Many programming languages are agnostic of discipline/industry. If you tell me that you are a Java or C programmer, then I know what syntax you use for coding but I don't know anything about your real job. Some languages provide cues about your specialty. If you tell me that you are a TypeScript programmer, then I might guess that you build web applications using the React framework…because I know that is a common use for TypeScript. (Many of our SAS application front-end experiences are built with React.)

But if you tell me that you "program with SAS", then I know immediately that you work with data and statistics. With SAS, you do not have to add additional frameworks or libraries to get work done – it's all built-in with hundreds of SAS procedures and analytics actions.

Yes (please) Code

We live in a world with much hype about "low-code" and "no-code" workflows. Companies say they don't want to require programming skills to unlock value from the systems they have invested in. While we have that covered in the SAS Viya platform, we've also doubled down on the developer who just wants to, you know, code.

Are you a SAS fan or a SAS snob?

Here's how I make the subtle distinction:

SAS fan: "I rarely find anything in my job I cannot accomplish by using SAS."

SAS snob: "If I can't accomplish a task with SAS, it's not worth doing!"

We celebrate both personas here, but even I admit that I'm just a SAS fan, not a SAS snob. As a developer I appreciate a specific tool for what it can do for me, but not to the exclusion of everything else.

SAS Viya Workbench will make you a fan

If you're a "get out of the way and let me code" kind of person, then you will love SAS Viya Workbench.
SAS Viya Workbench | Learn more
SAS Viya Workbench is a developer-first IDE that provides access to SAS' analytic capabilities using the SAS programming language, or Python…and soon R. SAS Viya Workbench brings the developer experience to the forefront in a way that I appreciate, using the familiar VS Code environment that I'm already so familiar with. SAS Viya Workbench launches quickly in my browser, relieving me of the task of installing SAS (something I have done hundreds of times without complaint!), and it spins down when I'm not using it. I love to use it for work and it's fun to demo for SAS users.