Since I mainly use Windows, I am sometimes at a slight disadvantage
when I need to program at a low level such as C or Assembly, as most compilers
for low-level programming tend to, from my experience, be optimized for
Unix-like environments.
Open source as a computing concept is not limited to
downloadable software, however, as MediaWiki, known for powering major websites
such as Wikipedia, is an example of open-source web software, which anyone from
just about any computer can access without any actual software needing to be
installed.
Open source platforms have varying levels of success. Linux, while liked by many hardcore computer enthusiasts,
is still niche in the overall market for PC operating systems, whereas the
operating system Android, used mainly for mobile phones, rivals iOS, Apple’s operating
system for its mobile devices. Even
then, while Android has success in the mobile phone market, it fared poorly
when it was used to make the Ouya[1], an open-source video game system. There are many possible reasons for why open
source platforms seldom become mainstream, such as a lack of official advertising or a lack of brand recognition.
Supporters of open source often cite how such projects can
be constantly contributed towards and improved by both old and new
programmers, potentially lenthening the lifecycle of the software. The fact that the Internet allows projects of
any size to be shared easily helps matters, with websites such as SourceForge being a
popular repository for open-source projects.
Finally, two years ago, one of my roommates, who was a
senior software engineering major, said to me that he did not believe in
software that one had to pay for. Believing
in a capitalistic society where everyone has the right to demand fair, but not necessarily
equal, compensation for their labour and talent, I was not sure if I could
wholeheartedly agree with my roommate. After
all, computer programming is a highly-sought talent, so why would some programmers choose not to
monetize their skill? For a large-scale software
project to reach its full potential, it needs to be backed by a large amount of
research, and research costs time and human resources. Because of this, it remains to be seen
how sustainable open-source development can be for those types of projects.
