Programmer Pages: Timing is right for SAS Programmers
By John H. Mayer
www.bosoft.com
Boston Software News, Oct 1999, Vol. 3, #2
Copyright (c) 1999 New Media Publications, LLC All rights reserved
You are Visitor #
Developers building a career on their expertise in SAS software, the 4GL software package commonly used to build executive information systems (EIS), data warehouses, or on-line analytical processing (OLAP) systems, are finding themselves in the right place at the right time. Despite a temporary slowdown over the past few months while IT departments directed their attention toward the Y2K problem, the data warehousing market has more than tripled in size over the past three years.
As the program is a popular tool for statistical analysis - particularly in areas like pharmaceuticals, biotechnology, finance, and telecommunications - SAS programmers, analysts, and statisticians who can bring a couple of years' experience to the table have the pick of a wide variety of positions, recruiters report. "We're seeing quite a few positions for mid- to senior-level programmers at pharmaceutical firms in the New Jersey area and many in finance in New York," notes Darren Gutowski, a recruiter with Global Search Inc., an IT recruitment firm in Parsippany, NJ.
SAS programmers may find their best job opportunities lie ahead, however. The software products developed by SAS Institute are particularly strong in the data mining and analysis arena, a field that focuses on the use of mathematical algorithms to search for patterns in large volumes of data. By taking advantage of tools like those offered by the SAS Institute, companies hope to identify new customers, lower costs, and outsmart their competitors.
But while data mining has been closely associated with the rise of large corporate data warehouses, the market has yet to take off. "It's not a mature market so the jobs just aren't out there yet," notes Rachel Meyers, director of the data warehousing recruiting practice at Allen Davis & Associates, a recruitment firm based in Amherst, Mass. that specializes in placing IT professionals in the data warehousing and enterprise resource planning (ERP) fields. "I actually placed a few people last week in data mining positions, but I don't see them as often as data warehousing positions," she admits.
Still Meyers sees the data mining market as full of potential for SAS experts. "While many firms have built massive data warehouses over the past few years, few have begun to make full use of them," she says. "Clearly the next step is to intelligently analyze the data and I think that's why next year is going to be a big one for data mining professionals."
But to take advantage of that trend, Meyers says SAS developers will have to build up their project experience. "I see a lot of people who have used SAS in college, but their experience is largely academic and that just doesn't cut it in the professional world," she notes. "Finding people who have real-world SAS data mining experience is tough."
Recruiters admit it doesn't take much experience to launch a career as an SAS developer. "As long as you've been out there and worked on real-world applications for a year or two, there are some possibilities," says Meyers.
Other skills help. A strong background in statistical techniques and predictive modeling is a plus, as well as knowledge of emerging technologies like case-based reasoning, data-visualization, and neural networks used to analyze complex datasets. A solid operating system background, particularly in Unix, is also an asset.
For those who fit employers' needs, the financial rewards are excellent. Recruiters say senior SAS developers can earn salaries anywhere from mid-five to well into the six figures. The contract market for SAS experts is also hot. "We're seeing contract programmers make anywhere from $60 to $100 an hour," says Gutowski.
End-to-end
solution coming
Anticipation is mounting for SAS Institute's long-awaited Information Delivery Architecture (IDA), the company's first end-to-end data warehousing and decision-support system. Due out this fall, the next release of the company's software suite will reportedly let users pull information from any data source into an SAS data warehouse. The new architecture is expected to support a variety of industry standards including COM, DCOM, ODBC, and Corba. It will also allow users to pull data out of an SAS server and into any database structure that supports those standards. The new system will also sport Web-based user interfaces and allow companies to deliver reports and other analytical data to individual users and groups in HTML and Rich Text formats.
As part of the new architecture, SAS Institute has already debuted AppDev
Studio, a developer's toolkit that lets companies build thin-client interfaces
to the SAS system. Written in Java and including JavaBeans technology,
the new toolkit will let users quickly build query and reporting components
into their thin client.
SHORT ITEMS
New Data Mining Tool
New to its data-mining portfolio, SAS Institute's Enterprise Miner software
version 3.0 adds new clustering techniques for analytics. It also features
Ensemble, a tool that lets developers combine three different data mining
algorithms into a hybrid methodology. A new tool called Reporter lets users
output data from Enterprise Miner in HTML formats.
Programming Tip #1
Random Access
Want to randomly access SAS datasets? The key is the POINT= option
of the SET statement. The following is an efficient example of a program
that reads every second observation from the dataset SASUSER.CLASS.
DATA select;
DO i=1 TO total BY 2;
SET sasuser.class POINT=i NOBS=total;
PUT i=;
OUTPUT;
END;
STOP;
RUN;
It's important to remember that the I-variable does not need to be dropped
in this case because the variable that is used in the POINT= option is
dropped automatically. Also the STOP-statement is needed because otherwise
the program would loop infinitely because the only reason to stop a DATA-step
is reaching the End-Of-File mark. You also need the OUTPUT statement because
otherwise no observations would be sent to the dataset.
Programming Tip #2
Checking Memory Condition
Having trouble with non-executing SUBMIT blocks in a SAS/AF application,
out of memory messages, or freezing applications? The problem may lie in
sparse memory conditions.
Use the CDE command to print the state of your computer's memory in the LOG window:
CDE M - shows the memory pools in use by your SAS-session
CDE I - indicates general memory information
CDE S - stack usage
CDE P - deletes unlocked memory
Programming Tip #3
Graphics Shortcut
Need a graph? Before plunging into SAS/GRAPH, take a look at SAS/QC.
Some of the built-in graphics for distributions and control charts can
provide exactly what you need for a fraction of the effort and include
neat inset tables.
Programming Tip #4
The Windows Look
Want to make your SAS/AF application look more Windows-like? Add the
-$GUIFONT option to your Windows or OS/2 command line which starts SAS:
<sasroot>\sas.exe -$guifont. This will make text in push buttons,
radio and check boxes look more like ordinary Windows button text.
Programming Tip #5
SCL Search Path
An SCL Search Path allows you to have entries spread over several catalogs
without having to know the exact location of an entry. When a two-level
name is used in a DISPLAY function, AF will first search the entry in the
first catalog in the search path, then in the second, and so on. SCL Search
Paths only work for 'normal' display type entries like PROGRAM, FRAME and
SCL. KEYS and PMENU entries are not found when defined in the General Attributes
window.
Programming Tip #6
Have you created a dataset and found the procedures don't execute? More than likely you forgot to put the necessary RUN; statement into the last line of your program. Keep in mind each SAS program must end with the RUN; statement.
Popular books
on SAS:
The SAS Survival Handbook by John Wiseman (Collins Publishing San Francisco, $18.50) ISBN: 0002171856
Applied Statistics and the SAS Programming Language by Ronald P. Cody, Ron Cody, Jeffrey Smith (Contributor) (Prentice Hall, $44.05) ISBN: 0137436424
Quick Start to Data Analysis With SAS by Kenneth A. Hardy (Contributor), Frank C. DiIorio (Duxbury Press, $35.95) ISBN: 0534237606
The Little SAS Book: A Primer by Lora D. Delwiche, Susan Slaughter (SAS Institute, Inc., $24.95) ISBN: 1555442153
SAS Applications Programming : A Gentle Introduction (The Duxbury Advanced Series in Statistics and Decision Sciences) by Frank C. Dilorio, Frank C. DiIorio (Pws Publishing Co, $51.95) ISBN: 0534923909
Ready, Set, Run! : A Student Guide to the SAS Software for Microsoft Windows by Daniel T. Larose, Chun Jin (Mayfield Publishing Company, $14.95) ISBN: 076740422X
Collins Gem SAS Survival Guide by John Wiseman (Harpercollins Pub Ltd UK, $9.95) ISBN: 0004723023
The Auditor's SAS Field Guide 99 (Auditor's Sas Field Guide 1999) by Dan M. Guy, D. R. Carmichael (John Wiley & Sons, $22.95) ISBN: 0471348244
Learning SAS : A Computer Handbook for Econometrics by R. Carter Hill, William E. Griffiths (John Wiley & Sons, $34.10) ISBN: 047158553X
Logistic Regression Examples Using the SAS (R) System, Version 6, First Edition (SAS Institute, Inc, $23.95) ISBN: 1555446744
Professional SAS Programmer's Pocket Reference by Rick Aster (SAS Institute, $16.00) ISBN: 1891957023
SAS Language and Procedures: Introduction, Version 6, First Edition (SAS Institute, Inc., $11.95) ISBN: 1555444105
SAS Language: Reference, Version 6, First Edition (SAS Institute, Inc., $48.95) ISBN: 1555443818
SAS Macro Language: Reference, First Edition (SAS Institute, Inc., $32.95) ISBN: 1555449530
SAS Procedures Guide, Version 6, Third Edition (SAS Institute, Inc., $41.95) ISBN: 1555443788
SAS Programming by Example by Ronald P. Cody, Ray Pass, Ron Cody, Raymond Pass, (SAS Institute, $32.95) ISBN: 1555446817
On-line resources
http://www.sas.com - home page for SAS Institute, Inc., based in Cary, North Carolina.
Comp.soft-sys.sas - site of the SAS Newsgroup
http://rickaster.com - site offers a variety of resources and links for programmers interested in learning about programming in SAS and using the language.
http://www.pace.edu.nesug/main.html - site of the Northeast SAS Users Group serving users in across the Northeastern U.S.
http://www.biostat.wustl.edu/mwsug - the home page of the Midwest SAS users' group offers training opportunties, conference information and other resources.
http://www.datamining.org - site of the Data Mining Institute, a non-profit organization that promotes best practices and supports users with product evaluations, technical reports and product announcements.