SAS Macro learning

Reply
Contributor
Posts: 34

SAS Macro learning

I am interesting in learning high quality of sas macro writting. I am sas programer with 5 years of experience, but still I need to explore high level of macro programing.

 

Can anyone suggest online free material

 

Sameer

Esteemed Advisor
Posts: 6,646

Re: SAS Macro learning

Learn it while solving a problem that requires macro programming.

 

If you don't use them regularly, you'll unlearn your skills quite quickly anyway.

 

Anytime I run into obstacles during macro (or any type of) programming, I follow Maxim 1 (Read the documentation); if that doesn't help (rarely), I consult the communities.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Regular Contributor
Posts: 213

Re: SAS Macro learning

Esteemed Advisor
Esteemed Advisor
Posts: 7,203

Re: SAS Macro learning

Not entirely sure what you mean by "high quality of sas macro writting" so going to assume some sort of global library based tool approach.  What I would suggest is to learn some of the principals of Software Development.  Basically everything comes down to a process with inputs and outputs, so this can be documented (Functional Design Specification), where all the information on the process should be documented.  Once you have this done, and the testing setup (and possibly user documentation), actually writing code is next to nothing in the whole scheme of things.

 

As for macro itself, quite a few people find that writing the code to do the process, then re-factoring that working code by replacing repeating parts, parameterising changing variables etc. helps.  

 

One thing I would also add is to not hide anything, make your code as simple, easy to read, and open as you possibly can do.  Sure, we ca all write funky routines, which call compiled procedures within masses of brackets and macro calls and references, but would you like to be the person who has to either use that or try to fix/update it in the future?

Ask a Question
Discussion stats
  • 3 replies
  • 91 views
  • 1 like
  • 4 in conversation