Subscribe Bookmark
john_sall

Staff

Joined:

May 27, 2014

Statistical discovery with JMP at the 25-year point

For you, today is Oct. 4. At JMP, we call it Sept. 34. We had been determined to release the first version of JMP by the end of the third quarter of 1989. But, as it turned out, we needed a few extra days to make our own deadline. So we “extended” the quarter.

Today, JMP is 25 years old. This milestone led me to reflect on its startup, evolution, current state and future.

Most of the design principles adopted at startup remain our design principles today, though we have added a few new ones. As JMP grew from a very basic package to one with wider capabilities, we managed that growth carefully so that the product stayed agile and the product surface didn’t become too complex.

Along the way, important growth themes for JMP have included exploiting the user interface, addressing the specific needs of engineers, advancing the state of the art of fields such as experimental design, and addressing the new challenges of big data with new power in large memory and multiple cores. Central to all our work has been the graphical user interface (GUI), enabling interactive exploration, making discoveries and understanding what the data is saying.

In the last 25 years, the field of statistical methods has transformed from a small specialty to a key enabler of both advancing the technological and quality frontiers and of making better business decisions, as based on informative data.

Original Design Goals

When JMP was first released in October 1989, the original goals of JMP were:

  1. Find the best ways to exploit the emergence of the GUI point-and-click interface of the Macintosh.
  2. Find the best statistical graphics to go with each statistical method.
  3. Provide a new product that was relatively inexpensive and easy to use, and would serve as an entry-level step for SAS and for those who didn’t need a product as big as SAS.
  4. The SAS Perspective

    In the late 1980s, SAS had just completed a huge project to port SAS to personal computers, which involved translating millions of lines of code from PL/I-G to C. We had to maintain complete compatibility with previous versions of SAS, which had a large installed base of SAS language programs. Even when we took tiny steps, such as trying to require quotes in title statements, we found that we had to backtrack to complete compatibility.

    So JMP became an experiment to go where SAS wasn’t playing. We wanted to explore the design space with a new product [Blue Ocean strategy]. JMP needed to be as different as possible from SAS and still serve a viable market. SAS had a programming language, so we made JMP not have a language. SAS stored data by rows, so JMP stored it by column. SAS handled big data, so JMP was limited to in-memory and originally 32,767 (i.e., 215-1) rows. SAS was a very wide, powerful product, so JMP became a much smaller, focused product. SAS aimed to sell to business, IT and applications development, so JMP aimed to sell to scientists and engineers.

    The Macintosh Perspective

    In 1984, the Mac appeared. By the late 1980s, Apple was starting to gain traction in the industry with the GUI, and Microsoft was investing big and embracing it with its Windows project. Everyone believed that the industry was transforming again. We had just gone through huge transitions: from mainframe MVS to mainframe CMS, from mainframe to minicomputer, from printer output to graphics output, from editing terminals to full-screen interactive terminals, and then from minicomputers to personal computers. Another upheaval with the GUI was emerging.

    Programming to the GUI was supposed to be different from programming for a language interface and static output. We couldn’t just port SAS to a GUI, though we could reuse the subroutine library from SAS.

    So what feature set would be big enough to serve the small market of Mac users at the time? We picked a set of typical analytical routines and put them in a very contextual Analyze menu.

    The Statistics Perspective

    The statistical initiatives of the time included Tukey’s Exploratory Data Analysis and the emphasis on graphics, punctuated notably by the Anscombe Quartet published in 1973. It became important to look at your data in a graph.

    The American Statistical Association started a Statistical Graphics section and started publishing the Journal of Computational and Graphical Statistics. This coincided with the availability first of bitmap graphics terminals and then of graphics-enabled personal computers, so graphics became easy as well as popular. I remember the excitement of reading about the Gabriel PCA Biplot, the scatterplot matrix, brushing, rotating, mosaic plots. Pioneers included John Tukey, John Hartigan, William S. Cleveland, Michael Friendly, Lee Wilkinson. The hunt was on to design a graph to go with each statistical method. This hunt led to such JMP innovations as the general hypothesis leverage plot, comparison circles, the 3D spinning biplot and many more.

    The Evolution of JMP

    So with fanfare at the SAS Users Group International (SUGI) meeting in spring of 1989, we unveiled JMP on the Macintosh. This was a very small product compared to the JMP of today, but it had a nice set of initial features all linked to interactive graphics. That was just the first of many steps.

    • Early on, we found that engineers became an important customer segment for us. We added control charts, elementary design of experiments (DOE), and survival features. The Profilers became extremely valuable additions to the fitting platforms. This was also when we started hearing about the Six Sigma movement becoming so important.
    • As Windows emerged as not only a competitor to the Mac but also as the dominant host platform, we ported JMP to Windows.
    • Modern DOE came to JMP when Bradley Jones joined our team. He pioneered a long series of innovations in design of experiments, and continues to do so.
    • We completely rewrote JMP in C++ and gave it a modern display interface and a scripting language (JSL) for the fourth version of JMP.
    • We invested in data visualization, adding Graph Builder, dynamic Bubble Plots, Data Filters and more.
    • We continued to improve the application development process, with a better editor, App Builder, the debugger and script profiler, JSL namespaces, and add-ins and the JMP File Exchange.
    • We exploited interfaces to SAS. At first, this meant just providing file import and export, but later we created increasingly sophisticated direct interfaces.
    • As our user base grew, we developed various specialty areas: reliability modeling, process quality and consumer research. We also continued our investment in design of experiments where we lead the industry.
    • For many years, JMP was used mainly in the US and Japan. Now use of JMP has spread to Europe and China, where we expect to grow fast.
    • We learned to adapt to big data, making JMP faster and more resilient. We added multithreading wherever it fit well.
    • We increased our involvement in customer engagements through users groups, online communities, customer care and more.
    • The Future

      JMP has grown from a limited product with a limited audience to a mature product with a wide audience. As the awareness of the value of analytics advances, JMP is well-poised to grow quickly in the next few years.

      JMP will continue to be a desktop product, as opposed to becoming a client-server or cloud product. But the desktop has never been more capable than it is now, and we expect the desktop to remain important for many more years.

      Happy birthday to JMP! JMP is 25 years old now, very healthy and hardy and still growing fast. We thank all of our users for helping us make JMP into what it is today.

      JMP 1.0 Crew

      JMP 1.0 Crew - Young

      JMP group picture in 2014

      JMP 11.0 Crew - Grown Up

      2 Comments
      Community Member

      Mike Clayton wrote:

      Happy birthday on JMP's first quarter century mark.

      We have used JMP for that entire time, and it really captured the engineers of the 90's that did not want to be programmers just to study variability of our processes, and run experiments to improve them. The IC's first quarter century in production, 1960 to 1985, was a date-rich, information-poor nightmare of time-sharing systems, Fortran programs, and engineers held hostage to a few programmers, But with JMP on the Mac, we broke the engineers free, Managers began to understand graphical statistical analysis, and demand it rather than a lot of p-value discussions.

      Will the second quarter century give us the next "blue ocean" product for the "Internet of Things" and modern medical sensorization?

      Community Member

      Emil Friedman wrote:

      I remember the first presentation given by a JMP representative back when I worked for Goodyear. I was very skeptical (maybe even hostile) and asked how a pull-down product could compete with things like the custom macros I used to write using SAS code. He asked me what sort of macros I wrote. I described one to him. He immediately showed us (not just told me) that it was already built into JMP version 2. So I told him another. It was also already built into JMP. As soon as the presentation was over I told my manager, "We need to get this product." I'm still using JMP. It's the most useful and user friendly software product I've ever used.

      Article Tags