views:

900

answers:

8

I saw some job offers for SAS Programmer. I hear nothing about SAS at my college and I really dont know what to think about it.

Is it a niche programming platform like Oracle Forms or Lotus Notes?

How does SAS Programming compare to Java, C# ?

+5  A: 

SAS is a commercial product that has a programming langage (very Basic-like), lots of statistical analyisis functionality, last I looked a decent-not-good app development environment, and a macro language. I'm sure more since I last worked with it (~10 years ago). It's used a lot in analysis (RAND Corp), banks, energy (Exxon at least), financial institutions etc.

It is a niche product - you won't have the broad opportunities like you get with the other languages you mention - but once you know it, employment opportunities in the using industries/companies are wide open.

EDIT: It also contains a pretty sophisitcated internal data management system, so once you get things into SAS, you don't really have to leave the environment. They have support for dozens of databases and other data sources. You (used to?) can use standard SQL syntax for querying data in the internal data stores, or the language's proprietary features.

DaveE
care to comment why the downvote?
DaveE
Yep, you can use PROC SQL to do SQL-y stuff in SAS. And thank God for that...
Matt Parker
...also, SAS is *nothing* like C# or any other OO - it's a pretty simple procedural language.
Rob Penridge
My recollection at this point could be hazy - I used it for about 10 years, but that ended 10 years ago. edited.
DaveE
Its not really procedural -- most of the functions work on complete "sets" of data, somewhat analogous to the agggregate functions in sql.
James Anderson
SAS is not at all "Basic-like", even if you meant SAS macro. SAS data step is a totally different programming paradigm from procedural languages. SCL is almost like macro except that it is a poor attempt at OOP. SAS Procs are declarative. SAS/SQL being SQL is far from being Basic. SAS/IML is not at all Basic-like. My last count was - there are about 10 languages in SAS and none of them "Basic-like"!
Blessed Geek
@Blessed - as I said above, it's been 10 years since I used it, my recollection of the language itself might not be entirely correct. Doesn't materially change my response to the OP's stated question about employment prospects.
DaveE
+11  A: 

It's the largest privately owned software company in the world. About 80% of Fortune 500 companies use it in some manner so I'd say yes there is a future.

It's used a lot for ETL/Datawarehousing/Reporting/Statistical Analysis, has it's own 4GL and DB.

It falls somewhere between a structural language and a procedural language so is not at all like any OO language (it is much less complex). You don't really do a lot of AppDev in SAS tho if you did you have a couple of choices - 1) Use the built in SCL language to create an interface within the SAS environment, 2) Use AppDev Studio which provides a Java framework for you to develop in, 3) Use a 3rd party tool of your choice.

Cheers Rob

EDIT: Another reason for not doing a lot of App Dev in SAS is that the database is not really geared towards transactional processing.

EDIT2: The reason most computer literate people have not heard of it or been exposed to it is because they generally offer it more in Stat degrees then comp-sci degrees. It is also an expensive product which deters smaller businesses from investing in it. And lots of people tend to confuse it with SAP as well...

Rob Penridge
+6  A: 

I work in the medical research field -- epidemiology and public health. The biostatisticians get their masters with a lot of work and tests based on SAS. I too never used it while doing any computer science work nor industry programming, but researchers heavily rely on its statistical and analysis capabilities. There definitely is a future there if you want to go into scientific research but the biostats people aren't software developers.

edit: The language R is very similar to programming in SAS.

Thien
Programming in R is not like programming in SAS. They both have highly-developed statistical libraries, but that's about the extent of the comparison.
Matt Parker
@Matt, amen to that!
Mark
+2  A: 

SAS is used at Banks to analyse their data. Like Wells Fargo. My bf works there and has friends who work with SAS.

I've never heard of banks using PHP :-p It's usually Java

meilas
+4  A: 

SAS is an industry standard in the pharmaceutical space, so there are quite a number of SAS programmers and statisticians employed by the various kinds of companies (Labs, CROs, Sponsors, and so on) that deal with that kind of work. Given that there seems to be a shift towards better utilization of the massive amounts of clinical and research data these companies already have, there's definitely value for them in an employee being versed in SAS.

In particular, clinical trial data submitted electronically to the FDA is required to be in SAS XPORT dataset format, and a significant portion of the various other data interchanges that go on between these companies is also done in SAS. Since these companies rarely work with data in the same format, as mentioned in another answer SAS programmers are employed to perform ETL processes, etc.

That being said, I don't know what the level of demand for SAS programmers and statisticians currently is, although the ones I've worked with at least seem to be fairly well employed (by the aforementioned types of companies). I have noticed though that most of the SAS programmers I've worked with or seen the work of do things very differently than I would (as someone coming from a general computer science background), preferring to stay within SAS even when I think another tool would be more suited for the task.

Who's right in those cases is entirely subjective and irrelevant, but I don't feel like SAS is "just another language" that you learn; it's generally more of a different mindset. I'm sure there are people that get along just fine in SAS and in Java or Python or C#, but if nothing else it certainly lacks similarity with these languages, and that's an important thing to consider.

Granted, most of what I've said is solely based on personal exposure, so take it with a grain of salt. I do think though that if you truly want to be a SAS programmer, there's no damning reason not to get into that line of work, but I also don't think that it's something one should do just because there's positions available (not implying that was your reason, just throwing that out there). Then again, I don't really think that should be the primary motivation for learning any language, so.

Tim Stone
@Tim - +1, you have spoken the truth.
SoftwareGeek
+2  A: 

SAS is a statistical analysis software (+ some other functionalities like data management etc). It's used a lot by the industry because of the huge propaganda by the software company (they also have some sort of lobby groups working in the regulatory agencies controlling the private industries). SAS has Turing complete language (called data-step) and also sql procedures..., however it is not compiled to machine code (hence much slower than compiled languages like C or Lisp etc...). It is not better than R or S-plus for statistical analysis, only much more expensive. That being said, they do have an excellent help desk that is ready to assist users very quickly and efficiently. Their customer service is one of the best.

francogrex
+1  A: 

SAS is really really emerging now.I am a SAS Certified Base Programmer and SAS Certified Enterprise Miner. SAS is more data oriented.You need to really digg into Data to analysize and find out some patterns which help your business organization to exploit.

SAS has a lot of scope in banking industry ,for example, to analyze risks involved in providing credit card, clinal industry to see how a particular drug behaves on different living beings, health industry (especially medicaid) to analyze a person who has taken medicaid last year will renew it this year or not?

It is also used in Marker Based Analysis.For Example if you see Amazon website you will find a feature which says "A person who has bought some product also has brought another product" .

So these kinds of analysis is done in SAS.

I really had difficulty choosing career between SAS and JAVA.

But i have choosen JAVA because i felt its more challenging and since i like dealing with code rather than databases.

bhargava
+2  A: 

I have a master's degree in statistics and have used SAS nearly every day for most of my career. It is a specialized language, but also necessary for many companies to do their business. E.g., a credit card company that wants to build a logistic regression model to determine which of their customers is most likely to default typically uses SAS for that. R can also be used, and almost every statistics grad student will learn R, but SAS has industrial strength data manipulation power, and can work on hundreds of millions of records if need be. Also, any time a new body of statistical analysis emerges (e.g. Bayesian inference, association analysis, regression trees), SAS is usually the first to code the algorithm as a procedure that an analyst can use without having to develop it themselves from scratch. As someone else mentioned, licensing the software is expensive, but any company that needs it will have it.

I would only learn it if your job entails solving specific analytical problems (e.g. in marketing, engineering, pharmaceuticals, banking). It isn't intended for general programming projects.

jgunnink