"Do I want to play with this open source thing?" This was the question most people asked 20 years ago when I started reviewing PostgreSQL bug fixes and assembling like-minded database colleagues to help start the PostgreSQL Global Development Group.
It's mind-blowing to see how much things have changed.
Today, not becoming a follower of some open source community almost means you're cobaling yourself—excluding yourself from the reality of how organizations use open software today. As engineers, we always want to keep up with the latest technologies not only to satisfy our desire to create and innovate, but also to remain marketable in a business world where products and technology constantly evolve. What's happened with the open source movement is different.
Open source today is not just about the products and technologies that companies use, but rather a whole rainbow of adjustments that have penetrated the corporate culture beyond the engineering department.
I heard some of the best examples of this during a discussion for data industry leaders at the forefront of open source software innovation this summer. The event was co-hosted by EnterpriseDB (EDB) and MIT Technology Review. We shared our experiences of data transformation with Postgres, NoSQL, and other solutions, and really learned a lot from each other.
These discussions have been part of a series that culminates at Postgres Vision on October 11-13 in San Francisco. Steve Wozniak, Jim Zemlin of The Linux Foundation, and industry and government leaders will be there to talk about the future of open source. There will also be a celebration of the 20th anniversary of founding of the PostgreSQL Global Development Group.
A consistent anecdote during these discussions was: The moment a prospective employee enters a company, their existence is proof of how much open source had changed the job interview process.
Engineers today want to know about company policies for open source. In the database realm, they want to use NoSQL as well as SQL technologies. The data management front is perhaps the most active for change given how quickly companies accumulate new kinds of data in very large amounts, and the emergence of NoSQL solutions to store and analyze that data. New job candidates want to know what open source software the company is using, and whether the company actively participates in that open source community. And importantly, they want to know whether they will be allowed to participate in the open source community or work on their own software, and offer it for the company's use.
Companies that cannot answer these questions risk losing the best engineer candidates. At the same time, however, companies are still working out the ramifications of getting involved with open source communities. There are risks of exposing intellectual property or company activities, and it's a new minefield for companies that their lawyers will need to address—and soon.
The infusion of open source has had other influences on organizations beyond how companies must appeal to new hires.
The way engineering teams are structured around software development changes when open source is involved. Companies have typically focused on individual customers and their needs, adding feature X for company A for the short-sighted goal of inking a sales contract. The end result would be a Frankenstein monster with a lot of bolted on, abandoned features. The product invariably ends up less cohesive.
Development groups are now able to work in smaller, dedicated groups, sometimes at the Line of Business level. One member of our discussions reported that open source enabled him to put competing groups to work on developing internal applications so they could choose the best among them and perhaps throw away those apps that would not make it to market. They could not have afforded to do that had they been using commercial software they had paid for. The company ends up with better applications in the end; engineers are more engaged in working with software that they are already fans of, and the overall value to the company is a much more experienced development team.
Companies are clearly adjusting to open source by changing the ways they engage engineers and let them work.