At CodeWeavers, we work with nearly 100 Windows software developers in porting their applications to the Mac and Linux platform. Many of these software companies are looking for ‘new markets’ for their software and that more customers means more sales. These companies are aggressively seeking out means for generating more revenue; and for these companies, porting just makes sense. What makes sense for one company may be insurmountable for another Windows developer. So I ask, “is porting the right solution for your software?”
To be fair, I’m very biased in favor of porting. I’m not at all objective. I believe that participating in more markets directly correlates to potential revenue growth. All else being equal, selling to 100,000 potential customers should net more revenue than selling to 10,000 potential customers. From a business standpoint, this makes total sense to me. So again, I’m not objective AND own that upfront, but I will do my best to weigh the pros and cons of porting software so that others can make a more informed decision.
To start, porting, in very basic terms, is taking an existing Windows based software and ‘packaging’ it for a Mac or Linux computer. The ‘packaging’ can either be replacing non-compatible code with compatible code or can be creating a bi-compatible ‘shell’ that essentially translates API calls between the application and the operating system. Replacing code tends to be the more expensive option but typically provides better performance while the shell tends to be less expensive but with some degradation in performance (usually latency derived from additional processes incurred during translation). Regardless of the option selected, porting allows a Windows developer to reuse their Windows code specific to the Mac or Linux platforms at a cost significantly less than rewriting their code from scratch. If nothing else, porting Windows code should be a less expensive option than re-developing code for the Mac or Linux platform.
What does ‘less expensive’ actually buy you? If you’re a Windows developer and committed to expanding your software into the Mac and/or Linux platforms, less expensive can be incredibly powerful. A typical scenario for CodeWeavers is that a Windows developer inquires about the cost of porting their title to the Mac market after being prompted by potential customers that they’d buy said Windows title if only it was available on Mac. At that moment, the Windows developer has a market opportunity with no real understanding of the potential revenue. Are 1,000 people interested in a Mac version or are 10,000 people interested in a Mac version? Will these potential customers be willing to wait a year or two years for this software to be re-engineered and brought to market or will the preverbal window close? How much is the Windows developer willing to invest to find out about this opportunity? These are hard questions with no real answers. I tell clients that if people are knocking on your door asking for a Mac version of your software that there is likely a much bigger market than you realize. After all, you don’t walk into your local bank looking for a recommendation for a good restaurant; so as, potential customers do not typically ask developers about a Mac version of their software unless they cannot find a suitable Mac replacement already on the market. Experts debate the size of the Mac and Linux markets (in comparison to Windows) with most estimates being that the non-Windows market is approximately 12% - 15% (maybe up to 17%) of the PC marketshare in the United States. If these numbers are true (according to the International Data Corporation), a conservative estimate for the total market opportunity in porting Windows software to the Mac and/or Linux platforms is approximately an additional 5% to 10%. This may not be enough of a potential increase to warrant additional resources; however, the International Data Corporation also pointed out that PC shipments in the United States dropped 5.8% just in the first quarter of 2016 alone. If these numbers are true, porting software to the Mac and/or Linux platforms may be strategic decision to maintain current sales numbers. And if so, the ‘less expensive’ option is indeed incredibly powerful.
I do stress ‘less expensive’ because porting is less expensive then re-developing software for the Mac and/or Linux platforms. Less expensive also applies to support costs, testing costs, development costs, personnel, and marketing. Utilizing the same (or roughly the same) Windows code for Mac and/or Linux platforms allows the Windows developer to maintain a single code base which allows for product consistency across all platforms. This also makes the switching cost for end users to be ‘less expensive’. You want your existing customers who have since moved from Windows to Mac (or Linux) to be able to quickly and easily use your software. You want them to have the same experience as your Windows users. And you want them to be familiar enough with the software to not be a support burden. Porting all but guarantees that end users will have exactly the same or nearly the same experience on the Mac platform as they did on the Windows platform. We get inquiries from end users on a daily basis about using CrossOver to run Quicken and Microsoft Office. While Quicken and Microsoft Office have Mac versions, end users PREFER the look, feel, and functionality of the Windows product. In fact, they insist that the Windows versions of these software titles are significantly better than the Mac equivalents. If the goal is to keep customers using your software for life, the cost of customer dissatisfaction in not having a Mac and/or Linux version or having a Mac and/or Linux version that is noticeably different than the Windows version is a real cost that impacts the bottom line. And if so, the ‘less expensive’ option is again incredibly powerful.
I also believe that ‘less expensive’ provides a cost effective means for a Windows developer to ‘test the waters’. I have had a number of clients that after porting their software to the Mac market realized the financial benefits and funded the development of a native Mac version. Likewise, I’ve had a couple of clients that after porting their software to the Mac market realized that their costs exceeded their financial gains and stopped official support for their Mac port. With both scenarios, porting proved to be the right ‘entry point’ to Mac users. Clients that realized incredible demand were able to get to the Mac market faster and fund their software development; and clients that realized little demand for their software in the Mac market were able to ‘experiment’ at a fraction of the cost of developing a native version of their software (only to see similar disappointing results). And this doesn’t even touch on the majority of my clients that fund a Mac port, realize significant financial benefits, and continue enhancing the port indefinitely. Many of our software porting clients have partnered with CodeWeavers for over five years which is a testament to the viability of porting.
Now, porting is not all sunshine and roses and buckets of money. To be honest, not all technology can be ported. For example, DirectX 11 is not supported on Macs. Our technology does not provide perfect support for .NET 4.5+. And games that are graphically intense can experience some latency which could be the result of our technology OR the result of graphic drivers not being optimized accordingly for the Mac and/or Linux platforms. You’ll also have a small but VERY SIGNIFICANT minority of users that absolutely refuse to use ported software out of principle, if nothing else. To these users, every developer should create native versions of their software for THEIR selected platform. Nothing less is deemed acceptable as that reduces the incentive for native versions. And to be fair, the performance of a Windows software title running on Windows should outperform the same Windows title running on a Mac or Linux computer regardless of porting or emulation or sandboxing or streaming or even partitioning. And while I feel that the costs of porting are very reasonable, software developers have told me that they could not justify the price without knowing the market potential for their title (so cost is still a factor). So a port does not guarantee that ever user will be happy, that the performance will be on par with native Windows, or that there are zero costs in porting software. These are the risks associated with porting to the Mac and/or Linux platforms. The same risks that software developers take when building software for Windows (difference being that Windows is 8X to 9X the market). So yes, I acknowledge that building Windows software is the smarter business decision than building software for significantly smaller platforms; BUT, that’s EXACTLY the reason why porting your existing Windows title makes total business sense!
If you are considering ‘less expensive’ options for entering into the Mac and/or Linux market, consider porting. CodeWeavers offers a Professional Assessment for $3,000.00 (USD) that will test your Windows title to determine the compatibility for the Mac and/or Linux platforms; assess the amount of development required to deliver a Mac or Linux port of your title; provide a quote for the development work (so you have actual costs in hand); and even (if at all possible) provide you with a proof-of-concept of your title packaged for the Mac or Linux platform for you to fully test. This would allow you to fully understand and weigh the costs of porting vs. development vs. market opportunity at a cost that is ‘less expensive’ than every other viable option. If increasing your total number of end users by 5% without significant development costs in an otherwise shrinking market is of interest to you, then the ‘less expensive’ option IS very powerful.
Now seems like the perfect time for you to see some of our ports for yourself. Schedule a free demo and see some of our latest Windows ports come to life on Mac and/or Linux. Don’t be shy!
About James B. Ramey
James B. Ramey is President of CodeWeavers. His life long love of video gaming started at the tender age of six with an Atari 2600 and evolved over time to include Nintendo, Super Nintendo, Apple Mac IIc, Windows PC, and MacBook Pro. When not fiddling with technology, James enjoys cooking, travel, debating politics in the office, and spending time with his wife, daughter, and their three Shar Pei cross dogs. For the past 20 years, James has worked with clients around the world in best implementing technology to maximize a return on their investment. He is a graduate of Moorhead State University and earned his graduate degree (MBA) online from the University of Phoenix. You can find James on Twitter at @jbramey.