It always surprises me in photography that the sector as a whole seems wedded to spending money. Not content with the affliction of GAS (gear acquisition syndrome) across amateurs and professionals, the sector likes nothing more than a few extra bags, filters, albums, prints, and yes, software.
Software companies are essentially in the “better widget” race: if my competitor builds a widget, then I've got to build a better widget and sell the heck out of until someone else comes out with an even better widget.
We might complain that the latest version of Capture One Pro costs $299, or that Adobe's Creative Cloud subscription (for photographers) is $9.99 per month, yet the GAS mutation known as SAS makes us reach for the back pocket to withdraw that 16-digit flexible friend. Clearly, the alternative to something that costs money is, well, something that doesn't. And that's where free and open source software (FOSS) comes in.
The “free” part of FOSS is easy enough to understand (they give it to you), but what about “open source”? This is perhaps simplest to explain in terms of the First Amendment to the U.S. Constitution which enshrines the right to freedom of speech. So think of open source as not having a free beer, but enabling free speech (although when you're at the bar tonight you might prefer the former but partake of the latter). When it comes to software, “free” means being able to use a product without any charge. This can take a range of forms:
- Unrestricted: you can use the product whenever, wherever, and however you want to.
- Non-commercial: for all you amateurs out there, go ahead and use the product with impunity, but if you earn a living from it, then be prepared to stump up the cash.
- Reduced functionality: think of this as the freemium model where you get a stripped down product. Purchase the full deal and get all those extra features.
- Trial period: you can use a product for a period of time (often a month) before it drops back to reduced functionality or simply throws up a nag screen.
Move to an open source product, however, and not only is it unrestricted, but you get access to all the underlying code used to create the program. The best place to see how these software freedoms might look is the GNU Software Foundation. It's worth stating these in full:
- The freedom to run the program, for any purpose (freedom 0).
- The freedom to study how the program works, and change it to make it do what you wish (freedom 1).
- The freedom to redistribute copies (freedom 2).
- The freedom to distribute copies of your modified version (freedom 3)
Where might you see open source under the bonnet (and in some of our paid-for software products)? Here are a few.
- LibTIFF is a library for creating TIFFs, the well known and highly flexible image file format that acts as a “container.” It can store JPEG (lossy) and PackBit (lossless) compressed images, as well as vector-based clipping paths. It has been adapted over the years in a range of ways, including BigTIFF which enables single images larger than 4 GB to be stored. Think that's overkill? Don't. A number of specialized industrial sectors require this and it's now trickled down to applications such as gigapans.
- DCRAW is a raw file reader that can demosaic your images and convert them to a range of more accessible image formats. It lags behind the commercial vendors in terms of support for the latest cameras (e.g., currently converts the Nikon D810 but not the D850) but provides long-term, sustainable support for raw into the future.
- Exiftool is a software library and command-line tool to edit and (heavily) manipulate Exif data within images. Want to reset the time on 100,000 images? Easy. Add GPS location data from a tracklog? Easy. Want to extract GPS coordinates from your photos so you can plot them on Google Maps? Easy. It's massively versatile and hugely scalable. And I'd eat my hat if this isn't used in lots of commercial products.
Open formats (like PNG) are closely linked to open source. Needless to say, as photographers we want image formats that are widely-supported and long lived. TIFF and JPEG are darn good bets, while Adobe has positioned the DNG to fill the gap for raw. While widely supported, none of them are open formats.
But as a commercial company, why on earth would you choose to use open source software in your own product. Well there are actually some great reasons (see Alphr blog as a nice primer):
- You are able to innovate IP more rapidly using OS.
- You actually get to modify project code which means you can add features, request features, and ensure longevity.
- Your future workforce is already trained as contributing as a developer is good for employability.
Where does that leave the photographer with open source? Well you may already be using it in your paid-for product. The benefit to you? It can reduce a software company's development time and so the end-user cost. Just look at products like Serif's Affinity Photo to see how quality products can be made very cost effective; I don't know how much open source code they use, but expect many of the file format converters to go down this route.
What about truly open source software? Well, some products are very mature and used day in, day out. Think Chrome, Firefox, LibreOffice, Android, MySQL, Apache, WordPress, and Drupal. The list is long and deeply embedded in everyday life, although it's fair to say that the breadth of open source software available for programmers is wider than for other sectors. That's changing and we are (rapidly) seeing projects bleed from one industry to another, or simply springing up and becoming well resourced to do so. For example, the Mozilla Foundation has received significant funding from Google. Google also funds a range of smaller open source products through its Summer of Code program.
Over some of the next few reviews I'll be covering a number of FOSS products that photographers might find useful. If you have any recommendations for a future review then stick them in the comments below.