While hardware is acquiring new forms, software is adapting to changes in the landscape. But how do developers benefit from this vicious cycle of hardware and software changes? Likewise, what should decision makers keep in mind while building new technology solutions? American computer scientist Tony Wasserman answers these questions in a conversation with Jagmeet Singh of OSFY. Wasserman also shares his views of the growth prospects of open source, based on his experience as a board member of the Open Source Initiative, professor of the software management practice at Carnegie Mellon, Silicon Valley and as the executive director of the CMU (Carnegie Mellon University) Center for Open Source Investigation. Edited excerpts…
Q How do you see software evolving in the computing world?
Software has already become pervasive in the developed and in the developing worlds. Over the past decade, we have seen important advances in embedded software (now called the Internet of Things) and in data management and analytics, which are being applied to machine learning and artificial intelligence. These advances are leading to increasingly powerful autonomous systems, such as self-driving cars, industrial and personal robots and surveillance systems. Even digital cameras, which are highly computerised, are now able to install additional apps.
While we will still need professional developers to create system level functions and development tools, there will be a growing role for ‘low code’ and ‘no code’ tools. The former will be used by software developers and may involve connecting and/or customising proven software components. The latter will be accessible to people without formal programmer training.
Professional developers will continue to use sophisticated programming languages and development environments, much as they do today, though the preferred languages may evolve over time.
Q What are the major trends shaping up the IT industry?
The most important trends involve the continuing decrease in the cost of computer hardware, particularly for storage, along with the growth of cloud-based computing services. Consumers have long become accustomed to using hosted services and they make extensive use of mobile devices, Chromebooks and tablets that connect to remote computing services. Enterprises and governments are becoming more aware of the costs of maintaining their own IT systems, and are now much more comfortable relying on third parties for their primary computing resources. The use of cloud computing services reduces their overall computing costs, including the costs of maintaining and upgrading their own systems and of preventing security breaches.
Q What is the ultimate impact of open source in the present software landscape?
The software landscape has seen a mix of proprietary and open source software throughout this century. In some areas, notably data management, open source projects have offered innovative and powerful solutions that are more advanced than those from proprietary vendors. Customers are choosing these technologies as much for their features as for the availability of the source code, which they are not likely to modify. But many customers are not comfortable with the community-based support found in many open source projects and prefer to pay for commercial support from a company that can offer guaranteed levels of service quality as well as have the ability to make any needed code changes to address critical software bugs. Open source projects are not likely to drive out proprietary software, if only because so many organisations have huge existing investments in those products. But free and open source software is likely to continue to be the driving force for collaborative projects and new technologies from R&D groups in academia and industry.
Q What are the vital concerns raised by the software industry that are being addressed by the Center for Open Source Investigation (COSI) at Carnegie Mellon University, Silicon Valley?
The Center for Open Source Investigation (COSI) has a longstanding primary focus on evaluation, adoption, and the use of open source software by companies, governments and other organisations. A second important area is education about open source software. The OSSPAL project (originally the Business Readiness Rating) is intended to help people find high-quality open source projects, and the newer FLOSSBOK project is aimed at identifying the wide range of topics related to open source software, along with sources for more information on them. Both projects rely on financial donations to support their work, and on volunteers to move them forward.
Q How do open source developments help academia enhance skills in young talent?
Well-written open source code provides students with good examples of how to write code in a particular programming language and style. Also, as students try to join existing projects, they can learn about the various approaches to collaboration and about the tools that are used to track issues, manage the parts of a project, build new versions, and release them to the community.
Overall, open source development helps students to gain insights into the technology and process of software development, as well as on open source licences. They get excited the first time they make a contribution that is accepted into the project code base, and that serves as a motivation for continuing to participate in open source communities.
Q What are the major obstacles programmers face when adapting to the open source culture?
Many open source projects are not very welcoming of new members. Initial contributions to such projects are rejected with harsh criticism that discourages people from continuing participation. Some projects have developed a ‘toxic culture’ that discriminates against various types of people. Also, projects tend to be monolingual, for instance, only in English or Hindi, so a person who is not fluent in that language may find it difficult to join the project. Even in more welcoming projects, programmers must adjust to the possibility that their contribution may not be accepted by the project committers.
Q Is it difficult for big organisations to completely rely on FOSS?
Yes. There are some business areas such as enterprise resource planning and tax reporting in which proprietary solutions are more advanced than FOSS projects. Also, certain proprietary applications are the de facto standard for some common tasks. These applications include Adobe Photoshop, which has a dominant position for image manipulation and a vast community of customers who have been trained in its use. While there are indeed some FOSS alternatives to Photoshop available easily, they are widely regarded as not having the power offered by the proprietary solution.
In short, there is no reason for an organisation to rely completely on one type of solution. Organisations should instead be looking for the best solution for a specific need. It may be proprietary, open source, or a combination of the two. Similarly, the solution may run on the organisation’s own systems, in the cloud, or as a hybrid of the two.
Q Do you think there are still security concerns related to adopting open source?
Yes, this is the case even though various studies show that open source is at least as secure as proprietary software, and major security breaches have often occurred in proprietary systems. The fear is not rational, but most organisations are naturally resistant to change. Thus, it is a slow process to get organisations to adopt open source for a business-critical system, and security issues are only one factor causing the delay.
Q How can open source adoption help companies improve their profitability?
Many studies have shown that the total cost of ownership (TCO) for open source software is much lower than that of proprietary software. But as companies move more and more of their computing to the cloud, the TCO difference is reduced, so the financial impact of adopting open source is less than it once was. Increased profitability is a minor, but valuable, reason for choosing open source software.
Q Do you see federal-level adoption having a positive effect on overall open source deployments?
Yes. Success stories in the use of any open source product (not just software) encourage people to see if they might benefit from following the same idea. In some countries, notably Brazil, the government not only uses open source software but has also developed a body of ‘public software’ that can be used by others, and requires its suppliers to deliver their solutions as open source software. The US government has increased its open source efforts across most federal departments and makes some of its open source code available through code.gov. Efforts such as these show that open source software projects can be successful and deliver value to the community.
Q Lastly, what is the role of organisations like Open Source Initiative and Linux Foundation in taking open source to new heights?
The Linux Foundation has greatly improved its outreach and now serves as the umbrella organisation for a large number of open source projects. Beyond that, it has organised the Open Source Summit in the US and Europe, both of which draw large audiences that include many people with very little open source experience. The Open Source Initiative (OSI) continues to focus on licence approvals, but has also established individual and affiliate membership programmes aimed at building its own community. However, the OSI is relatively small and works primarily within the existing open source community, so it does not have the overall impact of some other organisations. The OSI and the Linux Foundation have the strongest influence in North America and must be complemented by similar organisations elsewhere around the world. Such groups, taken together, can help to promote the value of open source software.