Welcome to the JMP Development Update for March 1, 2024!
Today I am happy to share some very good news – QA and development managers have now signed off on JMP 18.0 for all products including JMP, JMP Pro, JMP Clinical, and JMP Live (JMPTEST-1098)! As Audrey said in her earlier email announcing the signoff, this is a major milestone for all of JMP – congratulations to everyone on a job well done! Each of these products has many impressive new features (JMP, JMP Pro, JMP Live, JMP Clinical, HTML), many of which we have seen demoed in dev meetings over the past few months. JMP Discovery attendees in Manchester will be the first non-EA customers to get a good look at JMP 18 next week. We have a lot to be proud of. As a reminder, JMP 18 is planned to be made available to customers via My JMP in the latter half of this month.
In other great news, today we also celebrate Trish O’Grady’s 35th work anniversary! Before she took on her current role as senior manager of the localization group within my DevOps group, Trish was a technical writer for SAS and a localization project manager for SAS and JMP. In recent years, Trish has turned her incredible attention to detail towards building out JMP Development’s localization group and perfecting their processes. She has driven numerous process improvements both within her group and in collaboration with various other groups across JMP who intersect with aspects of the translation process. Trish has patiently taught many of us all that we know about JMP’s translation process – me included! I am grateful for her leadership and dedication to delivering high quality translations that help JMP serve international and domestic customers in their preferred language.
JMP Documentations senior manager Qiana Eaglin asked me to add a reminder that new and existing sample scripts require the following JMP copyright statement: Copyright © JMP Statistical Discovery LLC, Cary, NC, USA. All rights reserved. Please add this if you are working on sample scripts for future releases. Thanks!
Thanks very much to developers Paul Spychala and Praveena Panineerkandy for presenting on JMP 18 interactive HTML performance improvements at yesterday’s JMP Dev meeting! According to the team’s manager John Powell, interactive HTML developers spent a full 6 week sprint making performance improvements that benefit both stand-alone interactive HTML reports and reports published to JMP Live. If you missed the meeting, you can find a recording detailing some of these impressive improvements here. We don’t plan to meet next week due to many people being out attending JMP Discovery in Manchester, but we will meet the following week for a presentation on the JMP 19 Display Box Model given by Dan Schikore with support from Evan McCorkle and John Schroedl.
Thanks to Tonya Mauldin for sharing this week’s Beta/Crash tracks with crashes selected!
Beta/Crash cases for the week of 3/1/24 | JMP Live (sas.com)
General Announcements
- The JMP DEI committee is sponsoring several initiatives in honor of International Women’s Day next Friday, March 8. Just to name a few:
- a watch party for Jessica Galica’s presentation next Thursday (networking starts at 9:15 in A1030 – register here to attend the in person watch party or virtual event). You’re invited to wear my favorite color – purple, of course!
- a donation drive for nonprofit InterAct as they work to end the cycle of domestic and sexual violence for women in the triangle area. See this Inside JMP post for more information about items you can donate on the 4th and 5th floor of A and how to order items online for delivery to InterAct if you are not local. You can also choose to donate to similar groups in your area.
- JMP posted the Call for Content and Steering Committee nominations for Discovery Summit Americas 2024 today as well. Discovery Summit Europe 2024 starts Tuesday, March 5 in Manchester, so expect coverage of the conference on Inside JMP next week.
- Please visit the Dev update section on Inside JMP to see past updates.
- Please reach out to Shannon Conners or Beth Evans if you’d like to be added to the JMP Dev list to receive future copies of the update via email as well as future JMP Dev meeting invites.
Important Upcoming Dates
- JMP 18.1 Feature Freeze – 4/19/24
- JMP 18.0.1 Code Freeze – 4/26/24
- JMP 18.0.1 Release – ~ 5/18/24
- JMP 18.1 Approval Mode Begins – 5/21/24
- JMP 18.1 Code Freeze – 6/14/24
- Please visit Confluence for a full list of JMP 18 dates.
JMP Development Updates
Statistics
- John Sall:
- In Model Dialog, fix a case where duplicate effects were generated (JMP-20509). In Fit Least Squares, adjust a tolerance to recognize when SSE is zero (from 1e-9 to 2e-9) to pass NIST test for Mac M2s (JMP-20529).
- In Contour Profiler, support an option to do filled contours, in response to Sarah Gilyard (JMP-20549).
- In Response Screening, in response to Richard Zink's request, support Subgroups (JMP-20628). Subgroups are like Groupings, but much better. Instead of doing just all combinations it sequences through many Subgroup columns and does breakdowns for each level of each subgroup level. For example, if you have Subgroup columns sex and age, it will fit for all rows, then for rows for each sex category, then for rows for each age category. In the following example when run for 135,608 genomic subgroup columns and a single X and Y, it does 315,462 regressions on 6210 rows, taking 42 seconds.
A new option will add two-way interactions. For Car Poll, there is no significant sex difference of age for any combination of size, country, or car type, except for one group: type-Work and country=American (but the FDR adjusted p-value is not at all significant.). Two-way interactions are limited to 10 subgroup columns or 10 million combination levels to prevent inadvertently huge requests.
- Annie: Last week, I hosted Bill Woodall while he was in town, recorded a Statistically Speaking Tuesday & answered live Q&A questions from the event on Wednesday. Then, coordinated individual and development meetings Wednesday and Thursday. This week, I answered the remaining questions for the Statistically Speaking blog post, prepared for my Discovery EU Roadmap presentations, practiced the presentations with the group and again with Mia Stephens, and fixed a few Jira tickets.
- Laura C-S: Continued work on MIIV-2SLS estimator in SEM. Finished work for estimates when there are equality constraints and with multiple-groups. I’m now working on the standard errors for these scenarios. Attended DEI metrics committee meeting and explored newly acquired data prior to the meeting.
- Elizabeth: Continued work on sandwich/robust standard errors for Mixed and GLMM. The numerics are looking good, and now working on report changes to accommodate the option. Big thanks to Laura Castro-Schilo for the pointers to where/how she handles the similar option in SEM.
Stat Documentation
- Michael C: Scripting Index updates for CCB and Fit Manova; worked with Ryan Lekivetz on SPES/Q&P section programming for JSM 2024; sent updated Numerical Accuracy white paper and corresponding NIST tests for 18.0 to Bob to be published on jmp.com.
Stat Testing
- Mark: Finished and practiced the lightning talk for the DOE Roadmap session next week. Introduced XPath in JSL with Tonya Mauldin to JMP Stat Testers and Writers. Debugged a failure in Easy DOE with Jacob caused by a change to formula column behavior. Attended the DEI Metrics sub-committee meeting. Completed the three required SAS compliance training courses.
- Jacob: Adding tests for OML Screening Designs with discrete numeric factors. Updating the performance framework to run tests in JMP 18.1. Cleaning my unit tests, investigating M2 failures. Preparing Lightning Talk for Discovery. Working on HCI International paper with Mark, Ryan, and Joseph.
- Tonya: Gave an xpath presentation to the stat testers group. Working on bug verification and unit test cleanup.
Life Sciences Updates
- Wenjun: Russ and Wenjun went to the AR-BIC 10th Annual Conference in Little Rock, AR this week. The theme of the workshop was “Real-World Impact of AI”. Russ presented an invited workshop titled “AI and Machine Learning Made Easy with JMP” that attracted many more people than the conference organizers expected. In fact, it was so packed that additional chairs had to be brought in to accommodate attendees! Wenjun was an invited speaker featured in the conference titled “AI for Analyzing Unstructured Data” where she presented a talk on the topic of “Automatic Text Classification of Drug-induced Liver Injury Using Document-term Matrix and XGBoost”. Both Russ and Wenjun received many questions during their presentations and were featured on the Arkansas Research Alliance’s official LinkedIn posts about the conference.
Product Management and Product Marketing
- Bryan F: This week has been consumed with developing prototype scripts and feedback forms for JMP LearnBot, JMP Marketplace, and JMP Dynamic Subsetting. I’m including some screenshots below. Thanks go to Julian Parris and Kristen Slappey for creating the content for the scripts and to Dan Valente, Mia Stephens, Sara Doudt, and Sarah Sylvestre for reviewing the materials. Also, I want to thank Jacob Rhyne and Mark Bailey for creating another preference study for Easy DOE!
Support and Engagement
Case Volume by week:
Case Topics for Engagement queue, total:
Case Topics for Engagement queue, last week:
Development Operations
- Nick:
- Jenkins update was completed last weekend, as well as doubling the amount of space on our Jenkins server as we were nearly at hard drive capacity. All Jenkins plugins were also updated to latest as of last Saturday. The Perforce Swarm server, as well as the Ubuntu server it lives on, was also upgraded to latest.
- All Mac Analysis builds are running again after fixing a few issues. I needed to get the Macs updated, and the 19.0 Analysis build will run tonight as well after relocating it to a new machine and upgrading the version of Xcode it is using.
- Melanie: New Group Policy Object doc: created new MIF-PDF job and inserted it into the daily flow; added it to the auto-migration job that places PDFs where they are needed; coordinated with Localization to be sure they would update their jobs to handle the new doc. Doc Auto-migration job: Enabled and fixed the auto-migration job (thanks to Nick R for some help there). HelpMap Upload: troubleshot and fixed the job that uploads the HelpMap to the help server for 18.0 (Thanks, Chris B, Qiana, and Susan for validating!).
- Shannon: Goal discussions with my team. Interviews continue for program manager position. Walked Susan C through batch creation of Jira issues. Coordinated with testers and developers about ongoing baseline test failures on Mac and Windows – very happy to see the baseline tests finally running clean on both hosts for JMP 19! Investigated various crashes.
- Bob: Finalized system requirements page for version 18 with Web team. 18.0 Final Candidate #5 creation. Software license agreement modifications working with testing teams and Legal. Final installer validation creation for JMP/Pro and JMP Clinical. Created software downloads for installer validations and NIST tests - thanks, Michael Crotty!
- Jim: Thank you to Michael Hecht for his efforts to improve the ASAN UT process for JMP (19.0) by investigating the problems and providing meaningful fixes. Thank you to Drew Foglia for hearing the issues and resolving the problems that were preventing me from creating a JMP Clinical 18.0.1 installer for mac OS.
- Myron: Looking into why the dot-dot releases like 18.0.1 are not populating the testing dashboard's UI combo boxes (JMPTEST-1158). JiraBot – working on testing and deployment tasks for the UI (SSL certificates on AWS machine, auth, etc.) and updating a few assignments by request.
Localization
- Krzysztof: Tuning up Big Books delivery to translation vendors (wordcounts, packages). Training MT models with additional and updated translations. Preparing the upgrade of our Translation tool server. Discussing new L10n automation features.
- Sandy: Ran new Jenkins job to automate xstr language file compilation using changes that were made to production in order to make sure it would work properly when pointed to production. Worked on program that validates source in file areas we use for processing. Worked on verification of a bug with dashboard package launch and tested new functionality of word count update in dashboard.
- Allison: Sent V18 Big books production packages and word count reports to our KO, JA, and ZH vendors and answered any questions they had, and I helped resolve issues with the packages. Finalized and submitted my 2024 individual goals. Discussed and investigated with Trish localization related bugs submitted by other teams and submitted a purchase req for V18 Big books localization into ZH.
- Trish: Met with the doc team to discuss overview of Oxygen project. Researching issues associated with localized screenshots for Discovering JMP (DJ). Getting localization project setup for Group Policy Object Documentation project. Finished goals conversations with localization team.
- Howard: Bugs fixing and Dashboard feature enhancement.
- Sohail: Enjoying vacation.
Documentation
- Susan C: Fixed JMP Live web help issues to do with headers and footers not being localized - thanks to Roger Alford for the fixes! Identified an issue with JMP Live help key in JMP Help that was fixed by an update Melanie Drake made to the help map - thanks Mel! Created 18.1 doc Jiras using a template and batch import in Jira. Thanks, Shannon Conners, for walking me through the process. Updated the Create process Jiras Confluence page to reflect what we are doing now for 18.1, including adding the procedure to batch create Jiras. Removed Tech Notices TI from Perforce and Confluence. Looking into issue with Terms of Use link in Spanish and Korean JMP Live help.
- Qiana: Finished the group policy objects doc and handed it off to L10N. Updated the JMP 18 Installation Validation doc. Working with Legal to update the disclosure and copyright statements in sample scripts for 18.0.1. Began the compliance training. Assisted Susan with the 18.1 Jiras. Met with L10N and writers for an overview of the plan for the migration to Oxygen.
- ChrisB: Dove into the helpkey/helpmap processing as we solved JMP-20515. Created the doc add-in. It and all the individual 18.0 PDFs are in their proper place. Corrected all the PDF metadata (no longer do we have PDFs identifying themselves as JMP 11). Prepped for our intern. Looked at implementing the new headers (that were designed years ago, so we have to update them).
- Devon: JMPDOC-2083, JMPDOC-2084: File labeling questions and issues from L10N, JMPDOC-140: Starting Properties Panel documentation, Oxygen project planning, began compliance training.
System/Host Testing-Cary
- Mandy: Completed installer JMP 18.0 testing. Completed SAS Code of Ethics, Data privacy and storage - compliance, Anti Bribery courses/training. Worked on verifying some JMP 19 fixes. Now working on Data table changes to make sure that all is stable. NOTE: Fonts are back to the same size in 19, for DT and WFB that I can see:
- Hunter: Completed JMP 18 installer testing with image candidate #5. Verified several JIRA items and opened one JIRA for a startup preference not being recognized on the Mac. Installed the newly released R 4.3.3 for Windows and ran tests with JMP versions 17.2 - 19.0 to confirm there were no new failures introduced with the updated R application. Tested some authorization cases for Daniel.
- Audrey: Jira admin tasks. Spot checking issues that came up during 18.0 installer testing. JMP 18 is now officially signed off by QA! I also just obtained an M3 Mac and will begin some numerical validation with the help of Nicole’s team to make sure the M3 chip doesn’t have any surprises for us.
Web Testing – Cary
- Josh L: JMP Live 18.0 Retested and I have signed off! Completed my JMP installer testing. Discussions with dev on Azure AD support in JMP Live. JMP Live installer testing 18.1 and 19.0 distributed environments. Started testing the JMP Live installer with database version updates.
- Anna: Investigated EA tracks for CCB and reported Sort by Row Order preference for Process Screening request. Reported Group platform EA request to show statistic used for Sort. Reported HTML5 performance issue for chart w/many markers and overlays. Finished final round of installer testing. (We all know this is Anna’s favorite task – NOT!!!)
- Natalie H: Completed the final round of English/French Installer Testing. Met with Steve for additional training on the existing automation framework. Continued with the setup of the automation environment on my dev machine. Lots of collaborative meetings and even a little BBQ team building.
- Web Test Beijing / Cary Jira
|
50
|
Test-Ready
|
|
11
|
Testing
|
|
40
|
Created Last 7 Days
|
|
67
|
Closed Last 7 Days
|
System/Host Testing-Beijing
- Beijing Team:
- Da Li: (1) Bug verification. (2) TS: 00129633, TS: 00129314 provide further comments. (3) DONE: License agreement testing on 18.1. (4) JMP 18.0 Final installer #5 testing. (5) DONE training: ACT-Now Compliance Training (Q1).
- Nan Wu: (1) Bug verification. (2) JMP Special 18.1 Installer Testing for license agreement FIX. (3) JMP 18.0 final installer #5 testing restarted. (4) Technical support issue investigation and sent feedback – Case number 00129035, 00130413, 00127828, 00122635.
- Kimi(Yu) Wang: (1) Bug verification. (2) JMP 18.0 Final Installer Testing. (3) Special JMP 18.1 Installer Testing. (4) Add UT scripts for python (install modules) – In Progress. (5) Tech Support: Case TS-00130380 – In Progress. (6) Jenkins: Check results for Beijing Daily UT. JMPTESTBJ-2944: Optimization: Migrate to a new Jenkins docker – Done. JMPTESTBJ-2980: Optimization: Change bj-jmpliveserver-18.dev.jmp.com to bj-jmpliveserver.dev.jmp.com – Done. Add connection files for 18.1 and 19.0 on win and mac and enable 18.1 and 19.0 projects – Done. Debug E2E test failures on windows, details refer to JMPTESTBJ-2983 - testing. Debug E2E abort jobs on mac, details refer to JMPTESTBJ-2984 - developing. (7) LMS Learning - Done.
- Da Zhang: (1) Bug verification. (2) JMP 18.0 installer testing. (3) JMP Special 18.1 Installer Testing. (4) ACT-Now Compliance Training (Q1). (5) JMP Special 18.1 Installer Testing for license agreement.
- Bella: (1) Learning and Development: The installment and testing of JMP 18.0, continuing studying the functionality, usage of JMP.
- Nala: (1) Bug Verification. (2) JMP 18.0 Final Installer Testing. (3) 18.1 special license testing. (4) Help JMP China SE Eric Wang for JMP Live related issues. (5) Discussed the JMP license limitation issue with Audrey and Daniel. And summarized the discussion here Several License Management and Authorization Scenarios for JMP 18 - Testing - China R&D. (6) Trainings for Bella about our team, our responsibilities and the daily used systems.
Data Discovery
- Morgan: Added a number of Script Box messages. Implemented hover help for Platforms in Script Editor. Combined the comment and uncomment commands into a unified context-sensitive command. Implemented double-click selection for block comments. Re-implemented indentation shortcuts which broke in Scintilla merge.
- Evan: Removed all remaining one-off subclasses of TextDisplay, NumDisplay, TextEditDisplay, and NumEditDisplay. Reviewed RowStateAbility iterators. Made padding tests for ComboBox and TreeBox. Some refactoring of Formula Dispatcher for clarity and to remove dead code.
- Dan S: Updated TabListDisplay to include padding internal to the title area (tabbed and combo styles). Fixed several bugs related to TabList styles. Working on additional box padding updates, and working on improved support for sticky titles with padding and margin.
- Dave B: Fixed bugs with tablebox/DisplayBoxColDisplay focus. Fixed matrix box sorting bug. Fixed parallel plot axis label bug. Looked into performance problem with image tests.
- Xan: More RowStateAbility refactoring – now with iterators for all flags or selected row numbers.
DOE
- Caleb: Did more sample size explorer conversion work. The layout and functional of the targeted response search is now closer to that of the old explorers. Also preparing for Discovery Europe next week. Presented an analysis technique using statistical shape analysis to Sky and his colleague in Brazil for distinguishing jaguars and pumas. They were quite impressed!
Interactive HTML
- John Powell: Integrated fixes into 18.1( JMPHTML-2405, JMPHTML-13433). Investigated proper rendering of partially excluded control chart subgroups with help from Annie (JMPHTML-1691). Created a bug for a regression causing a report to not load, found by Mike Muhlada, and discussed with Xan (JMPHTML-13550). Completed the second module of the Act Now compliance training.
- Mike Stickles: Migrated JMP 19.0 bug fixes from JMPHTML-2446, JMPHTML-13449, JMPHTML-13401, JMPHTML-13453, and JMPHTML-13398 to JMP 18.1 branch. Currently working on JMPHTML-13400. Have found two ways to fix that issue but both cause one or two regression tests to break; digging deeper into the issue to find a more robust fix.
- Michael Senoyuit: Finished up most of the missing instead of ‘.’ tickets and took some compliance training that involved a surprising amount of time travel.
Note from Shannon
Hope you all have a great weekend! And don’t forget – Election Day is on Tuesday, March 5.