Notes From DevSummit 2025

432
1
a month ago
JeffreyThompson2
MVP Frequent Contributor
15 1 432

Last week, I traveled to the ESRI Developer and Technology Summit in Palm Springs, California. I learned/re-learned/experienced a lot of stuff between getting off the plane to the airport bar on the way back. Here are my notes. Some of them are about Experience Builder, some are more general web development stuff, some are about other ESRI products and some are about Palm Springs and the conference itself. This is just going to be a bunch of one liners and don't expect me to elaborate in the comments. I don't have many details on much of this stuff myself. Ordinarily I try to cite my sources on this blog, but for practical and confidentiality reasons, I'm keeping stuff anonymous this time. There were a number of improvements I spoke to ESRI staff about. I'll be tagging these with YCTML (you can thank me later), so you know I am solely and personally responsible for making this stuff happen when and if it does. Unless you don't like this stuff in which case I really had nothing to do with any of it. 

I can't do a post like this without showing my stupid face, so here you go. I'm on the right. My new bestie @SimonSchütte_ct is on the left. The guy in the middle is Jack "What the Internet Would Name a Volcano" Dangermond.

PXL_20250311_014822731.MP-ANIMATION.gif 

Experience Builder Stuff

  • I successfully convinced with a rigorous intellectual argument the Build Team that the Clear Map Highlighting Button is in a very bad place, YCTML.
  • I successfully emotionally manipulated the Build Team into getting the new Turn On/Off All Layers Buttons to respect the customization in the Map Layers Widget. YCTML, we're getting native support for thematic groups.
  • If you want to allow your users to print an entire Page, for say creating a custom report, the Button Widget can link to Print Preview.
  • Windows can be reused multiple times throughout an application and called from any Page.
  • For best results, design based on multiples of 16px.
  • Place a Column Widget inside a Sidebar Widget and add some Padding for a neat floaty effect.
  • Having trouble navigating around a complicated layout? Use these carrot things at the bottom of the Builder.JeffreyThompson2_0-1742399901364.png

     

  • Need to add an npm package to a Custom Widget? Create a package.json within the file structure of the Widget and call npm i on that folder.
  • Don't change the version number when upgrading a Custom Widget to a new version of Experience Builder.
  • Stop and restart the client server when first creating a new Custom Widget.
  • The Python API is capable of transferring an Experience Builder project between Portals.
    • It can handle remapping of Webmaps and Datasources.
    • But, as of now, it will break if you have any Custom Widgets.

General Web Stuff

  • Plan before you build.
  • User Testing
    • Make a scenario for your end-users to test. Write them a story. Give them a character. Dress in Elizabethan costume. Ok, maybe not that last one.
    • It doesn't take a lot of testing to find most problems.
      • If a user can successfully make the first click on a task, they will complete the task 86% of the time.
      • Five test users can find 80% of usability issues.
    • My notes say "question your end-user's goals." I'm pretty sure that means ask them what they want to accomplish, not belittle their worthless dreams, but you do you.
    • Watch and take notes as your users test stuff, but resist the urge to tell them how to do stuff.
      • If you can find a sneaky way to watch them work without telling them you made the app, even better.
      • Assure your users that you are testing the dumb application, not their dumb selves.
    • Classify your problems based on severity, not frequency and assume any issue will be worse on the live application than in testing.
  • Some types of applications, like how to get help in an emergency, can instantly go from zero users to thousands. Make sure your servers can handle that kind of jump.
  • Do you have a design with a list next to a map? (Something similar to the JewleryBox Template in Experience Builder.) That design doesn't work on a phone. Instead use a "two-page" list on one page, map on the other layout for phones.
  • ESRI Webmaps will not pass accessibility testing, at least for now, but if you can convey the same information some other way, like a list, then the map becomes more "decorative, than functional."

Other ESRI Stuff

  • Coming Soon to (or maybe already in) an ArcGIS Pro Near You
    • Create a Utility Network from a Feature Class.
    • Automatically turn a Geometric Network into a Utility Network.
    • Pre-trained AI models that tell you why they class stuff the way they did.
    • AI Arcade Coding Assistant.
    • Estimate Time To Event will tell you the exact day your bridge will fall down.
    • DIY-AI extensions to the AI Assistant.
  • ArcGIS Online/Enterprise
    • I talked to several members of the Online staff about building a button to send an email to the members of a Group. I could put YCTML here, but it seems like they have been asked so many times that I was a few seconds away from a punch to the face.
    • Did you run a Credit report on your ArcGIS Online organization? Was your biggest user No Username? That's storage.
      • They say they are going to make the Credit Reports better, in a vague nebulus way.
    • ArcGIS Enterprise 11.6 will be released...never. The version after 11.5 will be called Enterprise 12.0.
      • The main reason for the new version number is the retirement of all the JavaScript 3.X stuff, like WebAppBuilder.
  • ArcGIS JavaScript API
    • Take a look at this Demo to see how to make a shapefile into a FeatureLayer.
    • I spoke with one staff member who said the saveAs() function can be used to create a new Portal Item from a client-side FeatureLayer.
      • But the documentation disagrees.
      • I am following up on email about this. Update: I have confirmation that the documentation is correct. I have opened an Enhancement request and dropped a new Idea.
      • I guess, YCTML, if this isn't supported and it spirals into an actual function.
      • If it is a function, I may take a stab at a FeatureLayer Maker Widget.
    • The hitTest() function and the selectFeatures() function built on top of it will allow for developers to set the search radius rather than its current fixed 6px, YCTML.
    • I overheard some staff members discussing building an Interactive Legend Widget. Assuming those guys build it, expect it to flow into Experience Builder eventually. Which leads me to...
  • Instant Apps
    • Instant Apps have their own Component Library out on a Public GitHub Repo that you can totally just use if you want.
      • That Interactive Legend Component looks fun.
      • The Instant Apps Team can't think of a reason you couldn't hack one of their Components into Experience Builder.
      • I think I may have to try that.
    • There is no Developer Edition for Instant Apps or Dashboards.
      • But if you ask the Instant Apps Team nicely, they will send you the code for any Instant App you want.
      • And if it becomes a thing, YCTML.
  • ArcGIS Solutions

Other Stuff

  • Palm Springs Tramway
    • When I stepped onto the Tram, it was 80 degrees in the desert.
    • When I stepped off the Tram 10 minutes later, it was 40 degrees with a foot of snow on the ground.
    • Closest thing to a closet to Narnia I have ever experienced.
    • No matter what Van Halen says, do not jump on the gondola.
  • Chew thoroughly before swallowing.
  • Congratulations to @RasterFan98 for getting the Custom Widgets Group into the Plenary Session.
  • If you ask the ESRI Events staff for a telescope to view the lunar eclipse during the Summit Party a few days before the conference, they will be disappointed they could not make it happen.
  • I attempted to fill my time attending every possible talk I could.
    • In retrospect, I wish I blocked out at least an hour a day to spend on the Expo floor, as most of the things I learned and accomplished happened outside of the tech sessions.
    • And many of the talks were also recorded.
  • If you uncover a massive conspiracy that aligns with your values and goals, is it your moral duty to still expose the truth?
  • NATO is investigating reports by German Intelligence that the Nord Stream Pipeline was sabotaged by ....
    • NATO apparently thinks they can show a lolz so random spot in the Baltic Sea to a room full of map nerds and no one would know what it was about.
  • ESRI Events staff makes some pretty good food.
    • Thursday's lunch was probably the best meal I have ever had in a high volume cooking situation.
    • If someone can get me the recipe for that quinoa salad, I might eat some quinoa again. 
  • Why didn't you Dooooooooooodge?
  • Mapillary - Strap a camera on something and make your own version of Google StreetView, for free, according to my source.
  • No one likes the sound of their own voice.
  • @KenField gets to go to DevSummit, but not @JohnMNelson. Is it because Ken is a public figure?
  • There is apparently a set music playlist that ESRI uses before the Plenary/Keynote Session everyday. Inexplicably, Maps by the Yeah Yeah Yeahs is not on it.
  • Palm Springs is a pretty town. I see why the celebrities used to hang out there. Here's a sunrise rainbow on a mountain from the Conference Center.eedcc675-441f-4ba4-8af0-e4dca527287c~1.jpg
  • The Palm Springs Airport is mostly outdoors.
    • Neat when I swiftly walked through it on a perfect weather day.
    • Not so neat when I had to wait there for three hours in very bright sun with a strong, chilly wind.
    • Considering the length and intensity of the Palm Springs summer, I think there are probably more not so neat than neat days for this concept.
  • The Big Kahuna Burger just sounds better with cheese. 
  • The face of a vicious barbarian.JeffreyThompson2_0-1742482907472.png

     

1 Comment
About the Author
A frequently confused rock-hound that writes ugly, but usually functional code.