12.8.2020 R/Python Training Session
Presenter: Ben Francis
Watch Recording | Journal
Key Takeaways
- "Do you want your people to be coders, or do you want them to be people who solve problems?" SME is often not the R or Python coder.
- JMP can be seen as a threat to those who are R/Python coders. Move away from gatekeeper (R/Python users) towards enablement (I want to keep my job so therefore R and Python need to stay)
- Cost of software vs cost of people/time
- One of the most critical quality issues in software development, especially for analytical software, is the accuracy and reliability of results. Quality statement vs open source solutions. JMP provides trust and security.
- R and Python are competitors for all of our products (JMP, JMP, Clinical, JMP Live...)
What is open source software?
The term open source refers to something people can modify and share because its design is publicly accessible. Open source software is software with source code that anyone can inspect, modify, and enhance.
Who uses R/Python?
- Any company
- Roles: data scientists, statistician, higher level biologists, chemists, technologists
- Those that want to be trendy
- Those with initiative
- Often not management
- Not data driven modelers
- Not in highly regulated areas
- What is open source? What does that mean to users? Cost, access, support, etc?
- Learning curve for R/Python vs JMP JSL? Action recorder.
What are the pros of R/Python?
- It's a free, data science tool accessible to all.
- Mature and extensive "partner" in the market.
- Sites such as Stack overflow offer great help to the R/Python communities.
- New cutting edge functions/features added frequently by users.
- Quality of output can be very high.
- Straightforward interfacing with other programming languages (C, C++, Java).
- If a company has been doing data science, likely they will have material in R/Python scripts.
- Can be cloud-based.
- Having Python programming knowledge can be a differentiator for scientists/engineers.
What are the cons of R/Python?
- The focus is on the software rather than the people using the software.
- Further the software can be seen as a panacea to messy/lack-of/non-existent data.
- Code-first approach, with often more than one "coder" required.
- "Pie in the Sky" thinking.
- Poor security options and no/very little quality and accuracy assurances (JMP's Quality Statement)
How to Position JMP vs R/Python:
General Suggestions:
- Is there an actual problem they are trying to solve? Walk away from "window" shoppers.
- Do not get into deep technical deep conversations or use buzz words yourself.
- Do not do functions and features, open source wins virtually every time.
- Avoid narrowing the customer's focus on any one JMP product.
For the User Buyer:
- Qualifying Questions:
- What aspects of your current work are challenging?
- Do you wish you had more time for innovation data analysis?
- What do you wish you could improve about your current scripts/applications?
- Are you part of a central technical support team? If so, how do you provide support?
For the Technical Buyer:
- Work away from the gatekeeper mentality towards enablement.
- Be clear about the quality and numerical assurances of JMP.
- Qualifying Questions:
- How many within your organisation are involved in knowledge/process development?
- Would a software with regularly updated numerical accuracy and quality assurances be important to you?
For the Economic Buyer:
- Hear the grand vision out. The grander it is, the more painful they have it coming.
- Encourage them to consider that open source could require a higher level of training (and therefore cost).
- Qualifying Questions:
- Where do you want to be a year from now? What is your strategy?
- How are you going to scale their data analytics?
When and how should you position JMP with R/Python?
JMP is a standalone, full-featured data visualization and statistical analysis software package from SAS for the Windows and Mac desktop. JMP has the interactivity and dynamic linkage that makes data exploration exciting and insightful and contains many advanced analytical options, fully satisfying the needs of data explorers and analysts. Still, there may be occasions where you’ll want (or need) to use JMP in conjunction with open source tools, like Python or R. Consider the following examples:
- A corporate statistician prohibited from using non-validated software like R for primary analysis may nevertheless want to explore new methodology in an R package side-by-side with validated methods in JMP.
- A Python or R programmer may want to take advantage of the dynamic linkage, advanced visuals or powerful analytics available in JMP.
- A company’s data analysis department may want to develop an add-in to JMP that allows some R or Python code to be run as an add-in within JMP, so that future users can interact with the GUI add-in without needing to write the R or Python code themselves.
- A statistical educator may want to introduce specific open source packages in the classroom but within a point-and-click environment that wouldn’t require coding by the student.
Resources:
- Mastering JMP: JMP and R Integration: Learn to use basic JSL scripting commands to connect to R, send data between R and JMP and submit R code.
- White Paper: Using JMP and JMP Pro with R and Python: Examples of when users may want (or need) to use JMP in conjunction with open source tools, like Python or R.
- Addin: XG Boost: Provides a point-and-click interface to the popular XGBoost open-source library for predictive modeling with extreme gradient boosted trees. Includes profiling export of JMP Scripting Language (JSL) and Python code for reproducibility.
- Addin: JMP to R addin Builder: Allows R coders to house their R code in a JMP add-in without writing JSL code. Enabling JMP users to access and alter options within the R code.
- Wiley Paper - Better Together - Extending JMP with Open-Source Software: In this paper, we will explore use cases that illustrate how JMP users can take advantage of the broad support and rapid pace of change of open-source software while still benefiting from JMP's streamlined interface and robust capabilities.
- JMP Can Be Shiny Too: Americas 2021 Discovery Paper that talks about the dashboard functionality in JMP is a fantastic tool that can serve as a good alternative to R Shiny. Compared to R Shiny, JMP dashboards are easier and faster to build and can save lots of time in app development. In this poster, I talk about how JMP dashboards can be a tool for:
- Sharing the excitement of data discovery with others.
- Personalizing the presentation of graphics.
- Creating a visual storyboard to convey information.