Welcome to the JMP Development Update for December 2, 2022!
As you’ll recall, before the Thanksgiving break, we moved the dates for JMP 17.1 approval and freeze. Code Approval mode will start on 1/6/23 – the Friday after we return from the holiday break. We will freeze code for 17.1 on1/27/23. Not too long after that, we will freeze for our first alpha cut - JMP 18 EA1 - at the end of the day on 2/3/22. We’ll then have a 2 month break before we cut EA2, planned for April.
JMP Life sciences product manager Sam Gardner is working on our process for third party library inclusion in JMP products. Developers, please take a few minutes to review Sam’s Third Party Code page in Confluence to check it for accuracy and make any comments or updates. This page is only aimed at third party libraries included in JMP/JMP Pro/Clinical, since JMP Live maintains related documentation in their space. Since Sam started investigating this topic, one item has been removed and 7 items have been added to the list on the page. Thanks very much for your help!
Thanks very much to Tonya Mauldin for presenting on EA data at the JMP Dev meeting yesterday! JMP development very much appreciates the contributions of internal and external users who take the time to test our new releases, and Tonya showed some nice trends of increasing engagement earlier in EA cycles. If you missed the meeting, you can find a recording in Sharepoint here and saved in this folder: <\\d73817\public\Dev Meetings\>. You can also find resources and data from Tonya’s talk here:
Thanks very much to Audrey Shull for sharing the Jira Tip of the Week!
Do you wish you would get your own Jira updates? You can customize your email notifications a bit by modifying your Personal Settings. The option to get notified when you make changes to an issue is OFF by default, but you can check the box below to receive notifications for your own changes as well. The new Jira’s batch-update mechanism should be sending you fewer emails over all, but you still may want to check out our updated tips for how to manage too much email.
And, if you’re not getting any email notifications from Jira or Confluence for content that you’re authoring, watching or being mentioned on, please do check out this SAS Knowledge Base article about email quarantine and visit the Microsoft email quarantine site to release your Jira notification emails. You can also add jira@jmpdiscovery.atlassian.net to your safe senders list in your email program of choice. Doing one or both of those two things usually resolves the issue for most people – if not, please let Audrey or Shannon know!

General Announcements
- I know I said this in my announcements at the dev meeting, and again in this morning’s call for updates email, but please don’t forget to sign up for JMP Winter Thanks (if you’re local or want to contribute from afar). You may also want to plan your own local thanks celebration with your colleagues!
- Thanks so much to all of you who participated in the SAS Angel Tree drive and other Giving Tuesday efforts! Just an FYI that the RFC is also holding a Coat Drive in conjunction with One Warm Coat from now till Friday, Dec. 16. You can drop off new or gently used adult or kids coats in the lobbies of buildings G. GA, and GN. Please contact Edie Henninger with any questions!
Important Upcoming Dates
- JMP 17.1 Doc Freeze – 12/21/22
- JMP 17.1 Code Approval Starts – 1/6/23
- JMP 17.1 L10N Freeze – 1/16/23
- JMP 17.1 Code Freeze – 1/27/23
- JMP 18 EA1 Freeze – 2/3/23
- JMP 18 EA2 Freeze – 4/7/23
- Please visit Confluence for a full list of JMP 17 and JMP 18 dates.
JMP Development Updates
Host
- Aaron: Did the Mac and Projects implementations of window list data table nesting, to match the Windows work Evan did a few weeks ago:


Linked subsets, linked summaries, and data table dialogs should now be correctly linked on all “three” hosts. Finished the Level 2 Product Security Training. Hoping there isn’t a Level 3. Still working on my giant patch to tear out and completely redo JMP’s EditFocus system. Finally, weaseled my way onto the Winter Thanks planning committee so I can make sure the dessert room (or area, at least) is as awesome this year as it has been in the past. (Thanks, Aaron, for helping take care of the desserts! J)
- Paul Nelson: Work on Map Server and working around how stringently the system is locked down against external access. Having to pull source and data to local laptop then scp copy them up to the new map server. Have Map Proxy software configured and installed, that handles the WMS front end. Just successfully completed building the tile rendering daemon and ran its included unit tests 100% success.
- John Schroedl: Telemetry work. Some follow up to Tonya’s R&D demo: The platform names are recorded in English for 17.1+ and the JMP language is also sent. Also, per Legal, we currently prompt for opt-in for each EA installation. Thanks to Mike Wu for the great testing effort!
HTML5
- John Powell: Completed Level 2 security training. Refactored ShapeSegment to use shared GPath support code. Simplified functions that used to have additional support for proportional highlighting. Helped Mike Stickles with first day setup items and welcomed him to our team. Learning about ES2022 classes and modules. Adding support for selecting all points located at the same position.
- Praveena: Working on refactoring our code base. Fixed a bug Anna found when she tested JMPHTML-1773. Working on refactoring our unit test files (source js file loading). Spent some time learning GitKraken/BitBucket.
- Mayowa: This week, I worked on a refactoring task (JMPHTML-1861) and updated the NodeJS and JavaScript mangler (Terser) versions for the HTML5 Jenkins build.
- Paul Spychala: Working with Praveena and the HTML team to upgrade more of our codebase to ES6 and beyond.
JMP Live
- Aurora: 18.0: Removed some more obsolete code. This is an ongoing 18.0 cleanup. Miscellaneous: Working on Perforce --> Git change for JMP Live. Just starting to think about Discovery Europe 2023.
- Michael G: Fixed a few issues with the new Vite build. Working on implementing Vitest for client code unit tests. Tried out Git demo repo.
Statistics
- Elizabeth: Final preparations for and giving Mastering JMP developer tutorial on GLMMs on Thursday. It was well-attended, I think, and at several points in the presentation thumbs up and hearts popped up in reaction to demonstrating some of the user-friendly features included. Now back to tracking down why degrees of freedom aren’t agreeing with the negative binomial models.
- Laura C-S: Fixed a performance issue in SEM, integrated several changelists to 17.1, prepared and presented a SEM Workshop to a research group at Asuza Pacific University—the main professor was excited and impressed with the platform! Found a crash while preparing my presentation and I’ve been trying to replicate it (unsuccessfully for now).
- John Sall: Added option for FDR axis in volcano plots (JMP-14819). Participated in P&G JMP Day.
Stat Documentation
- Michael C: Worked with James Koepfler to clean up the unused (or very seldomly used) fields in our Jira cloud instance. This should help simplify the Jira interface since it removes some extra fields from various screens in Jira.
Addressed feedback on the Fit Model documentation from Ono-san.
Stat Testing
- Mark: Investigating unit test failures of Easy DOE after changes were made to address handling higher order terms for discrete numeric factors. Participated in several meetings where Peng reviewed his design and code for the new DOE factor list. Preparing with Jianfeng to record a presentation for JMP Discovery Summit Europe. Preparing with Peng and Jacob to present usability testing of Easy DOE at the next JMP Dev meeting. Completed Level 2 curriculum about Product Security.
- Jacob: Preparing Factor UI Dev Meeting presentation with Mark and Peng. Testing MSA Design, Easy DOE, and Custom Design with discrete numeric factors and RSM models (investigating impact of recent fix for JMP-14738). Investigating potential performance issues.
- Tonya: Presented the EA data at JMP Dev. Verifying and updating ANOMV unit tests. Investigating CCB crashes and problems.
Product Management
- Sara: Please check out these recent articles posted about Confluence, (spoiler alert: Sara is the biggest fan!), STIPS and the JMP pricing survey!
- Mia: A group from PM, documentation, and DevOps met to discuss removing the larger documentation PDF’s from the installer in JMP 18 (the Documentation Library, Discovering JMP, and the New Features guide). These PDFs are also available online and via an add-in. Additional work will be done to determine how to best make the PDFs available locally for those users with limited internet access.
- We had the initial planning meeting for the JMP 18 EA program, which will be run through My JMP. The program is scheduled to launch in Feb 2023.
- Bryan F: Regarding the HTML5 refresh, I solicited feedback on the issues related to the look and feel of HTML5 reports and created prototypes of potential changes. Regarding usability studies, I met with a sales rep from UserTesting.com testing to convey testing needs, and I plan to get a demonstration next week. I also conducted an external usability test for JMP Projects. I’m continuing to work on deploying an Amazon AppStream image instance for usability testing. I communicated with the Discovery Summit Europe team about usability lab logistics. Regarding icons, I delivered four requested icons for JMP Clinical.
Technical Support

Development Operations
- Jim: OS updates on many UT machines, including mac CI machines in the JMP Lab. In support of the work that John Schroedl has done to get JMP’s source code compliant with C++20, I followed Michael Hecht’s recommendation to upgrade Xcode on the (mac 18.0) build machine to 14.1 (14B47b). Created a JMP Clinical updater for 17.1 on mac OS. Perforce support.
- Myron: Working on Jirabot – fixing various glitches as they arise (project field mismatches, permission to ticket denied to jmpjirabot user, etc). Updating 17.1 and 17.0 help build processes (JMPTOOL-582). Database maintenance for XDB (mainly test failure details) and JMPTRACK (mainly crash scores).
Documentation
- ChrisB: Fixed my bits of JMP-7698 and JMP-13835; worked on JMPDOC-1567. Reviewed JMP doc for the discussion of the future of PDFs in our doc. Preparing for a doc review of competitors (Larry Russo, Sarah Doudt, and Kaylee Warren were most helpful).
- Susan C: Worked on updates to the Student Subscription documentation. Worked on JMP Live Jiras for 17.1.
System/Host Testing-Cary
- Audrey: Conferring with Jira project leads about a Resolution Cleanup proposal, meet with Beijing testers for end-of-year catch-up, and brainstormed about the future of HTML automation tests with Hui. Also, the Cary System Testing team got together for lunch at Scratch Kitchen & Taproom this week, since Nick Holmes was in town. (The food was really good!) It was great to see everyone in person!

- Mandy: Mostly worked on workflow builder and doing the P&G Demo I did on Thursday Dec. 1st; did go through some Data filter and Table > tools changes at 18.0 – some of the data filter things may be moved back to 17.1 so needing to test those; test and verify JIRA’s at 17.1 also this week – catching up on those fixes.
- Josh L: Verified the JMP Live 17.1 /Database / Keycloak / JMP Live / Migration in 7 languages. Worked on some customer and tester JMP Live recreates. Started to get git up and running on my pc and mac.
- Lisa: Worked on a couple of 17.1 verifications, discussed bugs from caption box’s axis table feature with Anna, completed 2022 self-eval, and made tweaks to crash data project.
System/Host Testing-Beijing
- Eric Wang: (1) JMP Live stress testing: Created scripts to update and refresh all data tables. Developing script to collect stress testing results. (2) Technical support for SE team. They have questions about refresh data.
- Da Li: (1) JMP Live 18.0 UI regression testing because of [WEBJMP-6271] Move client to Vite - Jira (atlassian.net). (2) Verified WEBJMP-6296 Convert v-teleport to portal-vue.
- Mike Wu: (1) JMP 18.0 bugs regression testing. (2) JMP activation testing and activation related products confluence pages re-org and summarizing work completed, archived 4 pages, created 3 confluence pages, updated 3 confluence pages, details can be found in JMPTESTBJ-1818 (3) JMP 18.0 Telemetry testing continued on Mac due to the Mac blocking issue of failing to send telemetry files to telemetry server got FIXED, re-opened a Mac bug that “JMP-14751: JMP 18.0 Mac only: The Opt-in from telemetry prompt dialog does not honor the Preferences-Privacy's Help Improve JMP checkbox setting”, details can be found in JMPTESTBJ-1770. Also confirmed with Jim and Audrey that the Mac 18.0 installers of JMP Trial and Pro Trial will be kept for more time for this week, and I will update with Jim once the telemetry testing is done hopefully in this week.
- Kimi: (1) Tested JMP Live 18.0 Data viewer because of [WEBJMP-5484] Data viewer doesn't recover after session expires and create two bugs during testing this jira. (2) Write Jmeter test scripts of load testing for JMP Live, details refer to JMeter Test Suite - APIs collection (3) Jenkins: Add E2E publish tests to UT env. in Beijing, for details refer to JMPTESTBJ-1796. Debug JMP Pro 17 license issue, Bob has fixed it on JMP-14262.
- Da Zhang: (1) Finished up initial round of load testing for JMP Live and published reports/data to JMP Live here. (2) Looking at Baseline UT failures in JMP 17.1 for non-English (Japanese). (3) Verified WinAutomation defect
- Nala: (1) Deployed a JMP Live server (500 users, 10 departments, 512 spaces, 22 groups) which is similar to jmplivesales for JMP Live Performance testing. (2) Write Jmeter test scripts of load testing for JMP Live, for details refer to JMeter Test Suite - APIs collection.
Data Discovery
- Evan: Showing current color/marker/linestyle in more LRT and context menus. Fixed slowdown in C# automation preventing user from moving away from v15 (and provided workaround as the fix won’t be available until v17.1). Fixing parser issue related to “name”n that is preventing Profiler scripts from working.
- Dave B: Fixed a couple of plot col display bugs, fixed a word cloud journaling bug, fixed built in folders problem with MFI, worked on better grid detection when reading pdf files.
- Dan S: More fixes for EmptyPlatform (when platform fails in relaunch from filter or switcher). Fixes for some conditional filter scenarios. Sizing issues in SplitterBox. Fixes for Session files used in Projects. New Window() fixes for 17.1.
- Xan: Bug fixes: heatmap binning, line drawing for 1M+ points, script editor identifier coloring, new county names for map files.
DOE
- Caleb: Made two big fixes for MSA. First, I’ve fixed a bug that was leading to incorrect expected mean squares for the variance simulations (17.1 and 18.0). Next, I added a Fit Model script to the MSA design table that should handle more complex cases. We’re still testing this in JMP 18.0. I’ve also been working on more axis control for the sample size explorers and setting up for a new degradation design platform with Peng. Peng and I are working on a joint project/talk for Discovery Europe on a way to assess reliability of autonomous vehicles.
- Peng: Working on modeling fitting strategies in Bill Meeker’s research project. And development work on both DOE and reliability sides, just general architectures not specific platforms.
Note from Shannon
Thanks very much to Aaron Andersen for sharing how he’s encouraging the next generation of coders in his own home! “Lastly, here is my little unicorn programming a Lego robot all by herself. I couldn’t be more proud!” It’s never too early to start thinking about a JMP internship… :smiling_face_with_smiling_eyes: Have a great weekend, everyone!
