“All the great disruptive trends of the last decade have been strongly driven by Open Source”
It’s an open source world! Java is free (sort of), Java EE has been moved to the Eclipse Foundation, IBM has just open sourced two projects and the list goes on. We talked with, Jorge Ferrer, VP of Engineering at Liferay about the importance of developing software in the open, the advantages of collaborating on open source projects and more.
JAXenter: How can we determine developers to truly collaborate on open source projects?
Jorge Ferrer: We can’t really convince them, at most we can make it easier (or not) and more worthwhile (for example by publicly acknowledging the contributions). In my role, I straddle the open source community and business, and as a business, we are constantly reminded why it’s important we facilitate the community rather than jumping in and telling people how things are going to be.
I believe developing software in the open, knowing that anyone can see your code takes developers to the next level. Liferay’s own engineering team is distributed throughout the world, and the fact our code is open source simply extends that knowledge and expertise — everyone who contributes feels part of something important, something bigger than themselves. We asked a cross-section of our team “Why is open source important?” recently and I think this video sums it up pretty well!
Cloud, Big Data and even Machine Learning would not have gathered the momentum they have today without Open Source.
JAXenter: A few years ago, Michael Skok, founding partner at Underscore VC and EIR at Harvard Business School published an article titled Open Source is Eating the Software World. Do you agree with his statement?
Jorge Ferrer: Absolutely, and who wouldn’t? Finding a company or person that doesn’t use Open Source is almost impossible nowadays. But more importantly, I think it’s important we consider that all the great disruptive trends of the last decade have been strongly driven by Open Source. Cloud, Big Data and even Machine Learning would not have gathered the momentum they have today without Open Source.
JAXenter: GitLab’s 2016 Global Developer Survey revealed that developers prefer to use open source tools. Why is that?
Jorge Ferrer: I believe it’s a combination of convenience and freedom.
Open Source software can be downloaded and evaluated easily. Just go to a page, take the software and start using it. There is no need to ask your boss or talk to a sales representative. There are also no strings attached. Developers, thus, have much more freedom to choose what works for them best at each moment of time instead of being stuck with a tool that was purchased at a given moment of time.
The most immediate benefits [of using open source] are reduced total cost of ownership, limited or inexistent lock-in, auditability and continuity.
In addition to that, it’s often easier to find information and help with Open Source tools since communities form around them and users give back by being more helpful to each other.
JAXenter: What is the value of open source? How about its advantages?
Jorge Ferrer: To do this justice could be a very long answer. There are many advantages to Open Source both for companies and individuals. For companies using open source, the most immediate benefits are reduced total cost of ownership, limited or inexistent lock-in, auditability and continuity. But that’s far from the whole story. There are many additional benefits that very often derive from the Open Source software development process and these include greater adaptability and extensibility, higher security, better ability to influence the direction of a project, higher reliability, more focus on real needs of the users, etc.
From an enterprise support company’s perspective, I think Eric Raymond sums it up best in his excellent book The Cathedral and The Bazaar: “The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.”
JAXenter: Liferay has recently announced a new initiative intended to reinvent its open source community experience. Was there a need to reinvent the open source community experience?
Jorge Ferrer: Liferay has always had very strong roots, influenced by the fact that our most successful product, Liferay Portal, existed before the company. Over the years, the company has grown and has felt the need to improve in how it provided information for enterprises, not just the community. Additionally, we have been launching more and more Open Source projects, many of them small, to share developments that we considered useful with the community – even outside of the world of Liferay Portal.
At a corporate level, I agree that it’s necessary for each organization that uses Open Source to give back one way or another to be a part of a healthy ecosystem.
At one point, during last year, we realized that many things that we were taking for granted internally – as basic as how to contribute, how much Open Source work we were doing, etc. – were not being properly communicated. For that reason, we decided to create a new department within the company, Developer Relations, to focus on fostering the community and our relationship with developers. Good communication, after all, requires not just talking but making the time to listen. One of their first initiatives was to launch community.liferay.com a new home for all of our Open Source projects (14 to date and counting) as well as a new communication channels in our global Slack.
JAXenter: How can the new Liferay Community instant-chat make it easier for the open source community to engage?
Jorge Ferrer: It provides real-time communication which is great for certain interactions. The questions and answers about the product are still mostly happening in our forums (and also in Stack Overflow) which is more easily searchable, bookmarkable, etc. But we are seeing a lot of activity in the chat, especially among the most active contributors and some new members of the community, and one of the big benefits I see is people forging new work and social relationships. For example, I think it will help with organising local Meetups and bring people together in person at our annual developer event, Liferay DEVCON in October.
JAXenter: Many people believe that if you consume open source you should give back. Do you agree with the statement? If yes, how should we give back?
Jorge Ferrer: At a corporate level, I agree that it’s necessary for each organization that uses Open Source to give back one way or another to be a part of a healthy ecosystem. There are many ways of giving back, it’s easier than most organizations think but one of the biggest barriers is knowing (or rather learning) what to do. Here are some general examples:
Provide time to the employees working with the Open Source product to participate in the community. They can give back by answering questions of newer users, participating in local user groups, etc.
Notify committers of any bugs found in the product following the guidelines of the Open Source project. This is very important – a good bug report is gold for the project and benefits everyone. The same applies for to new features that you feel are missing and might be of value to many others (in Liferay we use ideation techniques to foster this).
If your use of the software has required extending it with improvements or new features, consider contributing it back. This will take time initially, to conform to the coding rules of the project, but it will quickly pay off once the project takes care of the maintenance of the code and builds on top. Most projects have “Contributing Guidelines” to help developers learn how to do this (For example Liferay uses GitHub’s CONTRIBUTE file to convey this information).
There are many other ways of contributing besides code that are also very valuable. Each project will vary, so make sure to ask the team or look for pages with their suggestions from getting involved in Meetups to translating (Liferay provides a list of ideas for each expertise level).
By contributing back, organizations also contribute to ensuring the continuity and more rapid improvement of the product they are using. They help steer the product in a direction that mutually benefits their needs. It’s a win-win situation.