Thanks to everyone who read the website, commented, and lent their support over the last 20 years — from the first article until now!

IDL 9.2 was released recently. The Release notes and What’s New [1] provide the details of the changes.

There are some interesting new additions:

  • IDL 9.2 comes with an embedded Python in the distribution. I think this is interesting and might mitigate the issues of trying to make sure your Python installation is setup correctly.
  • There is a new Windows command line with tab-completion. I don’t use Windows at all anymore, but I would have welcomed any help I could get back when I had to use Windows.
  • There are more feature in the IDL Package Manager (IPM), including support for the new IDL/ENVI Repository Portals, a new API, and a Publish static method. I am interested in the IPM. I like that you can have your own internal repository server, but it feels like there needs to be a common community site for shared packages. I set something up a long time ago at packages.idldev.com, but really it needs an accompanying website with discovery features and I don’t have time to do that. It could be the equivalent of Python Package Index (PyPI) for IDL.
  • SORT has a new STABLE keyword.
  • IDL 9.2 now allows trailing commas in array and structure creation.
  • You can programmatically screenshot IDL widgets via the SCREENSHOT keyword of WIDGET_INFO from a top-level base or widgets down the widget hierarchy. I could imagine this could be handy for certain uses cases.

I still haven’t been able to install IDL 9.1, which also had some interesting stuff that I would use regularly.


  1. Good luck with this URL. It almost certainly won’t work when the next version of IDL comes out, but I couldn’t find a better one. ??

At this site, you can choose your favorite coding font through a tournament of matchups between 32 different fonts.

via kottke.org

IDL 9.1 was released recently. The Release notes are online, but I think that link won’t work after the next version is released. My best guess is this link will work in the “long term”[1].

There is some interesting stuff in there:

  • a command line progress bar (I have my own version, but an official one would be good), which also can automatically be used for HttpRequest methods
  • IDL comes with 2000 SVG icons, along with a routine RENDER_SVG to render an SVG file into a bitmap image at your desired size and colors
  • more updates to the IDL Extension for VSCode
  • several widget updates, including dark mode on Windows, label and text colors, WIDGET_BROWSER on Mac, and more
  • many other new features and updates

Unfortunately, I am just getting my hands on IDL 9.0 now, so I haven’t had a chance to use 9.1 yet.


  1. Maybe another year or two? ??

The more I see of the official IDL extension for VSCode, the more impressed I am. I watched a recent webinar about the extension that continued to impress. Also, don’t miss the webinar about IDL notebooks (not to be confused with running IDL within a Jupyter notebook). The GitHub repo has some resources, including being about to create issues and participate in discussions. I have not switched to VSCode yet, but this is becoming more likely as time goes by. I think VSCode does have all the features I would need to switch from Nova.

LightSound looks like an awesome project!

The LightSound device was designed and developed in 2017 as a tool for the Blind and Low Vision (BLV) community to experience a solar eclipse with sound. The device uses a technique called sonification which is the process of converting data (or light intensity in this case) to sound. As the Moon eclipses the Sun during a Solar Eclipse the sunlight begins to dim and the LightSound device will output a change in musical tone.

In preparation for the 2024 total solar eclipse:

The LightSound Project has a goal of building 750+ devices to be distrubuted at no-cost to groups hosting eclipse events. Our hope is to provide a tool to aid in the accessibility of eclipse events for the blind and low vision community. The device can also be used as an educational tool prior to events when describing eclipse phenomena.

Link via kottke.

I link to to posts on kottke quite a bit. He has a list of a things he learned this year. Some of the ones I found fascinating:

  1. There are satellites that were launched in the early to mid 60s that are still operational.
  2. Multicellular life developed on Earth more than 25 separate times.

Of course, I have to include the one about the Parker Solar Probe:

  1. The Parker Solar Probe is the fastest object ever built by humans — at its closest approach to the Sun, it will reach speeds of 430,000 mph (690,000 km/h), or 0.064% the speed of light.

And:

  1. Human ancestors almost went extinct 900,000 years ago. “A new technique analysing modern genetic data suggests that pre-humans survived in a group of only 1,280 individuals.”
  2. “People who enroll in genetic studies are genetically predisposed to do so.”

Here’s the link to the recording of the Redefining Image Analysis with ENVI 6.0, IDL 9.0, and the ENVI Ecosystem webinar I attended awhile ago. The slides are also available for download.

Git commit messages can be important for browsing the commit history of a repo. This article gives seven basic rules for creating good commit messages:

  1. Separate subject from body with a blank line
  2. Limit the subject line to 50 characters
  3. Capitalize the subject line
  4. Do not end the subject line with a period
  5. Use the imperative mood in the subject line
  6. Wrap the body at 72 characters
  7. Use the body to explain what and why vs. how

There are explanations for why each of these rules is a good idea.

The Advent of Code for 2024 has started! Each day there are two coding problems — solve the first one to unlock the second one. I took the opportunity to try out the new IDL notebooks in VS Code that I just learned about yesterday. It was a nice environment to work through a problem.

older posts »