BookmarkSubscribeRSS Feed
MarkWik
Quartz | Level 8

How do Expert SAS professionals manage to remember and apply so many options/functions/concepts?

1. I would like to know how do you memorise and manage remember all of it?

2. Is there a knack you have developed to quickly  know where to look?

3. Even if you do, don;t you tend forget whatever you learned just like normal human beings do?

4. How long did it take for you to accomplish what you have so far?years/months?

5. If you achieved in a relatively short time, did you slog out reading voraciously for hours losing sleep?

Please provide newbies some healthy and doable tips barring the 5th question, coz if that's the case I am afraid one would need to live a life after all. Make sense eh?:smileycool:

17 REPLIES 17
Karthikeyan
Fluorite | Level 6

Add this question too...

6. How did you manage to be active in the community all the time ? :smileyconfused:

Kurt_Bremser
Super User

Add this question too...

6. How did you manage to be active in the community all the time ?

Part of my knowledge stems exactly from taking part in the community.

Sharing of knowledge without expectation of material reward is the mainstay of the open source community, without which Linux (the OS on which most of the internet infrastructure is built) or Android (which runs on a Linux kernel and powers the majority of mobile devices) would not be thinkable.

Reeza
Super User

KurtBremser wrote:

Part of my knowledge stems exactly from taking part in the community.

Sharing of knowledge without expectation of material reward is the mainstay of the open source community, without which Linux (the OS on which most of the internet infrastructure is built) or Android (which runs on a Linux kernel and powers the majority of mobile devices) would not be thinkable.

Kind of interesting that SAS is the furthest thing from Open Source in a lot of ways.

Kurt_Bremser
Super User

While the SAS system itself is clearly closed source, the codes we share and use are all open source (with the minor exception of precompiled data steps or such).

It reminds me very much of the roots of the open source movement, look up SHARE (computing) - Wikipedia, the free encyclopedia

Astounding
PROC Star

First off, you have to realize that nobody is expert on all the topics.  Yes, you get good answers here, but the answers frequently come from different people depending on whether the subject matter involves hash tables, exporting data to Excel, SQL, internal workings of the DATA step, the latest functions (including but not limited to PERL regular expressions), formats/reporting, etc.

The best tip (my opinion of course) is to start somewhere, and share what you know.  Pick any topic that you have learned and that has served you well, and develop it into a 10 minute presentation for a local users group.  As part of your preparation, you will sweat the details:  read up on the options and variations, experiment with test programs, think about what questions might be asked.  That preparation is what will ingrain the material so that you won't forget it.

It's not an "on" or "off" level of knowledge ... it's a gradual increase over time.  "Years" is the right timeframe, unless there is some other constraint that you are imposing such as getting a job in a particular field.

Good luck.

jakarman
Barite | Level 11

1/ By experience making the mistakes and than correct those.

2/ It was attitude all from start wanting to know where to find the information instead of doing a pony trick (one time)

    There are some patterns in the information humans are made to work on.

3/ Forgetting all the time, getting the dust of (slowly) when seeing a similar question again

4/ Years  (remember it is still all changing) nobody is able to get all of  what is arround

5/ When be stressed to deadlines yes hours losing sleep

6/ Before work or after there is some time, without a project actively running more.

    Not being embarrassed to share and open up all experience. I am an oldie grown up in the age without internet. 

---->-- ja karman --<-----
CharlotteCain
Quartz | Level 8

Hi Jaap/Robert, Very well put. Also, I appreciate the question of Mark that does give an insight by invoking answers from greats like you. Interestingly, you mentioned "I am an oldie grown up in the age without internet" . I really envy your brilliance. You both and many others among the likes of MattEgg, Xia Keshan , Art T, RW9, PG  have helped me many many times and that's not going to be the last of all help either. Now, for me there is a Jaap and I am certain there was no Jaap nor internet when you were struggling and you somehow swam your way across the stream to reach success. How? I guess this is where Mark is looking for an answer to his 2nd question that I believe he is asking for knack perhaps pointing to documentation or practical examples if i understood the question right. I would also request you to address that better if you don't mind.

Wishing you lots of sunshine,

Charlotte

art297
Opal | Level 21

Interesting collection of questions. However, who is an Expert SAS professional? I’m a Psychologist who has been using SAS for more than 40 years. I don’t know everything about SAS and never will, but I’ve relied on SAS over the years because its always given me a way to solve the analytics I’ve needed to accomplish.

1. I would like to know how do you memorise and manage remember all of it?

1A. I haven’t! Yes, I’ve read the documentation (a good place to start), taken as many courses as I could (another helpful activity), read as many of the posts here and on SAS-L as possible (there’s always something new to learn), try to respond to as many posts as time permits (for me, teaching is an excellent way to learn), going to as many conferences as time and resources permit (besides learning from presenters, and preparing for one’s own presentations is an excellent way to gain a deeper understanding of any topic.

I always break a problem down to the steps that I think would logically provide the needed answer. Each of those steps will require some combination of statements, options, functions, methods and procs. When I know what has to be done, the question then comes down to which statement, option, function, method or proc, or combination of them, will do what I need?

2. Is there a knack you have developed to quickly  know where to look?

2A. First, memory! Over time, like any language, it becomes second nature. However, if I can’t find it in memory, Google! Not perfect (and a group of us have been trying to convince SAS to let us create a better domain-specific search tool), but to date is the best (IMO) tool available. However, it definitely helps to limit the search to sites like SAS-L, support.sas.com, sasCommunity.org, the Discussion Forums, and similar domain-specific sites.

If I still can’t find the answer, I’ll post the question here and on SAS-L.

3. Even if you do, don;t you tend forget whatever you learned just like normal human beings do?

3A. Obviously, unless we happen to be blessed/cursed with a photographic memory (which I, for one, don’t have), we are sometimes going to confront difficulties recalling what we’ve learned. Repetition definitely improves that (which, in answer to question 6, is one of the reasons why I have always devoted a lot of time to the various user forums. Similarly, being considered a cross between a teacher and a serious student {rather than someone who is simply looking for free consultation}, has always come with additional reward of receiving quicker responses).

4. How long did it take for you to accomplish what you have so far?years/months?

4A. 42 years, in addition to the time spent obtaining a PhD.

5. If you achieved in a relatively short time, did you slog out reading voraciously for hours losing sleep?

5A. Define “relatively short”! Yes, there have been and continue to be times when sleep was lost. However, I’ve always tried to balance all aspects of my life, and sleep is important.

6. How did you manage to be active in the community all the time ?

6A. I tried to answer this in response to question 3.


ballardw
Super User

I'm not going to go into specific questions. Some of the concepts related to general programming I learned with use of 7 programming languages or dialects before working with SAS. So things like arrays, order of operations, variable types were established and it was often a matter of looking for "how to do X" that I think should be available.

Much of the rest comes from practice, not as much as Arthur but still pushing 28 years.

Practice and repetition lead to retention like most skills. Expanding skills often came with trying to resolve specific problems/ answer specific types of questions.

jakarman
Barite | Level 11

Charlotte you can mix-up ballardw, Arthur T response with mine. We are childs of our time when computers where very expensive you needed to put more effort in learning programming. Structured programming and analyzing the problems top-down in more easy simple ones while getting to know bottom up the technical options was a common one. Not everyone has succeeded will succeed with those you can see al lot of difference in the resulting coding with explanations.

So what I did was a lot of programing languages (too many to mention). One of those is Algol (high school) Edsger W. Dijkstra - Wikipedia, the free encyclopedia no he was not my teacher but his influence was felt. Later a programming language was just a choice of what was available/wanted.


Flow charts were common but obstinate as I am I like Nassi–Shneiderman diagram - Wikipedia, the free encyclopedia more. The simple reason is you cannot make a mess of that. I do not like Flow charts for another reason,that is: it/is was used for processes that can be automated solved different. That is quit an other world as SAS it is about JCL. Here are some pictures.

jst-script.jpgjst-script-db.jpg

There is nothing of JCL seen. It could be some serial process (left) or something with a time/event driven one in any language even in SAS.
The Develop / Test / Acceptance being different to Prod was a major topic to solve. DTAP release management is still often misunderstood.
No not easy as that one required a lot of effort with for more problematic political issues.  It was build in the 90's I could not make those pictures in those times.
What you are seeing is something organizing work-flows structuring it in header trailer and some supporting standard blocks  with the specific content in between.

Is it possible to do this in SAS? Of course it can be done, recently I did that intitstmt/termstmt are options in SAS, build some standard blocks and an engine and you get to that.

How can you learn to think that way and also to implement those kind of stuff?
That is an impossible question to answer.

What are my personal experiences with that?
That is a more easy question as the answer is not always positive. In a culture were managers and ego-s are the most important ones, you are seen as a problem.
How To Overcome 3 Delusions About Being Innovative | Fast Company | Business + Innovation

 


 

---->-- ja karman --<-----
Reeza
Super User

1. Programming is a primary job function - so things you use daily you remember often.

2. Anything I find interesting I find a way to 'SAVE'. For things on here, I bookmark the thread, for others that I develop I post them on gist.github.com. This is the same method I learned when I first started, though then it was a Word Document with the notes.  If you're in an environment with other SAS programmers its useful to have a group area to share these types of things.

3. All the time Smiley Happy. That's why you post here and get multiple responses that differ.

4. I've been programming in SAS for 10 years in May, with a 2.5 year break in there for a SQL/BI role.  It doesn't matter how long though, I've seen some newbies come in and use things I've never heard/seen.  On the other hand, I've been programming for 20 years in a variety of different languages such as BASIC, C, C++, Fortran, R and most recently Python and JavaScript.  I took a few fundamental of programming courses that have really helped and if you can't pseudocode a problem you can't code a solution. There may be better or faster methods, but the basics go a long way. Efficiency needs to be measured in both human time AND computer time. 

5. Reading documentation is boring. I know people who actually do that, I'm not one of them. Learn how to use/navigate the documentation though, and practice answering questions. Can you lookup a function, figure out the parameters it takes, which are optional? Do you know where to find the list of available formats? If you come on here and don't know the answer can you find it? Googling skills are underrated. 

6. I devote a bit of time on here because I consider it self development. The return on the investment has been immeasurable. Most recently I've been off work, so this is a way to keep some skills sharp until I'm back to work.

Kurt_Bremser
Super User

I acquire knowledge through doing. Put your mind to a problem and solve it, when a problem arises, RTM and find the solution. Sometimes asking someone else is helpful, an answered question will stay in your memory.

Now to your questions:

1. I would like to know how do you memorise and manage remember all of it?

I don't remember all of it. I just try to keep in mind how I found information, so I can repeat a search if needed. IE I know that a certain function solves a certain problem, but I often need to consult the manual for the right ordering of parameters etc

You don't need to know everything, but you need to know where to look

2. Is there a knack you have developed to quickly know where to look?

Can't really answer that. What I know is that I have been an avid reader since the age of 5 (or even earlier, at 5 I read my first real book with 300+ pages), so I have developed the art of pulling information from writing early on. I also always was and still am quite good at memorizing (when singing in the band, I usually try to avoid looking at a sheet for the lyrics, but concentrate on the interpretation instead).

My first paid computer job involved learning on the job. I started with the order "Solve this, and don't disturb the others. Nobody here is getting paid for teaching you, only for rolling out code". So I RTM'ed and solved it, and knew most what I needed to know about my work environment (MAI Business Basic) after week 1.

3. Even if you do, don't you tend forget whatever you learned just like normal human beings do?

Unused information drops out or is "hidden" so it is often hard to find; answer 1 provides the clue.

Things I knew about Pascal, BASIC, FORTRAN, ALGOL, COBOL are mostly gone nowadays, C needs constant refreshing from the manual everytime I need do to something that runs fast on UNIX.

4. How long did it take for you to accomplish what you have so far?years/months?

I started programming in the 70's and took it up again in the early 80's. Since then I have been doing programming almost without interruption, interspersed with CAD (routing PCB's on a HP 9000), soldering, repair work, and so on.

5. If you achieved in a relatively short time, did you slog out reading voraciously for hours losing sleep?

Nope. There were times when I did hacking runs over weekends, working 30+ hours in a row, and looking like Achmed The Dead Terrorist on Monday, but these times are long gone. My SAS knowledge was gained over a span of more than 15 years now (started with 6.11)

Bottom line: don't try to achieve everything at once. It takes time.

Since most information nowadays is available in HTML form, the bookmarks of your browser are your real #1 friend. Everytime I find the answer to a more or less tricky problem, that page goes into the bookmarks in the appropriate section (and there are lots of those: SAS, AIX, SSH, bash and other shell scripting, HTML/Javascript, Jboss, LDAP, X11, Apache,....)

When you ask yourself "how did she know that", the answer is most probably that "she" just had the same problem herself once and still had a faint idea where/how the solution was found. Click-Click-Click - Aaaaah! There!

And keep a wide view on things. Doing something completely different (music in my case) keeps your brain flexible.

Ksharp
Super User

The first key to success is just this SAS Forum . I still remember I was a SAS rookie when I found this forum five years ago. I learned tons and tons of tip and skill and knowledge from all of the SAS users . Especially like   data _null_;   Patrick   Peter.C   Arthur.Carpenter , they are all senior member of this forum . They are staying this forum longer than me , at least greater than six years .

The second key is reading SAS documentation, they have everything you want . When you get stuck ,don't forget to take a look at it .

Xia Keshan

jakarman
Barite | Level 11

To add to Reeza's note. It is funny that SAS has a far from Open  Source approach, even docs are often closed, they are building that lot on open source. Java eclipse but also al lot behind curtains as UE/Centos Hadoop Apache stuff Webased Xerces etc. but missing a lot of the open standards.

---->-- ja karman --<-----

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 17 replies
  • 3036 views
  • 12 likes
  • 11 in conversation