Jedi SAS Tricks: Some Experience Required


As a Master Chief in US Navy submarines, one of my favorite sayings was “Good judgment comes from experience, and experience comes from poor judgment.”  I've always had difficulty solidly learning new programming techniques in a traditional classroom.  The new techniques and theories I've learned don’t really take root until I've used them to solve real, practical, complex problems.  For me, some experience is required to internalize my new skills and build my self-confidence using them.  But getting real experience on the job has its pitfalls; poor judgment in a production environment can be a real CLM (career limiting move).

Almost two years ago, my manager asked me and my SQL1 “co-conspirator” Davetta Dunlap to write an advanced SQL programming course.  We were given unprecedented leeway in design and delivery methods, so we paused to examine some of the impediments that typically keep people from completing SAS training:

  • I have limited or no travel budget.
  • I need to be able to fit the training to my crazy schedule.
  • Self-paced classes provide flexibility, but without concrete milestones, I never quite manage to finish.
  • Taking several days in a row out of work for training is not an option.
  • I need time to process new learning before diving into the next topic.
  • To really learn new skills, I need more experience than that provided by a few minutes of exercises.

We took a radical departure from our standard SAS training delivery methods in an attempt to address several of those issues at once.  The result is our newest offering, SAS® SQL2: Processing Data Efficiently in Real-World Scenarios.   And I’m excited to announce that the first production class starts April 16, 2012!

The class is comprised of an orientation week, followed by 5 weeks of in-depth study of best practices for using PROC SQL in a realistic, mixed data environment.  Using SAS Global Forum papers, SAS documentation, e-lectures, informal recordings, and moderated online forums, we’ll take a deep dive into PROC SQL and the SQL optimizer and important considerations when using SAS/ACCESS engines to access information stored in relational database management systems (RDBMS).  You’ll need a PC and a modern browser with a reliable broadband internet connection.  We’ll provide access to a Virtual Lab – a Windows desktop complete with SAS, Oracle, and Microsoft Excel – allowing you to experiment and gain hands-on experience tuning both SQL queries and the databases themselves. Weekly exercises emphasize important new concepts.

Another major differentiator for this class is the case study, designed to encourage experimentation, build experience, and bring the entire course into focus.  The case study begins with a complex program that relies heavily on PROC SQL.  It produces the correct results, but runs horribly inefficiently!  We’ll work on it a little each week, applying the new techniques we’ve learned to improve performance, until we have both the SQL code and the databases themselves tuned to our satisfaction.  At the end of class, there will be recognition for the student producing the best-performing case study code and for the student deemed the “Most Valuable Poster” (MVP) in the class forums.

Spreading the study over six weeks provides opportunity for contemplation and assimilation of new material.  The class has well-defined start and end dates, so when the pressure is on - there’s light at the end of the tunnel!  And through it all, you’ll be able to interact asynchronously with your instructor and classmates through the moderated discussion forums.

To get the most value from this course, you’ll need to make sure you meet the prerequisites.  I highly recommend that, before you sign up, you take this brief self-assessment quiz to be sure.  And you’ll need to formally set aside about 6 hours each week to work on this class - I’d recommend no block of time be shorter than about 1 hour.  How you schedule the week’s work is completely up to you, though, as long as you complete your assignments by the weekly due date.

And so, we've done it! The class is finally in production. All that remains is for you to sign up, and for me to enjoy teaching it!  Won’t you join me in the very first offering of SAS® SQL2: Processing Data Efficiently in Real-World Scenarios, starting on April 16, 2010?


About Author

SAS Jedi

Principal Technical Training Consultant

Mark Jordan (a.k.a. SAS Jedi) grew up in northeast Brazil as the son of Baptist missionaries. After 20 years as a US Navy submariner pursuing his passion for programming as a hobby, in 1994 he retired, turned his hobby into a dream job, and has been a SAS programmer ever since. Mark writes and teaches a broad spectrum of SAS programming classes, and his book, "Mastering the SAS® DS2 Procedure: Advanced Data Wrangling Techniques" is in its second edition. When he isn’t writing, teaching, or posting “Jedi SAS Tricks”, Mark enjoys playing with his grand and great-grandchildren, hanging out at the beach, and reading science fiction novels. His secret obsession is flying toys – kites, rockets, drones – and though he usually tries to convince Lori that they are for the grandkids, she isn't buying it. Mark lives in historic Williamsburg, VA with his wife, Lori, and Stella, their cat. To connect with Mark, check out his SAS Press Author page, follow him on Twitter @SASJedi or connect on Facebook or LinkedIn.

Related Posts


    • SAS Jedi

      I really appreciate you taking the time to let me know, Hoggy! It doesn't work anymore from the training page for SQL2, either. I've contacted the web support team; we'll get it back on line as soon as we can.
      Thanks a bunch!

  1. Theresa Gulley-Reed on

    I too was one of the students at the "test-teach." I liked the class because my unit has no money for me to travel to take a class. This class allowed me the opportunity to learn a lot about processing data at the comfort of my desk. Taking the class in this format allows the information to sink in. I think anyone who can't leave the office will benefit from this type of format.

    • SAS Jedi

      The lessons we learned from our test-teach student's feedback were invaluable in guiding the subsequent fine-tuning of the class materials and schedule. I hope this will translate into a truly outstanding experience for the students in our upcoming class, beginning April 16.
      Thanks so much for your participation in the test-teach and your feedback. And thanks, too, for being willing to share your SQL2 experience with everyone here on the blog.
      Stay SASy!

  2. Charu Shankar

    sounds like a great class, I was one of the students who was too late for the test teach. Hope I get to take it sometime with you Mark!

  3. I got to be one of the students in the 'test-teach' while the course was under development. I liked the flexibility to work at my own pace on my own schedule, while still having a set time to interact with the instructor and other students. Because much of my work involves PROC SQL, I was able to implement what I learned immediately. I highly recommend this class for anyone who needs to regularly query large databases!

Back to Top