The Trek to Ventura

This outline documents our migration from a 2010 17-inch MacBook Pro running Monterey to a 2023 16-inch M2 MacBook Pro running Ventura. The process, which involved updating applications from Intel to ARM code, took about two weeks, although we were functional on the M2 for the most part after migrating our software from a Time Machine backup.

Last Updated: 10 June 2023. First release.
The Hardware

There are a few hardware differences between the 2010/2011 MacBook Pros we have been using and the 2023 M2. We found them to be refinements for the most part.

We researched hardware requirements for Adobe Creative Cloud and DxO’s software suite, which were the most demanding of our applications. We found 16-GB RAM and a 1-TB hard drive with the M2 Pro covered the requirements with room to spare.

It’s always tempting to recommend the maximum configuration and we know consultants who do. It isn’t their money and if there’s an issue it won’t be because the configuration was underpowered.

But in the real world, we live with compromises. This is the most bang for the buck. And the more you understand how the new architecture works, the more confidence you’ll have that this configuration has legs, too.

Touch ID

We really like Touch ID, which learned our fingerprint to use as proof of our identity for unlocking the screen, passwords and purchases. On Monterey we always had to type in our password. No more.

Retina Screen

We really don’t notice the higher resolution except when viewing 500p thumbnails in Photoshop where they seem a lot smaller than we’re used to.

The higher resolution Retina screen is sharp without making everything small but not much of a difference from what we have been using, frankly.

Glossy Screen

A dozen years ago the debate about laptop screens included hand wringing over whether they should be matte, as they had been with early LCDs, or glossy glass as was becoming the fashion.

These days it is rare to find a matte option any more.

We’ve been using a 2010 17-inch MacBook Pro with a matte screen and a 2011 13-inch MacBook Pro with a glossy screen. And while we can see reflections on the 13-inch screen when the display is dark, we don’t notice any issue when the display is rendering an image.

We suspect the brightness of the screens has made the matter moot.

See: We Calibrate the M2 MacBook Pro

Larger Touchpad

We’ve had no trouble at all adapting to the much larger touchpad on the M2. We’re not sure what the advantage is of having a larger trackpad, but it hasn’t been an issue.

16-inch vs. 17-inch

Our 17-inch screen layouts did get a slight crop on the M2 but small adjustments made everything fly again. It’s not compact but it isn’t unwieldy either. Ideal.

We do have to smile a bit, though. We had considered upgrading our backup box first to conserve cash for a more powerful machine later, rather than replace our main box now and grab a less powerful one later as a backup. Since we got this as a refurb it may serve both purposes and we can look forward to an Apple Silicon desktop in the future.

USB-C Ports

We didn’t think we were going to like moving to USB-C ports because we have so many USB-A connections to make. Not to mention wired Ethernet and a second monitor. Or even a Compact Flash reader.

But because we have been reviewing EZQuest peripherals we had solutions to all of those problems. We could even connect our Wacom Intuos tablet, have a free USB-A extension and a recharging cable for Lightning devices.

We’re amazed that our Ethernet and video is all going through one USB-C port connected to an EZQuest hub. That’s a lot of data. But not one hiccup.

See: Test Drive: EZQuest Ultimate Plus Hub
and Test Drive: EZQuest Card Reader

Printers

Two printers installed for Monterey did survive the migration. One is a Brother laser printer and the other is the DNP dye sub printer. We also wanted to install the Canon Pro-100 and Epson R3000, our 13x19-inch printers.

All of these printers are, one way or another, accessible on our network. So no ports on the laptop were used.

Brother 2270DW

Connected to our network via WiFi, this laser prints black and white text only. We rarely use it from our main laptop, though. Untested.

DNP DS-620

We were able to print a 4x6 dye sub to the DS-620, which is connected via USB to a WiFI router, without reinstalling the driver.

Canon Pro-100

Frankly, we haven’t turned this printer on in many, many months. It’s connected to our network via Ethernet. And the last drivers we installed, years ago, were Intel.

We turned it on and launched System Settings to install the printer, which wasn’t listed. We clicked ‘Add’ and it showed up but informed us the software was installed incorrectly. So we went to the Canon support page for the Pro-100 and downloaded the CUPS driver. We installed that and when we returned to the Add Printer option in System Settings it appeared and installed.

That’s about as easy as it could be.

Printing was trickier but eventually successful. We did install Canon’s Print Studio Pro but it didn’t appear in Photoshop’s Automate menu. So we just used the Print command, letting the printer manage color because non of the previous ICC paper profiles were installed with the driver. A step backwards.

We had an issue with the Automatic feed detection, which kept wanting us to load paper manually. We finally told the driver to use Manual feed and loaded one large sheet that way.

We had to cancel a prior print job, though, and Canon wouldn’t let us do that the normal way (through the Printer status display) but we were able to enable the HTML CUPS interface to authorize ourselves and get our print made.

But where are the paper profiles for Canon ink and Canon paper? We were more than a little disappointment at our Canon software installs.

Epson R3000

To update the Epson R3000, which we also haven’t used in a long time, we visited Epson’s support page for the printer and downloaded the driver for Ventura.

After installing the printer, we were able to easily add it to the Printer list in System Settings, just as we had the Pro-100. Both were detected via Bonjour on our network.

Epson Print Layout plug-in did not have to be reinstalled. Untested, though, so we’ll update this report when we make a print, hopefully with a new Epson paper on its way for testing.

Scanners

We use two scanners. The Canon 9000F is attached to our 13-inch MacBook Pro running Monterey, so it remains available running SilverFast and VueScan. The Canon MG8120 all-in-one is available on the network via Bluetooth.

Canon MG8120

We downloaded the Canon IJ Network Tool and installed it despite the support page’s warning that the all-in-one has been “retired.”

We were able to install the scanner via Bonjour but the IJ Network option for the printer did not let us add the printer. So no printing from Ventura but we can live with that.

We did update VueScan, which also recognizes the MG8120. Which is a good thing because Image Capture did not, oddly.

Logitech Mouse

We were able to pair our Logitech mouse via Bluetooth on the M2 without using the USB dongle required on the 17-inch MacBook Pro whose Bluetooth was too old to pair with the mouse. That saved us a USB-A port on the EZQuest hub.

It’s been flawless since we paired it.

We do prefer using a mouse to a trackpad most of the time. This is especially true when scrolling Web sites where touching the trackpad seems to trigger a click. We’ve clicked on so many links unintentionally that we habitually reach for the mouse on most sites.

Wacom Intuos Tablet

One of the things we liked about our antique Wacom Intuos Tablet is that it can be used with either a mouse or a pen. It’s hard to find a table with a mouse these days.

We reinstalled the drivers patched by Nicolas Sherlock in case it mattered to the processor. The pen and mouse function but the control panel complains about the installation so we weren’t able to get the mouse to operate as a mouse rather than in pen mode.

Which is why we stuck with the Logitech Mouse.

But we did use the pen to sign some PDFs and tested it with a few brushes in Photoshop. We don’t have the pressure sensitivity, so we’ll investigate reinstalling the control panel again.

See: Running Old Wacom Tablets on Newer macOSes
and Resurrecting a Dead Mouse

The Software

Although we have been running Monterey, the move to Ventura was complicated by our decision to switch from Intel software for ARM versions. While we can (and have) run Intel-only software via Rosetta 2, we wanted to install the ARM versions wherever possible right from the start.

And, at the same time, we decided to update to the latest versions of other software we rely on. That included ImageMagick (we we tend to leave alone after getting an install working) and PHP (we’ve been running 7.3).

Finally, we decided to do our installs, where any customization was involved, via Homebrew rather than directly in the system. That would protect them from system updates (like Sonoma, coming in the fall).

One of the key issues with that approach is to get a handle on the PATH environment variable so the right version of an application like apache runs. And in our case to make sure it is mirrored in the Keyboard Maestro equivalent.

Configuration

We had to make a few decisions about basic system configuration settings right off the bat.

System Settingsā€¦

We heard a lot of grumbling about Ventura’s System Settings but we found them an improvement over Monterey. We confess to using the Search box to find what we’re looking for whereas in Monterey, we hunted for the icons.

But it’s been pretty painless, using that approach. We might have gone nuts hunting for things with icons.

FileVault

We had never used FileVault until now. It simply wasn’t practical on our older equipment running hard disk.

But on a quick system like this with an SSD, it’s a no brainer. Which is why it’s the default.

There are no practical consequences. We copy and move files just as we used to and they remain as accessible as ever. It’s just another layer of security.

Lock Screen

When the screen goes to sleep (which is does quickly by default and we didn’t bother changing that), you are presented with a lock screen when you wake it.

We thought that would annoy us but we always wake the other computers by tapping the Shift key so it was no trouble for us to just tap the Touch ID key.

And it provides another layer of security. Anybody else who wakes the computer won’t be able to access it.

ExifTool

ExifTool is installed in /usr/bin/local and was migrated with Migration Assistant. There’s nothing custom about the install, so we left it there. And it worked right off the bat.

MySQL 8

We installed the ARM version of MySQL over the migrated Intel version. The Control Panel was installed along with it and automatically started MySQL when the system launched. No issues.

We considered moving to MariaDB but thought we might save that for another day after getting the PHP applications that use MySQL running.

We did have to reset our passwords by Initializing the Database from the Control Panel to get our password recognized by MySQL.

Homebrew

Operating system updates and upgrades don’t always honor custom software installation, especially when they require replacing default versions of utilities. So we decided to isolate our custom installations and leave the factory installs alone. That worked out well for our move from Catalina to Monterey.

For custom installs that do not conflict with factory installs (like ExifTool), we just install the utility in /usr/local/bin. But for everything else, especially complex installs (like ImageMagick), we let HomeBrew manage the installation.

See: Moving to Monterey

Apache

We shut down Ventura’s apache in favor a Homebrew’s, which required editing a different httpd.conf to point to localhost as a server and load the PHP library we rely on for our database software.

We’ve made these edits to the default configuration every time we update our operating system so there was nothing mysterious about what we had to do.

There are online guides to walk you through this but we like to use BBEdit’s file comparison tool to look at the default httpd.conf in comparison with our working one and making the changes.

This time things were complicated by moving to a new version of PHP, which was also installed by Homebrew since Apple no longer includes it with the operating system. So we couldn’t just copy the old setting.

PHP 8

We dread updating PHP. Most of our PHP code was written 10 years ago and is rather dense. So if something breaks, and it always does, we spin our wheels a while before we manage to straighten things out.

To make sure our edits work, we run our revised PHP applications alongside our older ones, in parallel, checking that the results are identical, before abandoning the older versions. You can’t be too careful.

It isn’t our code itself that worries us so much as the somewhat arbitrary sunsetting of PHP functions. We always seem to have to replace some code that has fallen out of favor with some new approach that, frankly, doesn’t seem to offer any advantage.

We did install PHP 7 to avoid this, since our code had been updated from PHP 5 to 7 some time ago but then we decided we might as well make the move now to PHP 8, since it’s the only version currently supported and does offer some performance improvements.

The big catch is that PHP 8 is a lot stricter than PHP 7 so we saw a lot more warnings than we were used to. In the end, though, that just improved our code. Or so we told ourselves.

Some of the warnings were simply confused. We struggled with a reported syntax error for a query that was perfectly legitimate. The problem was that a session variable had expired and the query was trying to search a non-existent database. When we fixed the session variable (whose syntax had changed), all was well again.

Library

One of our Apache/PHP/MySQL applications is a database of our book collection. It survived the migration unscathed.

XBOOK

Another of our Apache/PHP/MySQL applications is what began as a CP/M checkbook program with some example dBASE II code from Ashton-Tate in the 19080s, evolved into a C program on MS-DOS contributed to the DECUS user group that eventually became a PC-DOS application running under emulation on OS X and finally morphed into a browser-based, multiple-account financial application.

This is the one that gave us warnings about syntax errors that were actually missing data. We constructed the query correctly but the database variable had been emptied.

We had other issues with session variables and checking for the existence of variables that we had coded in the change from PHP 5 to PHP 7. And we did have one issue with a loop that went one iteration too far.

The warnings pointed everything out to us so by the time we got through them all, we had sounder code. But it wasn’t easy debugging.

Perl 5

We decided to install a more recent release of Perl 5 than the system installation using Homebrew.

Python 3

We also decided to install more recent release of Python using Homebrew. We don’t use Python much because Perl suffices. But it’s nice to have all the friends you can get.

ImageMagick 7 with PerlMagick

The last time we installed ImageMagick with Homebrew, it didn’t install Perlmagick, which we need for our image processing software. So we built Perlmagick and installed it separately.

This time, though, we did it all through Homebrew. we installed perlmagick and both ImageMagick and PerlMagick were installed by Homebrew. Piece of cake.

See: Installing ImageMagick With PerlMagick

Adobe

Migrating the Intel versions of our Adobe applications was a mistake. We needed a pristine system to install the ARM versions. Manually deleting Adobe applications with AppCleaner, which is what we used to get rid of other Intel software, wasn’t going to get that for us.

We had to use Adobe’s Cleaner app that requires Rosetta. And which consequently threw repeated errors at us about a package that was not authorized or some such. We just kept clicking OK until all the Adobe stuff we had migrated had been stripped from our drive.

Then Creative Cloud installed without a problem and we were able to use it to install a few applications we needed right away.

Later we downloaded the Photoshop beta to try Generative Fill and there was no issue at all.

See: It’s a DIY World
and Generative Fill Test Drive

DxO

We downloaded the latest ARM versions of DxO’s software and reinstalled after removing the Intel versions. Everything ran as expected.

We’ve been using PureRaw 3 to convert DNG files and it’s been remarkable how fast it runs on the M2. It’s making us wonder if we should include it as an option in our ingestion software, although the resulting file sizes are much larger.

Our Publishing System

Because our publishing system relies on AppleScript, JavaScript and Perl code which is interpreted at run time, we didn’t have to worry about moving to ARM code as long as our support software like ExifTool and ImageMagick were running on the new architecture.

In fact, we were able to compose and convert stories before we had all the other pieces in place to create thumbnails or rollovers or resize images.

And we were delighted to find so many of the annoying little delays (like Twitter redrawing its confirmation dialog three times as it accommodated the text of a tweet) had disappeared on the new hardware. Even Keyboard Maestro HTML prompts, which took a beat on Monterey running with the aid of OpenCore Legacy Patcher, now appeared instantly on Metal.

After two weeks with the new machine, we noticed we had not touched the keyboard on our workhorse 17-inch MacBook Pro in days. We’d made the switch without realizing it.

Dictation

We’ve experimented with dictation on early versions of macOS but nothing quite prepared us for the smooth experience on Ventura with the M2. It didn’t miss a beat despite our less than crystal clear pronunciation.

We’re not sure how or if we’ll use it but it’s nice to have an alternative to typing.

Cambi

We wrote a comprehensive application in Xcode to do image resizing and create HTML tags at the same time. It was compiled for Intel, of course, so we downloaded Xcode for Ventura and compiled it for ARM. No problem.

Conclusion

We found it instructive to run Monterey on unsupported MacBook Pros. Certainly not everything would run on that arrangement, particularly applications that required Metal like DxO’s current software.

Even applications that didn’t mind would tax the system so that the fans were running much of the time. That’s in contrast to what we were running in 2010 when we never heard the fans.

Little things like screen redraws were sometimes sluggish but we learned to wait or relaunch the software to improve load times.

But after three weeks with the M2, we’ve been delighted with the performance and familiarity of the system. We think you can already see the benefits on Photo Corners.

Our 13-inch laptop still suffices for word processing and scanning and Web browsing. There isn’t a clear disadvantage from the M2 for those tasks. But the tasks we relied on the 17-inch laptop to do, the M2 far surpasses.

We would do it again.