State of the Labs

SingularLabs has been struggling lately. Other projects and commitments have consumed most of my productive time over the last two years, and SingularLabs has languished as a result. In June we had our lowest ever monthly traffic at 68,000 pageviews. To put that in perspective, in June of 2014 we did 68,000 pageviews in the month’s first three days.

There’s three immediately identifiable reasons for this decline:

1. As mentioned previously, there’s been a significant reduction in the number of hours of development effort spent on SingularLabs products in any given week.

2: One of SingularLabs’ most popular products, JavaRa, has been rendered obsolete by improvements Oracle have made in the distribution and updating mechanisms of the Java Runtime Environment.

3: Usage of desktop computers, and particularly desktop computers running Windows and therefore able to use our products, is continuing to decline.

The keen observer may have noticed a sharp increase in activity at SingularLabs in the past month as significant “course correction” efforts have been made.

We shipped a new product that’s been in development for a while—the charming and useful Bzzt! Image Editor, a bulk image resize/rotate/compress/convert app that’s loosely based on the now-deceased Teeny Tokyo by John Saddington. Two betas and a stable version have been released, with an update and some exclusive features for our Pro Club members coming in the next few months. So far, it’s got just under 1,000 users and has been translated into three (I think?) languages.

A number of our other software titles have also been updated in the past few weeks. Windows 10 compatibility—both functionally and in terms of design—have been major factors necessitating these releases. Shipping new or updated localizations and cross-porting improvements to our underlying localization-handling architecture have also been a focus in July and August.

Finally, we’ve been making some design improvements to our website to help improve our marketing efforts. We’ve added a more traditional blog which we hope to use to increase the amount of content we’re sharing and (hopefully) in turn increase our engagement on social media. Similarly, we’ve made our email subscription signup form much more prominent and have increased our email marketing efforts.

I’m hopeful that this renewed focus and energy, ultimately culminating in better products for our users, will help SingularLabs to recover and eventually grow stronger than ever before.

The state of the Labs is strong. Well, strong-ish.

An image manipulation and compression app I’ve been working on.

After reading Jeff Atwood’s recent blog post on Zopfli optimization, I wanted to see how hard it would be to create a GUI to apply the compression algorithm to my PNG files.

The design is borrowed heavily from Teeny Tokyo. I don’t know whether I’ll ever release this thing, but if I do I’ll be sure to change the interface so John Saddington doesn’t punch me in the face.


The thing is actually completely functional – except for the image resizing stuff – and does reduce the filesize of PNG images considerably. Unfortunately the compression algorithm is horrendously slow, sometimes taking 15-20 seconds per file. Basically, the only way this ever sees a public release is if I can make it run considerably faster with some multithreading magic.

Atom Editor ‘Open With’ Assistant for Windows

Github’s Atom text editor is one of the best available. Unfortunately on Windows, there’s no easy way to set Atom as the default editor for specific file formats.

The issue was reported on Github and a viable workaround was devised, however the workaround has its own set of annoyances. Atom user bilderbuchi observes the following:

  • I got no way to select the Atom icon, I got an empty white rectangle.
  • It flickers the terminal for a split second, which interestingly does not happen when starting atom via the start menu. Annoying, but not vital.
  • It says “atom.cmd” in the relevant dialogs/menus, which is not exactly beautiful/elegant.
  • I can’t imagine a normal user to go through this dance to do this, compared to the experience in other editors like Notepad++.
  • I’ve created my own solution to this problem by adding an “intermediary” executable file that can easily be set as the default associated program for filetypes that then passes the file along to Atom. The most significant benefit of this method is that it correctly sets the file association icon.

    Simply install ‘Atom Editor OpenWith Assistant‘ and associate your code files with ‘C:\Program Files (x86)\Atom Editor OpenWith Assistant\Atom OpenWith Assistant.exe


    Files associated with the OpenWith Assistant will now display the above Atom icon designed by Tharique Azeez. The hastily written VB.NET code behind this program is available on Github.