Recent Changes - Search:

libjpeg-turbo Home

About libjpeg-turbo

Downloads

Documentation

Reports

Position Statements

Developer Info

Contact

A New Year and a Desperate Plea for Help

Update: Cendio AB has graciously agreed to sponsor a general fund that will pay for approximately 100 hours/year of labor on libjpeg-turbo. If we can get another general sponsor at the same level, or some funding for some of the proposed enhancements, then we'll be in good shape.

Unfortunately, The libjpeg-turbo Project is out of cash, and a large part of that is the result of me donating a tremendous amount of pro bono labor toward things like build/packaging system improvements and code cleanup/modernization and security/bug fixes and making standards organizations happy and integrating PRs from the community and answering technical questions and addressing FUD and numerous other items of business, most of which benefit the libjpeg-turbo community more than they benefit me personally. I could probably make three times as much money slinging code for a major corporation, but I chose to become an independent developer ten years ago because I believe in open source software and what it can do.

VirtualGL and TurboVNC are my "babies", but libjpeg-turbo is the formula I feed my babies, so of course I want the formula to be of the highest possible quality. However, I also have to acknowledge that libjpeg-turbo has far outgrown its initial scope, and as it has grown, so have the demands for my time. Unfortunately, the amount of funded development has not grown commensurately, so people are basically asking me to take care of their babies as well as my own, but they aren't paying me to do so. Since libjpeg-turbo has no "general fund" from which to draw for offsetting the cost of unfunded development, my ability to move this project forward hinges on funded development opportunities. All of the major features that have been implemented in this project since its inception have been made possible through funded development. Mozilla thankfully provided a generous grant that offset some of the cost of releasing libjpeg-turbo 2.0.0, but I still had to spend hundreds of hours of pro bono labor to get that release out the door (included in that labor were the build system overhaul and code formatting overhaul.) I had to spend similar amounts of pro bono labor getting VirtualGL 2.6 and TurboVNC 2.2 out the door in order to pave the way for next-gen feature development on those projects. As a result, my already meager income went down 18% in 2018, and I had to borrow money to make ends meet.

I develop libjpeg-turbo, VirtualGL, and TurboVNC in my modest apartment, so my business overhead is very low. However, living in a tech city with sufficient Internet bandwidth to run my business is not cheap. As a native of Texas, I chose Austin as my base of operations in order to be near my family, but the rent in my adopted home town has doubled in the ten years since I became an independent developer. Furthermore, in the U.S., self-employed people have to pay a higher percentage in taxes than corporate employees, and we have to spend a lot more money to get a lot less health insurance. As such, I only take home about 65% or so of my meager income, which is barely enough to cover living expenses. In the past few years, I have had to offset the rising rent with dividends from my retirement account (a holdover from my 13 years of corporate employment.) My rates for funded development cannot rise to accommodate the increased cost of living, since I am competing in an international market. Thus, even before my income went down 18%, I was already having a more and more difficult time making expenses. Now I unfortunately find myself in debt.

The only money that this project received in 2018 was from individual donations, and whereas I greatly appreciate those, they only covered a few days of my expenses. As I mentioned above, without funded development, I cannot afford to implement new features (or integrate them in the form of a non-trivial PR) unless a benevolent corporation or other organization becomes a general sponsor of this project. Otherwise, unless a feature is specifically funded, implementing or integrating it requires me to eat the cost of my labor. I simply can't do that anymore. libjpeg-turbo isn't a "science fair" project. It is a high-quality product (as good as or better than some commercial JPEG codecs) that just happens to be made available for free and under a business-friendly open source license. But productization is hard. It requires, among other things, extensive regression and performance testing on a variety of platforms-- not just the platform on which a feature/fix was developed. It is not unusual for a PR to require 50-75% as much time to integrate as it took to develop (sometimes even 100%, if it is particularly sloppy.) As such, I have never been able to run libjpeg-turbo like a "bazaar"-- I'd very quickly starve to death. Good code-- regardless of its license-- costs money to develop. Over the nine-year history of libjpeg-turbo, I've donated labor with a U.S. market value in the hundreds of thousands of dollars. I just can't anymore. I have warned the community many times that, unless more funding emerged, I would go broke. That has officially happened.

In 2019, I will be forced to focus on paying projects, so unless a general fund emerges for this project, no new features will be implemented or accepted in libjpeg-turbo without funding to cover the labor required to implement or integrate those features. I charge the lowest rates I can possibly charge for this labor, and as the foremost expert in the libjpeg-turbo code base, I am confident that I can do the same work in much less time-- and with much higher quality-- than anyone else. I will of course continue to fix bugs for free. Sorry it has come to this. Unless a general fund or other corporate patronage emerges, or unless I receive a further injection of cash in the form of funded development, I can't afford to do anything more for libjpeg-turbo other than maintain the status quo.

I am also open to acquisition offers, if the price is right and I feel your organization's goals are well-aligned with those of the project.

Thanks for listening,
DRC
2019-01-01

Creative Commons LicenseAll content on this web site is licensed under the Creative Commons Attribution 2.5 License. Any works containing material derived from this web site must cite The libjpeg-turbo Project as the source of the material and list the current URL for the libjpeg-turbo web site.

Edit - History - Print - Recent Changes - Search
Page last modified on February 11, 2019, at 01:40 PM