Category Archives: 64-bit

Another View of R and Big Data

I was reading a blog entry the other day that just blew me away. Librestats has a blog entry entitled, “R at 12,000 Cores” and it is a very good (and fun) read. It’s amazing what can be done by the open source advocates and this article is a great example of that.

After reading the article, I can’t help but think about the relationship between extremely large data, server size (both CPU’s and RAM) and how fast data is growing. There has to be a way to crunch through the amount of data that is piling up and this article addresses that issue.

I believe you will begin seeing vendors embrace R more openly, mainly because they have to embrace it. There’s not any companies that can develop code at the break neck pace that the R community is putting out packages. It’s truly amazing and cost effective to model data in the way that the above article describes the state-of-the-art.

Even small companies can make use of multiple servers with dozen of cores and lots of RAM rather inexpensively. Using Linux and R on a set of servers, an organization can have a hundred cores at their disposal for crunching data and not paying very much in licensing fees.

I have been giving some thought to making the Bridge to R run in parallel on a single server as well as across a set of servers using WPS and pdbR or Rmpi. This way, WPS would handle the management between the servers and the data transparently and provide for number crunching at very low cost. God knows we have a few extra multiple core servers laying around here so it may be an interesting adventure to give this a spin!

My first thought and intention is to make the code backward compatible. Perhaps just add a macro that can be called that contains the information needed to implement running R across cores and on a grid. It could be something as simple as:

%Rconfig(RconfigFile=xyz, RunInParallel=True||False);

The remaining statements in the Bridge to R would continue as they are and the R code would be pushed to the servers based on the information in the RconfigFile. WPS would still collect the output from these jobs and route the appropriate information to the log and listing window as well as the graphics to the graphics viewing window (wrapped in HTML) for users to view their output.

 

Try WPS and Enter to Win a Google Nexus 7 Tablet

Have you ever found yourself interested in exploring and evaluating the capabilities of WPS (pronounced whips), a SAS language compatible software application? Whether you are looking at ways to save money on reduced license fees or expand your BI infrastructure, WPS is a high value, low cost alternative for many organizations who are currently using the SAS System.

WPS implements the BASE language including old and new style macro’s and the data step with functions, formats and informats. WPS also includes the most popular BASE PROCS and some graphics including GCHART, GPLOT and GREPLAY.

WPS Core supports 41 Base Procedures.
WPS Engine Modules supports 24 database and access engines.
WPS Statistics contains 15 Statistical Procedures.
WPS Graphics supports GCHART, GPLOT and GREPLAY.

Remember, WPS is priced inclusively, meaning you don’t pay separately for each module. You can learn more about WPS by visiting  our web site at: http://www.minequest.com/WPS.html. Also, available for download is a brochure that describes WPS in more detail including a list of supported PROCS and database access engines at: http://www.minequest.com/downloads/WPS_General_Overview.pdf.

As they often say, the best way to learn about something is to try it. Between August 10, 2012 and September 30, 2012, you can become eligible to win a Google Nexus 7 tablet by taking out a free 30 day evaluation copy of WPS on Windows (desktop and/or servers), Linux on x86 or Mac OS X. You must request your evaluation from MineQuest Business Analytics, LLC, an authorized WPS reseller. See Rules for drawing for more information.

Rules for drawing: Only one evaluation request per person. Must be a resident of the United States or Canada. Must not be a current WPS license holder or have taken out an evaluation in the last nine (9) months. Requests for evaluations must be made through MineQuest at: http://www.minequest.com/ReqEval.html . Drawing to be held on October 3, 2012

 

About the author: Phil Rack is President of MineQuest, LLC and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and is a authorized reseller of WPS in North America.

Workstation Analytics

When I first started out my career as a data analyst, I had an Amdahl mainframe at my disposal for running surveys and stripped down census data for research analysis. Data sets of a couple hundred thousand records in size was considered large and since we were sharing the resources with hundreds of other users, it was often slow.

But back in the late 70’s and early 1980’s, that is what is what we typically had to use. Data analysts were pretty darned good at minimizing their use of computing resources by only keeping the data they needed for running their analysis. Move forward thirty years to 2011 and 2012 and we can see just how much things have changed. And I’m not just writing about the hardware, but the way we use the software too.

In a lot of ways, today’s servers are yesterdays mainframes. We share resources and keep the data on easily accessible disk drives. We have IT staff who want to run the show as much as possible, and thus, have held back many creative strategies and applications in business intelligence that could have been beneficial for the business. Some things don’t change.

Servers have their place in an organization and can be tremulously useful for such tasks as running production jobs, maintaining operational and analytical data in a single place, etc… But they are often eclipsed by a good Analytical Workstation where users are not sharing resources such as disk throughput, CPU utilization and memory. I have often seen “Rock Star” data analyst/developers who do 99% of their work on a workstation.

I want to point out right now that there’s a significant difference between an Analytical Workstation and a desktop PC. Even if your IT department doesn’t think so, I’m here to tell you that there is a difference. An Analytical Workstation has a minimum of 8GB of RAM and 16GB and 32GB are quite common. An Analytical Workstation has at least four logical CPU’s and again it pretty normal to have eight or more LCPU’s as well. An Analytical Workstation has multiple disks for storing permanent data sets and for temporary work files.

Contrast the above workstation with the typical corporate desktop (2gb of RAM, a single 320B hard drive and a low end Pentium D with HyperThreading) and you can see the tremendous difference between the two. As someone who also goes onsite to perform consulting, I’m often saddened at how disadvantaged analysts are who work in marketing analytics or risk analytics. The typical refrain is something along the line of, “We have a big server where you can run your large jobs.” Yeah, you can submit those jobs and then wait for a long time to get your output back.

If you are a small company, you may not have a choice in terms of running desktops and servers. Running a server requires maintenance and expertise that most start up firms and smaller companies just don’t have. The additional cost of a server license is not just limited to the analytical software either. You pay a significant amount of money for a server license operating system than for a desktop license.

My objective is to strongly encourage you to educate and petition your supervisor or friendly IT staff about the advantages of an analytical workstation over a standard corporate desktop. The best argument is a clear and concise one as well as one that is financially sound. Make sure they understand that they are paying per LCPU on a server and that’s not the case on an analytical workstation. Your organization should treat your processing needs in a more individual fashion and not with a one-size-fits-all philosophy.

About the author: Phil Rack is President of MineQuest, LLC and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and is a reseller of WPS in North America.

Analytic Workstations – Conclusions

Continued from: Analytic Workstations – Part III

After going through a few days of tests and tuning on the new workstation, I can say I’m satisfied with the results. I’m sure I could squeak out a few more seconds here and there as it pertains to reductions in run times but I don’t think it is worth the additional effort.

Going forward, I think it would be an interesting exercise to examine the effect of swapping out the Intel I5 processor for an Intel I7. That would take the workstation from a four core to an eight core (i.e. four cores with hyperthreading) so CPU time should theoretically improve.

The other component to look at would be adding memory to the system so it has the full compliment that the motherboard can handle — 32GB’s. The additional memory would be useful for the large sort used in the benchmark as well as adding another 4GB to 8GB of memory to the level 1 cache.

Finally, the other enhancement that I’m loathe to do is overclock the CPU. I don’t think that’s a worthy exercise because how often do you see a corporate workstation over clocked? I’ve never seen one to be honest.

One issue that I did not mention in the previous blog posts is the advantage gained by using a Level 1 Cache like FancyCache and using SSD’s. By using FancyCache, I reduced the hits and the wear-and-tear on the SSD’s. If I don’t have to write to the SSD’s and can instead use the Level 1 Cache, my investment in Solid State Disks should last longer.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.

Bridge to R v3

The newest version of the Bridge to R is finally done. The Installation and User Guide has been written and the sample programs have been updated. This release is a milestone for us because we have the Bridge to R running on three major platforms. These platforms are Windows (both desktop and servers), Mac OS X on x86, and Linux on x86.

The manuals are available online and can be found at http://www.minequest.com/Bridge2R.html and select the appropriate guide from the left hand side of the page. We will be revising the guides over the next few months as we port some additional utilities over to the OS X and Linux specific versions.

We will continue to provide the Bridge to R to customers who license WPS from MineQuest as a no cost solution.  If you have licensed WPS from another reseller or from World Programming, there is a cost involved to acquire the Bridge to R. The cost for the Bridge is $240 on a desktop (Windows or OS X) without regard to the number of logical CPU’s on the workstation.

The cost for the Bridge to R on a Windows or Linux server is $599 annually per logical CPU. Running R on a large server is advantageous because you can often access  much more memory than a desktop traditionally offers and servers tend to have faster CPU’s.

If you have licensed WPS from MineQuest and desire a copy of the new version, contact us and we will begin shipping the files on Saturday, March 31st.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.


Adventures in Porting

We’ve been busy porting the new version of the Bridge 2 R over to both the Mac and Linux platforms from Windows. The Windows release of the Bridge always allowed for the use of the Bridge from within the Eclipse Workbench. WPS didn’t have the Workbench as the GUI on the Max or Linux until version 3 which is the latest release. So, here’s what I found porting a large program that has to talk to different operating platforms (i.e. calls to the OS) for such things as delete files, move files, copy files, read directories, etc… and still interface with R.

The mundane part of porting was converting a lot of “\” to “/” throughout the code. In retrospect, we could have done a better job writing the Bridge in the first place to accommodate these conventions, but we didn’t have the intention of porting code back then either.

Here’s a couple of the gotcha’s that we experienced. When you read a directory on Linux or OS X, the structure is slightly different between the two and you have to accommodate that issue. The other BIG issue is that the pathnames are much longer on Linux and OS X when reading and writing to the WPS work folders. We ended up resizing our string variables to handle that specific difference.

The above might sound trivial but one think we discovered is that when you restart your server on OS X and Linux, the new work folder is contained inside the previous folder. For example, your original folder, let’s call it work1 is now hosting work2, your new folder. Now the path name is /work1/work2. But in reality, the names of the work folders are not work1 or work2 but long strings that can be hundreds of characters long. If you have a user who likes to restart their WPS Server, you can eat up a lot of string space quickly.

Since we store a lot of metadata for the Bridge 2 R inside the work folder, R has to be able to cope with very long filenames and I’m not convinced that it really copes all that well. Speaking of file names, here’s another anomaly between Windows and Linux/OS X systems. if you have a filename such as “myfile.txt ” (note the blank space at the end of .txt) Windows handles that just fine. Windows will interpret that as meaning you wanted “myfile.txt” However, if you write such a file or try to read a file with that name under Linux or OS X, then those two names are distinctly different. On Ubuntu or Fedora, that name shows up as “myfile.txt\” when you list the files from the terminal.

It took us about three days to port the Linux version of the Bridge over from Windows. Much of that time was spent dealing with the issues in the previous paragraph. We then took the ported Linux code and tested it on OS X. It took about 20 minutes to modify the section dealing with the difference in reading directories between the two platforms, and we then had a new version of the Bridge to R running on OS X.

In retrospect, porting the code over to Unix/Linux systems was worth the effort. It took a few days for us to do the porting and much of that was due to being naive about the new ported destinations. I will talk soon about the new enhancements (and a programming change users will have to make) in the Bridge to R in my next post.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.

Software We Use and Love on a Daily Basis

WPS – World Programming System from World Programming LTD. WPS is a SAS Language compatible software system that implements many components of the SAS language on many platforms. WPS starts at just over $1,206 on a desktop. Check out the MineQuest website for more information.

R – R Project for Statistical Computing. The 64-bit port is definitely the way to fly if you are using R. R has amazing graphics and Hadley Wickham’s ggplot2 is worth the effort of learning R.

Microsoft Office 2007 and 2010 – Microsoft Office is the standard for writing documentation, use of spreadsheets and email on both Windows and OS X platforms. I probably use Excel, Word and Outlook more than any other office productivity too.

Skype – used a lot for both domestic and foreign phone calls and text messaging. Skype is easy to use and can provide your company with the ability to do business overseas at reasonable costs. Also, for a mere $5 a month, you can have group video calling as well as calls to any phone in the US and Canada.

MeetingBurner – MeetingBurner is relatively new and since we have such few users on a web conference (typically five or six) this makes perfect economic sense. We’ve not used it much but it is fast and is free for organizations that will have fewer than 15 attendees in a meeting. One great plus is that it integrates Skype for audio.

Oracles Virtual Box – We use this to reduce our exposure to running multiple physical servers. Oracle’s VirtualBox saves a lot of money for testing software because it can dramatically reduce your power consumption by not having individual servers.

Nuance Paper Port – It’s amazing how much paper we scan here. Bills, invoices, checks and all kinds of business related materials. With both a Canon MFC printer and a Brother MFC printer, we just throw documents into the hopper and scan away. You can learn about Paper Port by going to their website here.

UltraEdit – UltraEdit from IDM is the standard for programming editors. We use it on the Linux and Windows desktops. Soon we will be using it on the Mac desktop to port the Bridge to R over to OS X.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.

Introducing WPS Version 3

It’s a new year and version 3 of WPS is out and available. There’s a lot of new items in this release and I think it has been well worth the wait. I personally feel that this is the block buster release that will turn heads in the corporate environment due to so many added features. With version 3, World Programming has made the software more friendly and easier to use, added new procedure support both statistically and in the core language, and added support for more language elements.

I’ve been beta testing WPS 3 for a few months now and so I’ve had a bit of time to try the software out and evaluate it extensively. Below is a list of items and features that really stood out to me in WPS V3. It’s far from being exhaustive but these are probably the most pertinent for many WPS users and SAS customers who are considering WPS as an alternative to SAS.

Workbench Support on Additional Platforms

The Eclipse workbench is available on Unix, Linux, Windows, AIX, Solaris and OS X platforms. The GUI that you’ve been using on Windows is now available on all the platforms except for z/OS. Amazingly, the Eclipse Workbench is identical (and I mean identical) across the platforms. Now when companies and organizations add servers to their data center and the users will have the same identical experience (read no learning curve) on all the platforms.

Apple OS X Support

WPS has been available on Apple’s OS X for a while, but now it has the Eclipse Workbench as the GUI. The WPS implementation on OS X is native, meaning you don’t have to run Parallels or Boot Camp to run WPS on your Mac. WPS is a true 64-bit implementation on OS X. The technical specifications for the Mac OS X implementation is that it needs to be an x86 chip and you will need version 10.5 (Leopard) or higher. WPS V3 works fine on Lion as you can see in the screen shot below.

Click here to view larger image.

About a month or two ago I bought a Mac Mini just to test WPS and to port the Bridge to R over to it. The Mac implementation is a bit prettier than on Windows or Linux in my opinion. It may be the font, but it does look nice as you can see in the image above. In testing WPS on OS X, I was amazed how easy it was to transfer my knowledge of the WPS implementation on Windows over to OS X.

There’s a lot of folks who love their Macs and WPS running natively gives the Mac faithful a SAS language compatible system that takes full advantage of their hardware. Mac users give up nothing over the Windows or Linux versions of WPS and desktop pricing for the Mac is the same as for the other desktop platforms. I’m excited for the university students where there is a preponderance of Macs and I can see the take up of WPS because of the hardware and operating system support.

Linux Support

As mentioned earlier, the workbench is also available on Linux. I have it running on both Ubuntu 10.4 LTS and Fedora 13. As you can see in the screen shots below, WPS looks the same on each of the platforms. One thing to note about the Linux version, it is only available as a server license. But for shops that have a Linux platform, WPS executes exactly like the Windows version in that it provides the end users the same experience as it pertains to the GUI.

Click here to view larger image.

Many shops run Red Hat as their preferred version of Linux and WPS does run just dandy on that platform. I find that many of the larger customers we have do use Red Hat, but I suspect that the smaller businesses use Ubuntu or Fedora instead.

AIX and Solaris

The workbench is also available on these platforms. I don’t have a license or even a machine to run these two implementations on, but I would suspect that the experience is identical to the Apple and Linux versions discussed above.

WPS Link

This is an exciting feature that is being introduced in WPS 3.0. WPS Link is a Client/Server architecture that allows you to remotely execute code on Linux or Unix servers. So for example, you can be running WPS on your Windows or Mac OS X desktop and submit your WPS code over to a WPS Linux server. The log and listing files come back from the remote machine to your desktop. WPS Link is different from SAS/Connect in that this is just a client to execute your programs on the remote box. You can’t upload and download files from the desktop to the server. But, if a lot of your processing takes place on the server and that’s where your data sets reside, this is a nifty solution for processing data on a remote server.

WPS Link is easy to setup from you WPS Desktop. Simply go to the Server Connection tab and select Local. Right mouse click on Local and you get a drop down menu. Select New || Server Connection || Remote SSH.

From that point you get a dialog box where you simply fill out the hostname (or IP Address) the Connection Name (how about “WPS Remote Server”) your user name and the Launch Command. The Launch command was the most difficult part for me. It’s simply the location of the folder where WPSLinks module is located. On my server it is:

/home/minequest/wps-3.0.0.0.19782-private/bin/wpslinks

Make sure you have SSH running on your Linux server and you will be able to remotely start WPS on the server from your desktop!

Submitting code from the desktop to the WPS Server is relatively easy. Simply go to the Submit Icon and you will find a downward facing arrow next to it. You can select whether you want to run the code Locally or on the Server. One of the cool innovations with WPS Link is that you can have multiple servers registered and choose which WPS server you would like to run your code on. Note the options in the drop down menu shown below.

WPS Link comes standard as part of your WPS purchase. So if you license WPS on the desktop, WPS Link will be available to you as part of your desktop license. Also be aware that in this first release, WPS Link requires WPS running on an AIX, Solaris, Linux Servers and Linux on Mainframe System/z. I suspect that you will see Windows Servers being supported in a later release. But for our customers running large volumes of data on Linux or Unix, this feature will be very welcome.

One other note of importance on WPS Link. You can connect from a desktop to a server and server-to-server. You cannot link from desktop-to- desktop.

Procedure Support

In version 3, World Programming has added support for the following statistical procedures.

  • T-Test
  • GLM
  • GLMMOD
  • STDIZE
  • PRINCOMP
  • DISTANCE
  • FACTOR

Database Engine Support

One of the things that SAS does that I really don’t like is the up-charge for database engines. With WPS, you get the database engines as part of the WPS license. You don’t buy these separately. With version 3 of WPS, there is now support for an XML Libname engine and Sybase databases.

If you’re a shop that has a few different databases from different vendors, it would be financially wise to take a look at WPS just for the cost reduction with the included access engines.

Other Enhancements

WPS has now implemented multi-threaded support for PROC MEANS and PROC SUMMARY. It’s always fun to look at the execution time for CPU and Real Time when dealing with multi-threaded procedures. From some of the WPS documentation you can see that the multi-threaded support that is used in MEANS and SUMMARY has made it into procedures that make use of this code such as PROC TTEST and I assume PROC CORR.

Also, for those of you who were unaware, PROC SORT is also multi-threaded and is very fast. If you do a fair amount of sorting in your environment, it would be beneficial to be running on a 64-bit platform and load up with memory. The more memory you have available to WPS, the more data it can store in RAM when sorting and this results in faster sort times.

There is now an import and export wizard for importing files into WPS and writing out WPS data sets to text files. This is pretty big in my opinion. I could never remember the PROC IMPORT statements even though I use them often. Probably everyone uses a code template for importing and exporting but this just makes life easier.

The data set viewer has been enhanced over the previous release. You can view the variables labels instead of just the variable names. You can also show and hide variable columns.

Also supported for the first time is the SYSTASK and WAITFOR commands. I’ve been waiting for these two language statements to be supported for a while. As part of the Bridge to R on Windows there is a module called MPExec. MPExec allows you to run multiple programs in parallel. I’ve had to resort to using other methods in lieu of SYSTASK and WAITFOR to get this to work. Now that these two commands are available, we will update MPExec to use these features instead, thus MPExec will become portable to other platforms.

Performance

Performance has improved in each release of WPS and WPS v3 is no exception. With multi-threaded support for more procedures and better data handling, WPS is a very viable candidate to replace SAS at many organizations. MineQuest has many customers who run large data sets (millions, ten millions and hundred millions) of records through the WPS System and performance is more than adequate. These companies are able to save loads of money over the competing software system.

Expandability

With affordable pricing, customers can use WPS to perform reporting and analytics in areas and for departments that just wasn’t justifiable before. Using WPS in lieu of SAS allows many organizations to expand the analytics platform and run more data through the system. This is because such advantageous pricing allows them to purchase an additional server at great savings over our competitors.

Data Service Providers

We love Data Service Providers! Seriously, we find that DSP’s are some of our best customers. With WPS V3, licensing terms stay pretty much the same. World Programming LTD does not have DSP fees and you are free to use WPS to service your customers by providing them with data sets, reports and analytics. For any organization that is paying DSP fees, we can dramatically reduce your license fees. Your customer is your customer.

Caveats

Before you download the latest release of WPS, there is one caveat to keep in mind for upgrading. If you are using batch command files to run your jobs, you need to modify the name of the WPS executable in your .bat or .cmd file. The program name you want to use is WPS.EXE (as opposed to the former name which was WPSI.EXE).

Also in WPS V3 the WPD dataset has changed and is faster and more robust. You can still read WPD V2 datasets but V3 datasets are the default in this release.

Finally, you will need a new license key to be able to install V3. Don’t expect to simply download it and run it using the V2 key as you have been able to do previously. If you are a MineQuest customer, contact us if you want to upgrade to V3 and we will facilitate getting you a license key.

Evaluations

MineQuest is offering free 30 day evaluations of WPS V3. You can contact us at (614) 457-3714 to request an evaluation or by email. If you prefer to request your evaluation by email, send a request to info@minequest.com.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.

Getting Caught Up

It’s been a while since I posted something on the blog. Things have been busy the last few months and the time to sit down and write a piece for the blog has suffered because of it.

One thing that may be of interest to a few of MineQuest’s customers is that we found a little bug in the Bridge to R. It’s nothing that would create an error but could create some confusion. Under certain circumstances, %MPEXEC (allows for a form of parallel processing in WPS) would write a note to the log stating that a macro variable was not resolved. This has been taken care of and that note will no longer be created.

I also noticed the other day that there has been a project in the R camp to read SAS7Bdat files. This is interesting because at the moment, the Bridge to R doesn’t directly read a SAS7Bdat file. Theoretically, this could improve processing speed because there wouldn’t be a middle process taking place that takes a WPD or SAS7BDAT data set and puts it into a form that R could read directly. I’ve been hoping that eventually I could read a WPD table directly but using a SAS7Bdat might be the answer to this dilemma. Some research is needed, but if the R library is stable, I may start writing code to directly read the SAS7Bdat by allowing the keyword DATAFORMAT=SAS on the %RStart() macro.

On the WPS front, we’re seeing a number of large organizations migrate over to WPS from SAS. Some companies are simply trying to practice good risk management and don’t want to be locked in to one provider of the language of SAS. Other’s are bringing WPS on board in an attempt to keep an arm’s length distance from the Institute and manage software costs more effectively. The most movement in this area is taking place on the Windows and Linux servers on x86. That is by far the biggest bang for the buck right now. The Linux platform is cost effective due to OS licensing and the fact that WPS doesn’t have client license fees. The platform is high performance and typically outruns Windows Server platforms. That’s a nice combination, lower price and better performance.

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.

Top 10 Reasons for WPS Popularity

I had an interesting discussion earlier in the week and was asked what I felt the Top 10 Reasons that WPS is gaining such popularity and notoriety as a SAS replacement. I had to think about that for a while, but I finally came up with these 10 reasons. They’re in no particular order of importance, so here it goes.

1. All modules are included for one reasonable fee.

2. Microsoft certified for 64-bit Operating Systems.

3. Eclipse GUI is an advanced interface and editor for programmers.

4. Server licenses are inclusive meaning no client license(s) required.

5. No data service provider fees.

6. No fat upfront license fees, just the same annual fee each year.

7. High performance sorting, easily out runs our competitors.

8. Simple point and click installation. No gigabyte installs or downloading of external files and the inevitable confusion and conflict over dependencies.

9. Third party interfaces allow you to use the hottest statistical libraries from the open source program R.

10. Native support for Macintosh running OS X on x86.

So if you’re a WPS user, do you have any favorite reasons?

About the author: Phil Rack is President of MineQuest, LLC. and has been a SAS language developer for more than 25 years. MineQuest provides WPS and SAS consulting and contract programming services and a reseller of WPS in North America.