Thursday, 31 March 2011

NOTE: SAS Office Analytics for Midsize Business

Since when did "mid size" become one word? Answer: since SAS recently released a new product bundle that means small to medium sized enterprises (SMEs) can get the value of Add-in for Microsoft Office (AMO) without the expense of Business Intelligence server.

SAS Office Analytics for Midsize Business provides Enterprise Guide and SAS/STAT in addition to the ability to access SAS data and functionality through Microsoft Office.

This new offering seems to be an excellent first step on the SAS ladder for SMEs and will surely be a sales success for SAS.

Wednesday, 30 March 2011

NOTE: Yet more EG Custom Tasks

In the past I've bemoaned the lack of (free) third-party Enterprise Guide custom tasks (add-ins). Nothing much has changed in that respect, but SAS's Chris Hemedinger recently released another. On this occasion it's for shrinking character variables to the minimum length required for each.

A blog reader who goes by the name of MakingUpTheNumbers commented on my earlier custom tasks post by saying
The problem I generally see with Custom Tasks is that IS people don't want to get into deploying .NET based stuff, 'just' to implement richer dialogues/front-ends etc for shrink wrapped back-end processing.
I'm inclined to agree. MakingUpTheNumbers continued:
IMHO we could do with some sort of embedded "scripting" that was sandboxed to basically do rich cross field dialogue validation. Surely there's something off the shelf SAS could embedded to allow this, and enable users to have "nice" entry points to stored processes, without having to get into heavy weight development and deployment with .NET.

"VBA for EG"
It's certainly the case that many SAS shops are reluctant to invest in additional language skills for their staff and/or to commit to supporting and maintaining application components written in non-SAS languages.

World Statistics in Real Time

As SAS practitioners we deal with numbers every day, right? And, in the business intelligence systems that we help to build, we capture what's going-on within our company plus what's going-on outside with customers, competitors, and the world around us. Given all that, you might be interested to take a look at Worldometers.

Monday, 28 March 2011

The Bus Factor

What is your project's "Bus Factor"? If you don't know, or you don't know what the Bus Factor is, you'd better read this article! If you do know your Bus Factor and it's too low, read this article for some advice on how to increase it.

Wikipedia describes Bus Factor thus:
In software development, a software project's bus factor is an irreverent measurement of concentration of information in a single person, or very few people. The bus factor is the total number of key developers who would need to be incapacitated, (as by getting hit by a bus) to send the project into such disarray that it would not be able to proceed.

"Getting hit by a bus" could take many different forms. This could be a person taking a new job, having a baby, changing their lifestyle or life status, or literally getting hit by a bus: the effect would be the same.
It's name is irreverent, but it focuses our attention on a very serious point. I've worked on many projects where it would have taken just one specific person in the team to have met an accident for the project to have stopped or slowly died due to the huge loss of knowledge.

What is the Bus Factor of your team? What is the smallest group of people in your team whose loss would bring your project to its knees? Look around your team and ask yourself what would happen if each of them didn't come in to work tomorrow. If you find somebody whose disappearance would have a critical effect on your project then you've got a Bus Factor of 1, and you're at risk of big trouble.

The simplest means of improving (increasing) your Bus factor is to encourage sharing and collaboration amongst your team members. Share technical knowledge, and share knowledge of the activities in the team.

  • Get a good spread of expertise
  • Do peer reviews of code
  • Don't encourage ownership of code. Expertise is good; ownership is bad
  • Don't allow a name to be placed at the top of each piece of code
  • If you don't have a daily stand-up meeting, you should at least have a weekly team meeting where everybody shares critical information
  • If possible, have a weekly 20 minute presentation by a member of the team on something interesting they did last week. Make sure it's a different person every week, and everybody gets a turn
The biggest challenge is to make everybody dispensable. That sounds challenging, but it doesn't mean that the company will actually dispense of people. The positive view is to say that team members can more easily be moved from one project to another. And that makes them more valuable because they can make a wider contribution to the company.

Are you dispensable?!


Here's just a brief post about a function I just stumbled across. The PROPCASE function coverts a string to "proper case" wherein the first letter of each word is upper case and all others are lower case. Clearly this is a very useful thing for column headings and labels.

Slightly off topic, but worth a mention, you can do this in Microsoft Office products by positioning the insertion pointer within a word or by selecting text (either one word, or a phrase, or a sentance, or more) and then pressing Shift-F3. Pressing Shift-F3 multiple times cycles between several different forms of "case". I use it primarily in Word, Outlook and Powerpoint. It works slightly differently depending upon whether you have a full stop at the end of a sentance! With a full stop, it cycles between upper case, lower case, and simple sentance case (first letter of first word is upper case) . With no full stop it cycles between upper case, lower case, and proper case.

In recent versions of Office, you may find a ChangeCase button in the Font group in the Home tab. Clicking this offers a menu of sentance case, lower case, upper case, capitalise each word, and toggle case.

Note, Shift-F3 is assigned to the ChangeCase command by default, but your Office administrator may have changed the assignment.

OpenOffice contains similar functionality.

Monday, 21 March 2011

NOTE: Phil Holland - Rock Star!?

So, whilst I'm distracted from my other work, I can't resist sharing the huge chuckle I had when I saw Waynette Tubbs's latest edition of her SASonality series. It was titled "Phil Holland is another SAS Rock Star!" For those of us that know Phil and count him as a friend there are many positive accolades we could offer, but Rock Star is not one that would have come to my mind.

However, having ribbed Phil about the headline, the joke was on me because Phil pointed out that he had actually been lead singer of a pop group in 1971. Kick-back party at SAS Global Forum 2012 maybe?...

Anyway, joking aside, Phil is deserving of Waynette's article, not just for his SAS Global Forum efforts, but for all his good work in publishing VIEWS News every quarter for the last [goodness knows how many] years. Rock on Phil!

NOTE: Relief for my Book Shelves

I confess it's been a bit quiet in this little corner of the internet. I've been busy finalising my SAS Global Forum paper (now done), interpreting it as Powerpoint slides, preparing proposals for an unexpected rush of interest in my services, and keeping my current customers satisfied. Despite the workload, I couldn't possibly ignore the fact that has published a raft of old proceedings from SAS User Group International (SUGI, the forerunner to SAS Global Forum). From 1976 to 1996 to be precise. My thanks to Chris Hemedinger for the alert.

Quite apart from the nostalgia factor (not insignificant), this development allows me to dispose of those huge great printed copies of proceedings from those conferences I attended so many years ago - SUGI 18 in 1993 being my first. Ah, the memories of lugging a heavy suitcase back home after a conference!

Whilst the SAS product has changed hugely over the intervening years, many of the papers still hold valuable tips for use of the Base programming language and macros.

I'm looking forward to this year's conference, but my progress through my workload has been slowed whilst I reminisce over the old proceedings. Bah!

P.S. If you'd like to offer a good home to my proceedings (1993, 95 and 96 I believe), post a comment. First come, first served. But you have to be prepared to pick them up from me in London. I'm not bringing them to Las Vegas in my luggage!!