Welcome to the JMP Development Update for June 30, 2023!
We have now reached our Code Freeze milestone for JMP 17.2, our last planned maintenance release of the JMP 17 cycle! Now that the Origin field is required in the JMP project, I was able to easily create this stacked bar chart in graph builder showing bug issues marked fixed in the JMP project by Priority and Origin. Thanks to everyone on the JMP team for helping report, test and resolve issues reported internally and by our customers!

JMP QA teams have now signed off on JMP 18 EA4 for both Windows and Mac. This will be an exciting new EA release for customers and we are looking forward to feedback on the new additions. I very much appreciate the quick work of Jim Borek and Bob in creating builds and installers over last weekend, and the JMP testing teams who worked to validate them quickly.
Mia and Landra are working to update the Early Adopter page and plan to notify EA members of the new version next week. Mia wanted to extend a special thank you for all the work updating feature pages and creating usability studies and EA videos. These materials are extremely valuable to customers as they begin to learn about the new features coming in JMP 18.
Remember, JMP 18 EA5 is just 6 weeks away and will freeze on Friday, 8/11, not long after our JMP 18 Feature Freeze milestone planned for 7/21/23. If you have any feature work that is ongoing but may not be complete by Feature Freeze, please add details to the JMP 18 Late Features page in Confluence. You can use the template to add a section and share the name of the feature and Jira issue, along with an assessment of the potential impact of the late feature on testing, doc, training and localization work.
Thanks very much to Xan Gregg for demoing some recent improvements to Graph Builder in JMP 18 at this week’s dev meeting! If you missed the meeting, you can see the recording here. Xan also published some of his work to a JMP Live space dedicated to dev demo content – you can find Xan’s reports here. Please consider publishing dev meeting examples to the JMP Live space when you present! Xan is also celebrating his 20 year anniversary with JMP, so please join me in congratulating him!
Thanks very much to Tonya Mauldin for sharing a report of this week’s beta/crash tracks with crashes selected. You can find her report in JMP Live here: JMP Beta Report 6/30/23 | JMP Live (sas.com)

General Announcements
- In Meet the Interns this week, you can learn more about Hailee Austin and William Corley! And don’t miss this Get to Know post on Chris Gotwalt!
- If you’re willing to be a featured employee on Inside JMP, please download a copy of the Get to Know form. Simply fill out the questions and when you’re done, upload it, along with 3 photos of you to the folder. Thank you for helping to make our JMP family a little more familiar!
Important Upcoming Dates
- JMP 17.2 Code Freeze – 6/30/23 ß TODAY
- JMP 18 Feature Freeze – 7/21/23
- JMP 18 EA5 and JMP Clinical EA3 – 8/11/23
- JMP 18 EA6 and JMP Clinical EA4 – 10/3/23
- JMP 18 EA7 and JMP Clinical EA5 – 12/8/23
- Please visit Confluence for a full list of JMP 17 and JMP 18 dates.
JMP Development Updates
Interns
- Hamid Sanei: Cleaning and preparing a new dataset to be imported into JMP/SAS and communicating with the dataset creator to get more context about the data and columns. Revising chapters that include the Boston Housing data table in them. This included finding similar data sets that can match the context of the chapter and example(s) in which the Boston Housing data table has already been used. Registered and brainstormed for the SAS intern expo. Registered for the data story challenge and participated in the orientation. Attended team meetings.
- Bryce Scott: Finished 3D printing all my test models for my DOE experiment and have started the analysis. I am hoping to find which factors are most important when trying to maximize print quality and minimize print time. Additionally I have finished 5/7 of the STIPS courses and have been doing some Rapid Learning modules as well as some O’Reilly modules.
- Michel Lee: Had a couple customer meetings for existing a new JMP customers! I also began work on one of the projects collaborating with other JMP interns, preparing to present at intern expo. I’m also finalizing one of my larger projects, running market research on the Global Premier Team’s “A tier” accounts.
- Trevor Rathe: Finished collecting data for my final project on the how to increase sales to the semiconductor industry and put it all on my intern expo board. I also helped Lori by going through salesforce cases and analyzing different factors for her.
- Parker Dingman: Uploaded my first prototypes of my “Weather in JMP Live” project. My plan is to make them prettier next week. Also looking to also make a cool wind/arrow plot. Here they are:
- Sohail Lokhandwala: Began working on the intern expo poster and have started learning JMP to help me plot some data from my experiments. I also wrote a script to use one of our models to translate a fresh batch of strings into Chinese that will now be sent to a human translator for validation.
- Emily Cohen: Finalizing my working smarter videos – they will be up on confluence soon for other to view. I am also editing the graph building chapter and working on my intern expo poster.
- Brad Norris: worked on compiling and arranging several learning modules in storyline. I also continued work on my learning paths project and chatbot proof-of-concept.
- Anusha Bellapu: Finished unit testing of one study for JMP 17.2 version. I am going to work with the other studies now.
Development Operations
- The DevOps and Localization teams were deeply saddened this week by the loss of localization tester and MemoQ expert Angelita Nitti who passed away after battling pancreatic cancer for nearly two years. Everyone at JMP who came to know Angelita over her years with the team could see that her dedication to her work was exceeded only by her extreme dedication to her friends and family. Several of us attended a beautiful memorial service in honor of Angelita today. It's clear that she will be very much missed by all who knew her. Thanks very much to Trish O’Grady for working on this lovely SAS We Remember blog about Angelita.
- Melanie: Created/tested/deployed a new MIF-PDF job for Keyboard Shortcuts and disabled the old Quick Reference job. Entered jiras for other tooling that needs to be updated to work against the new Keyboard Shortcuts. Installed python and some needed packages on the mif pdf machine so I can add the mif condition checker to each job.
- Jim: Built JMP 18 EA4. On the unit test machines, I adjusted the JMP 18 install scripts to install the Python modules.
Documentation
- Susan C: Quick Start – Thanks to Ryan for the great new banner prototypes. Incorporated my fav into the build. Implemented feedback from Mia & Russ to change the JMP menus tip into a tip about the Help menu. Updated the Confluence page with the QS outline to include all iterations and the latest content. JMP Live/Public help templates - Copying Trish’s localized templates into Perforce so I can generate the localized help. Updating the Confluence page on Creating the JMP Live Help. Updated the Quick Start Jira with checklist tasks, also still working on the end of project Jira. Reviewed Emily’s Work Smarter videos and provided feedback.
- Qiana: Checked JSG to see what updates were needed to account for the changes to the San Francisco Crime Data.jmp file. The Quick Reference Card name is officially Keyboard Shortcuts: changed Perforce files and folders, Jira components, and FM file. Rewrote the JMP Note that will announce the Help Menu Reorg for JMP 18. Update the Menu table in the Windows and Mac menu cards. Began looking at the books that mention the Boston Housing data table. Provided feedback on the Working Smarter in JMP videos. Attended Quick Start meetings and planning.
- Devon: Updated UG screenshots for the updated San Francisco Crime Data, completed CliftonStrengths training with SAS, and continued testing of FrameMaker to DITA XML conversion.
System/Host Testing-Cary
- Mandy: Worked on Workflows, icons for breakpoints, arrows, notes, and snapshots for 18; worked on templates a bit for the EA4 – testing it to make sure it was working on the Mac. Reworked a few tests that changed due to a change made by JMP-17295 with Distribution requiring a numeric. Changed the names of the new workflows I created for Samples for 18 to all start with “WorkflowBuilder…” Took updates on my mac machines. Hammering on Workflow builder testing – with If/Else, and Return, prompts and adding input to test the boxes in that Step settings panel a bit more. Will add image tests for Workflow builder with a breakpoint and the checkboxes on once that icon is settled. It will merely open a workflow with those options turned on – and should not cause much noise once the icon is set.
- Mike M: Worked on Sikuli fixes for icons, Sample Index update, and fonts. Added a few more scenarios to Sikuli tests. Opened several Jiras on Columns Mgr usability (Notes adding as blank, cannot add properties to multiple cols) and some Jiras on Sample Index (dark mode contrast, opening data table becomes ‘dirty’).
- Lisa G: Tested EA4, started testing overlay encoding feature in graph builder and entered a few bugs, verified JSL gradient fixes, and entered in a legend bug discovered by Elizabeth Claassen.
- Hunter: Completed JMP 18 EA 4 installer testing on Mac and Windows, tested JMP 17.2 with the JMP roaming account between two Windows 10 devices, responded to JMP 18 EA 3 track, and defect verification.
- Audrey: Q2 discussions, EA4 Testing, Jira admin work.
Web Testing
- Josh L: JMP Live Group Sync with active directory testing. Focus was on JMP and JMP live 17.2 this week. We were verifying Jira’s around security updates. We did a lot of regression testing and will continue to do so.
- Anna: Updated JMP HTML Readiness page in Confluence with current statuses and re-checked existing JMP Live reports to ensure interactive features still working as expected. Testing Dendogram.
Web Testing Team Jira status
|
|
30
|
Test Ready
|
5
|
Testing
|
9
|
Bugs Created in the last 7 days
|
49
|
Bugs /Stories Closed in the last 7 days
|
System/Host Testing-Beijing
- Beijing Team:
- JMP 18 EA4 installer testing and sanity check of functions that Beijing team host (JMPTESTBJ-248) – Done
- JMP Clinical 17.2 I18N testing Round 2 - JMPTESTBJ-2408 - in progress.
- Eric (Nai) Wang: (1) Tested new feature “checksum for data post” (WEBJMP-6831). Working on License expire notification testing. (2) Completed JMP 18 EA4 testing. (3) JMP C 17.2 I18N Testing - Round2. (4) Bug verification.
- Da Li: (1) In Progress: Feature testing for JMP-16654: PI Server Import: Update, Change Attributes for existing data table, JMP-16880: PI Server Import: "Update" table script (2) DONE: JMP 18.0 EA4 testing, 2 bugs created. (3) Help Kimi on JMP Live migration failure, for details refer to JMPTESTBJ-2482 . (4) Bug verification.
- Mike Wu: (1) MySQL crash issue check for JMP 16.0 and added comment in bug JMP-16807. (2) Investigation and added comments for bug JMP-15047 to see whether this bug is the candidate for JMP 17.2 FIX or not. (3) Technical support issue investigation and provided feedback for case number: 00044095. (4) JMP 18.0 EA 4 testing. (5) Bug verification. (6) JMP C 17.2 I18N Testing - Round2.
- Kimi (Yu) Wang: (1) New Feature testing for Python: JMP-17176: Update jpip script and remove python.exe and pythonw.exe for windows, JMP-17255: Addition to the File menu to create a New Python Script - Jira (atlassian.net) – Done. (2) New Feature testing for SAS: JMP-15995: Consider UI notification in 17.2 for planned deprecation of SAS integration features in 9.4 - Done. (3) Technical Support: Case Number 00044080, JMP-17177: CRP: Embedded python for JMP 18 is also being used by previous versions of JMP – Done. (4) JMP 18.0 EA4 Testing, details refer to JMPTESTBJ-2481 - Done (5) JMP C 17.2 I18N Testing - Round2. (6) Jenkins optimization: Update known_hosts for bitbucket, details refer to JMPTESTBJ-2482. (7) Bug verification.
- Da Zhang: (1) JMP 18.0 EA 4 testing. (2) Bug verification.
- Nala: (1) JMP C 17.2 I18N Testing - Round2. (2) JMP 18.0 EA 4 testing. (3) bug verification. (4) Q2 goal setting and Q2 conversation - in progress
Data Discovery
- Julian: Documentation and video work for the first EA release of Platform Templates (view the EA4 video here). Supported final procurement logistics for Chili Piper (martech solution that has been held up in legal review for some time). Meeting and design work for augmenting Add-In builder to directly support platform template packaging. Continued planning work for the 10-day codebase tour with Xan coming in late July; be on the lookout for the invitation later next week.
- Dan S: Worked with John Schroedl to support transparency of host controls on Windows, for popup dialogs that fade on dismiss. Added a new "Contour Levels" dialog accessible from a contour legend, or from the Specify Contours LRT menu in Contour Plot - thanks to Peng for discussion and testing on this. Fixed dark mode issue in Mosaic Seg, used in the Data Filter and in Graphs. Continuing to look into Template support for Platforms with multiple subobjects.
- Xan: Profiler Spaghetti experiment and arrange-in-rows functionality for Graph Builder Page role
DOE
- Caleb: Added profiler plots to the diagnostics section of the new CSALT platform. At this point, all that remains is providing JSL support and fixing bugs as they arise. Yeng and I have also been working to clear out any remaining 17.2 tickets for sample size explorers.
- Peng: Working with DOE team members to iron out the wrinkles of new factor list integration with DOE platforms. Wrapping up major development work of the fatigue modeling platform. Working with Dan Schikore to rewind my recent changes to Contour Plot. And Dan has implemented a full grown and concise solution for user to specify desired contour levels in the platform through platform menu. (Bill is very happy about it.)
- Brad: Finishing up an article on multi-level saturated main effects designs.
Host
- Paul N: Primarily Python integration work.
- Getting additional capabilities into EA4. EA4 now exposes a Python DataTable object within the jmp package that allows a python script to create a new empty data table, as well as changing jmp.open() to return the data table as a Python object instead of just a success or failure response. Jmp.DataTable(name=’tblname’, rows=n) creates a new data table. DataTable object can be directly accessed from JSL by doing a Python Get( dt_obj ).
- Added after EA4: jmp.currentDt() to retrieve the current data table as a Python Object. DataTable.add_rows( n, after=m), .rows, .cols properties that retrun nRows and nCols. .name, .name = for getting and setting the table’s name. Removal of jmp.curRowCount() now that we have a way to access the current data table. Working on ability to add new columns, to set and get the table data from Python.
Interactive HTML
- John Powell:
- Attended Xan’s C++ JMP Dev. Demo and his Code Tour presentation.
- Created a feature request to support fill patterns(JMPPRODMGMT-904)
- Analyzed Interactive HTML Feature Requests with Dieter for future consideration.
- Onboarding for new developer, Michael Senoyuit (starting on July 6th).
- Support for Multiple Local Data filters(JMPHTML-1000

- With help from Praveena, Aurora, and Josh, I managed to create a local JMP Live server to develop support for Multiple Local Data Filters on JMP Live.
- Tested several Multiple Local Data Filter cases on JMP Live and created subtasks where further support is needed.
- Updating/adding unit tests and cleaning up code for code review and delivery.
- Mike S: Began work on issues with HTML export of horizontal color gradients in legends. Continued online training in Modern Javascript. Finished setting up development goals. Started breaking in a new feline office mate.

JMP Live
- Aurora: Buttoning up the software requirements for GDPR compliance in JMP Live. Working on additions to the publish response, to help with data defaults and workflow builder compatibility. Continued work on folder level access. Upgraded some 3rd party libraries. Improved JMP Live developer guidance on Confluence with the help of John Powell who was using that guidance to get JMP Live running on his machine.
Statistics
- John Sall: Fixing more platforms to save scripts that reproduce the original order of the reports, completing Distribution, Oneway, Contingency, and Multivariate. The “ReportOrder” mechanism is covered in this HowTo page. Dan Schikore reviewed the design. The original Jira story was JMP-2343. This should eventually be extended to many platforms. Users find it frustrating that when you redo or add a DataFilter to a platform the reports change their order. This is a very old problem that we are just getting around to addressing.
- Laura C-S: Traveled to UConn to the Modern Modeling Methods conference. Attended several interesting talks on SEM and received overwhelmingly positive feedback on JMP’s SEM platform. There were lots of questions after my presentation and an associate dean even asked if there was a textbook available for teaching. Came back to catch up with email and found out that Medium “boosted” an article I recently posted (on multiple-group analysis) that has a few links to the JMP community—it’s gotten over 1,000 views in the last couple of days. It’s been a rewarding week!
- Elizabeth: Answered a Mixed Model question for a customer who had contacted Di Michaelson. Answered an LCA question for Ono-san and a customer in Japan. Investigating a crash in GLMM Fang found in testing the new repeated measures structures (close to a fix now). Working on saving confidence interval formulas for Mixed and GLMM.
- Jianfeng: Wrapping up new feature JMP-3548 for equivalence testing in the matched pairs platform soon. The feature not only supports equivalence test through T test, but also supports equivalence test through Wilcoxon Signed- Rank test.

Stat Testing
- Tonya: Testing save tolerance interval to spec limits and short run control charts and also doing bug verification and Jira cleanup.
Product Management
- Mia: Working with Landra to update the Early Adopter page for EA4. We should be ready to notify EA members of the new version next week, and hopefully we’ll see a lot of feedback. Thanks to everyone for capturing updates on feature pages and for creating usability studies and EA videos. Lots of great new and improved functionality to show off in EA4!
- Bryan F: along with Sarah and Parker, I analyzed usability study results, developed an affinity diagram to highlight and rank issues, defined solution goals, and established related metrics. I also had some discussions about a technical approach to have more standardized padding and margins in JMP with Julian, Dan, and Evan. I created more dark mode icons, and setup a AppStream instance with JMP for usability testing.
JMP Technical Support and Engagement
- Wendy: This has been a busy week for the Engagement team. As of today, the JMP US Sales phone number and all of the email addresses that were previously received by the SAS Customer Engagement Center are now forwarding into Salesforce! We have also met with Falco this week to create processes for our teams to best work together and to provide feedback for improvements to the way existing Subscription users access the store. All in all, a great week!
- Duane: Tech Support is staying busy, and Wendy’s team is starting to get calls/emails. I asked her to share what is happening with her team if she can get the chance. Here are the TS JMP Live reports and the link to the Jira filter showing the tickets reported by TS for the last 14 days.

Note from Shannon
I hope you all enjoy the weekend – especially if you’re taking an extra long weekend! Happy 4th of July to all!