The Breakroom

Developers, Developers, Develop!

January 12, 2024

By Craig Hockenberry

Two of our most popular developer tools were updated this week. It’s not just our website that’s getting the love!

xScope

Our primary focus with xScope version 4.7 was to update the screen recording code. Alerts in the Sonoma beta gave us pause and we noticed an increase in crashes with the older APIs. There were even significant bumps as we replaced code.

Most tools use the current screen image in one way or another: the Loupe to magnify the pixels and sample colors, Dimensions to determine the distance between interface elements, and even things like the Crosshair automatically adjust contrast depending on where your mouse is located.

This modernization effort wasn’t easy, but we were able to increase the speed of the tools and the app got more reliable. And that inspired us to keep going!

Measuring the screen with Dimensions was redesigned with a new algorithm that takes color perception into account. Detection on subtle patterns, gradients, materials, and other modern UI design is much better now and and it’s sensitivity is much easier to tweak with a new Settings UI.

We also spent time improving support for Dark Mode, adding new reticle modes for the Loupe, making it possible to delete Guides with a shortcut, and much more.

All-in-all, it’s a great update to an app that just had it’s 20th birthday!

WorldWideWeb

Our newest developer tool also got an important update.

We use WorldWideWeb for all our HTML/CSS/JavaScript development. Whether it’s a static page or something dynamically generated with PHP and Rails, automatic refresh saves everyone time as we implement and tune a site.

With a major redesign of our home page, we used WorldWideWeb a lot. And that’s when we started noticing a crash every few hours. There seemed to be no rhyme or reason to these failures, except that they all happened on the web server’s background threads.

So we started running the app with Xcode’s thread sanitizer enabled. And within a couple of hours, we identified several data races between the main UI thread and the web server’s background work. If you haven’t run your app with this tool, you’re probably missing some bugs that are notoriously hard to track down, but relatively easy to fix.

Both updates are FREE. If you’re not familiar with either app, a free trial of xScope can be downloaded from the website and free versions of WorldWideWeb are available on the iOS and Mac App Stores. Give them a try today!