Welcome to the JMP Development Update for February 16, 2024!
Installer testing for JMP 18.0 proceeded this week without any major source code related showstoppers found. However, the testing effort stopped today when legal confirmed that translated license agreements for the JMP installer should ship with JMP 18.0. Those agreements will not be able to be finalized until late next week, after which a set of final installer candidates will be generated and verification can resume. Thanks to all development teams for displaying remarkable flexibility during this sometimes-chaotic release cycle. In addition to source code changes, JMP 18 has featured a very high rate of process change both within development and across the whole business. All teams across the company are working hard to ensure that we make our projected release date in mid-March and successfully transition customers to new contracts and delivery processes.
Thanks very much to Hyde Miller for presenting on the JMP technical training starter at this week’s JMP Dev meeting! We had super attendance at the live session showcasing this multi-release training toolkit, but if you were not able to be there, no worries - you can find the recording here. Unlike Jeff P, I definitely did not pay Hyde a dollar to compliment the JMP 18 feature pages and the late features page in Confluence! However, I certainly appreciated that he highlighted their usefulness during in his training development process. (And I can’t speak for what Mia may or may not have done here… :smiling_face_with_smiling_eyes:Just kidding, Mia!)
During the meeting, Hyde mentioned that the training add-in collects usage data and he shared a few graphs of uses per day, and inquiries by release (since March 2023).
He also shared these treemaps showing some of the most popular topics that technical folks access through the starter:
For JMP
For JMP Pro
Before I thank her for the usual early adopter reports, I wanted to say a special congratulations to Tonya Mauldin on her 25 year work anniversary! Tonya started at SAS as a technical student and has worn various hats over the years - from SE to technical support analyst to her current role as a lead statistical tester for JMP’s quality platforms. In addition to her testing responsibilities, Tonya fields the bulk of JMP’s early adopter feedback (thousands of items per cycle!), facilitates and distributes feedback from development colleagues on bugs, feature requests, and other issues. She also frequently plays the role of early adopter herself, pitching in to try out changes to JMP’s internal testing tools. Thank you, Tonya, for your many years of service to SAS and JMP!
Here are this week’s beta/crash reports for this past week with crashes selected:
Beta/crash report for the week of 2/16/24 | JMP Live (sas.com)
Finally, thanks to Audrey Shull for sharing this Jira Tip of the Week:
As most of you know, Jira’s Components field the primary way our R&D teams drives ownership of Jira issues. The Components field allows you to add multiple components, which can seem tempting if you’re not sure who the owner is, or if the item touches multiple areas. However, Jira admins would like to ask you to only add one component to each issue. Multiple components confuse both Jira’s built-in automatic assignment functions and the Jirabot tool that JMP uses to auto-populate default roles for components. If you’re not certain of the correct component for an item, please either consult Shannon to ask or take a guess at one component and it can be changed if needed.
General Announcements
Important Upcoming Dates
- JMP 18.0 QA Signoff – FC#4, early March 2024
- Please visit Confluence for a full list of JMP 18 dates.
JMP Development Updates
Host
- John Schroedl: Visual Styling rework of host Button controls to honor padding and chrome sizing. Further work on Home and Window List to remove Telerik dependency and some UI changes. Updated libxml2 again at 18.1 and 19.0 to pick up fix for a medium CVE.
Interactive HTML
- Michael Senoyuit: Worked on getting up to speed on the axis component and on using Missing instead of a dot for missing numbers.
JMP Live
- Aurora: 18.1: Group authorization refactoring. Site wide space admins can now admin groups as well. 19.0: Add tests for existing large object methods. Third party library review and updates. Miscellaneous: Bitbucket branch cleanup.
- Michael G: We merged in our big upgrade to Vue 3 in the JMP Live Client. Focusing on some final package upgrades and refactoring before starting 18.1 features and fixes.
Statistics
- John Sall: Getting back into coding after a week at Patagonia National Park. Prepared starter code for Meichen to continue with Fit Causal; it orchestrates two different calls to FitGLMM (JMP-20202).
- Annie: Continuing preparations for the Statistically Speaking event next week with Bill Woodall and working on my Discovery EU Roadmap sessions.
Stat Testing
- Mark: Assisted Di Michaelson with helping a student who had questions about equivalence testing. Writing my lightning talk for a Roadmap session next month. Also, closing tickets for Easy DOE and debugging new failures in Easy DOE unit tests that deal with the Profiler. Attended technical training for Torch Deep Learning add-in given by Russ Wolfinger.
- Jacob: Updating Easy DOE unit tests for compatibility with a forthcoming updated effects list. Working on new tests for OML Designs with discrete numeric factors. Attending Joseph Morgan’s JSL Workshop. Investigating a crash in Torch Deep Learning.
- Tonya: Attending Joseph’s JSL workshop and I’ve been working on bug verification and unit test cleanup.
Product Management and Product Marketing
- Bryan F: Sarah Sylvestre developed a second set of requirements for an AI assistant and documented our findings. We’re also working with Jacob and Ernest to develop some usability tests for Discovery Summit Europe. I also did some work to ensure that we can automatically start and stop video recordings from JSL via embedded Python so that we can record some of the usability sessions. Sarah and I met with Andrea Coombs to discuss a survey to gather input for potential changes to data tables. Reviewed some text strings for JMP Live. More logistics related to Discovery Summit Europe (e.g., swag).
Technical Support and Engagement
- The last 4 weeks have seen an increase in cases from previous weeks. I expect that to continue. TS continues to work closely with Digital Operations on various projects, and Engagement continues to provide input/feedback to the JMP Store developers. Engagement has also been working with Legal, Finance, Inside Sales, and Bizops. We are very happy to welcome back Corrado after a couple weeks off! 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.
Case Volume by week:
Case Topics for Engagement queue, total:
Case Topics for Engagement queue, last week:
Development Operations
- Bob: Installer validation file creation for Final Candidate #3. Updated Installer Validation PDF for 18.0. Loaded previous releases of installer files to My JMP. Added JMP Live 19 single file installer to nightly process. Troubleshooting for reported excel addin issues with 18. Software order email change and review for JMP products with upcoming changes to SAS release process. Prepared 18.0.1 Windows installers. Tested work done by Nick on prototype of 18 build machine moving from physical hardware in lab to an AWS instance.
- Myron: Continued work on JiraBot 3.0 UI (JMPTOOL-939) and Request JiraBot run in additional/different circumstances (JMPTOOL-1045). Creating Windows AWS environment for Apache web servers (JMPTOOL-868).
- Nick: Continued setup of our AWS nightly build machine in hopes of having a trial run today or very early next week, after I've confirmed I've gotten all of the post to JMPSRV01 portions of the scripts disabled. More on that very soon. Also, updated several AWS machines for security updates:
- Windows CI and Baseline Test machines
- Windows AI machines
- Linux Jenkins Server
- Linux DevOps tooling machine
- Melanie:
- Created a Confluence page with useful information from Nick for using the Jenkins Text Parser tool for finer control of a Jenkins job. How-To: Use the Jenkins Text Parser to Control Errors (I was sad that I couldn’t mark up the code as code and also set some of it as bold – Confluence styling just can’t handle that.)
- Investigated ways to filter gone/deactivated employees in Jira, but none of them panned out yet. Shannon had a suggestion that might work - automating a search of the JMP data table we create with all our Jiras. Other Jira errors are detected in this way by an automated process that runs weekly and emails Shannon, Michael and Audrey weekly (e.g., open items where Assignee and Developer do not match, malformed TS track numbers).
- Planned out some future work and created new Jiras for myself.
- Coordinated with Qiana and Jim to get the final run for the help keys for 18.0 JMP Help.
- Investigating why the jiraissues job times out at 12:03am but runs successfully at its other times. No resolution yet.
- Shannon: Release coordination and tooling discussions. Goals and manager feedback discussions. Resume review and conversations centered around program manager position, now reposted here. Tried out Michael Hecht’s new toy (Apple Vision Pro) while in the office on Thursday. (Thanks, Michael, very cool! I hear Julian has one too…)
Localization
- Trish: Finalized Localization Team Goals for 2024. Provided manager survey feedback to my team in preparation to discuss during 1:1 meetings next week. Qiana and I touched base on Oxygen conversion project. Investigated localization errors reported by Susan as she was trying to build localized JMP Live help - fixing errors, documenting issues and putting process in place to ensure we don’t repeat these errors in future deliveries.
- Allison: Worked on validating the production kits for “Big books” projects. Updated quote template for vendor to use for the upcoming Big books localization project. Testing out the Localization Dashboard automation and reporting issues. Fixing tag and spacing issues found in the localized JMPLive Online Help files in memoQ.
- Howard: Worked on Dashboard project launch feature, including package creation, WC generation, OneDrive connection and email template. Continued working on Dashboard Session feature. Testing new WC implementation.
- Sandy: Continued work on Jenkins job to automate xstr language file compilation. Finished work on word count changes for dashboard. Verified Jira bug for dashboard.
Documentation
- Qiana: Reviewed my New Feature items on the New in JMP page. Worked with WebWorks support to install a patch for an image generation issue. Regenerated the HTML5 localized help. Ran the Helpkeys-AWS & HelpMap Upload to AWS jobs. Redid the //depot/main/docsource/Projects/ folder structure. Updated the template files for 18.0, 18.1, and 18.2 deliverables.
- Susan C: Reviewed open 18.0 Jira issues and deferred them. Reviewed Landra’s What’s New in JMP page for 18.0. Working on JMP Live/Public localized help. Sent the HTML5 & JMP Live/Public EN help to test.
- Devon: Helped with JMPDOC-2059: Removing Avenir font from help files, continued work on FrameMaker to DITA conversion table.
System/Host Testing-Cary
- Mandy: Repeated 18.0 installer testing with candidate #3 early this week for Mac. Worked on a few JIRA fixes at 19 and investigated a few TS tracks, including 2 outstanding crashes from Holgar where I asked for more detail and have not heard back yet. Sharing a screen shot of data table left hand panel changes and updated fonts for the column names, references and scripts (JMP-20148: Rewrite left panel of the data table to use DisplayBoxes and the newer list technology, JMP-20474: Show more text in lists by auto-shrinking font).
- Hunter: Almost finished with JMP 18.0 installer testing for my assigned configurations. Opened two JIRAs for issues found publishing reports on Big Sur to JMP Live and a performance issue closing JMP 18.0 on any Mac with the send anonymous usage statistics preference enabled. Responded to several JMP Early Adopter cases. Tried to reproduce an authorization failure reported with JMP Clinical 18.0 on Windows with JMP Pro 18.0 already installed and authorized.
- Mike M: Installer testing for 18.0. Opened a couple Jira’s for this, mostly with Help docs and Help map issues. Investigating a couple TS tracks, updating Sikuli tests for last run on 18.0 (a couple font diffs). Many image diffs as 19.0 kicks into gear. I’ll be looking to get 19.0 and 18.1 running in Sikuli soon.
- Lisa G: Worked on my 18.0 installer testing configuration and verified two 19.0 crash fixes.
- Audrey: Jira admin work, 18.0 installer testing.
Web Testing – Cary
- Natalie M: A shorter week as I was sick the first part of the week. Began ‘again’ :smiling_face_with_smiling_eyes: my 18.0 Installer testing assignment. That has mostly filled my week with the English and French testing. I have learned a lot in the process. Thankful to Josh and Steve who have helped me.
- Anna: Installer testing.
Data Discovery
- Xan: Supporting summary statistics for implicit count for Bar, Line and Points (usually pointless but customer was wanting Cumulative Sum, which is useful). Code clean-up for RowStateAbility: using bool instead of int and renaming deep “rowRow” methods.
- David B: Worked on merging changes back into 18.1. Improved pdf export on Windows by adding an option to not paginate and fixed problems with multiple lines in a tablebox.
- Dan S: Improved padding behaviors for TextEditBox and NumEditBox. Fixed issues with Tab List styles, Scroll Box printing, and image output from TableBox.
DOE
- Caleb: This week, more work on the sample size explorer code conversion. Very excited about the progress Peng and I have been making!
Note from Shannon
Hope you all have a great weekend!
Thanks to Dan Valente for passing along this funny Instagram story featuring engineers trying to create the worst UI on Reddit. You can click the link to see them all, but here’s a screenshot of my personal favorite, typos and all: