24 terms

Chapter 2 - Open Source Applications and Licenses


Terms in this set (...)

Apache HTTPD
Apache is the dominant web server in use today. Apache was originally a standalone project but the group has since formed the Apache Software Foundation and maintains over a hundred open source software projects.
Some of the Open Source licenses are the BSD family of licenses, which are much simpler than GPL. They merely state that you may redistribute the source and binaries as long as you maintain copyright notices and don't imply that the original creator endorses your version.
Linux itself was written in a compiled language called C. C's main benefit is that the language itself maps closely to the generated machine code so that a skilled programmer can write code that is small and efficient.
Creative Commons
The Creative Commons (CC) organization has created the Creative Commons Licenses which try to address the intentions behind FOSS licenses for non software entities
Free/Libre/Open Source Software
Rather than dwell over the finer points of Open Source vs. Free Software, the community has started referring to it all as Free and Open Source software (FOSS).
One of the main open source web browsers that is fast, feature rich, and has excellent support for web developers.
Free Software
Free Software does not refer to the price, but to the freedom to share, study, and modify the underlying source code.
Application that handles 2D image manipulation.
A set of licenses developed by the FSF, such as the GPLv2 and GPLv3, and the Lesser GPL licenses versions 2 and 3 (LGPLv2 & LGPLv3).
Instead of compiling to machine code, Java first imagines a hypothetical CPU called the Java Virtual Machine (JVM) and compiles all the code to that
A database stores information and also allows for easy retrieval and querying. The most popular databases here are MySQL and PostgreSQL.
The native file sharing protocol for UNIX is called the Network File System (NFS).
Open Source Software
Software that conforms to an Open Source license is therefore Open Source Software.
Open Source business models
The simplest way to make money is to sell support or warranty around the software. You may make money by installing the software for people, helping people when they have problems, or fixing bugs for money. You are effectively a consultant.
OpenOffice, LibreOffice
OpenOffice (sometimes called OpenOffice.org) and LibreOffice offer a full office suite, including a drawing tool that strives for compatibility with Microsoft Office both in terms of features and file formats.
PHP is a language that was originally built to create dynamic web pages. PHP's main advantages are that it is easy to learn and available on almost any system. Because of this, many popular projects are built on PHP. Notable examples include WordPress (blogging), cacti (for monitoring), and even parts of Facebook.
Perl was originally developed to perform text manipulation. Over the years, it gained favor with systems administrators and still continues to be improved and used in everything from automation to building web applications.
Python is another scripting language that is in common use. It makes complex tasks easier and has a framework called Django that makes building web applications very easy.
Samba allows a Linux machine to look like a Windows machine so that it can share files and participate in a Windows domain.
Thunderbird is a full featured desktop email client. Thunderbird connects to a POP or IMAP server, displays email locally, and sends email through an external SMTP server.
dpkg, apt-get, rpm, yum
A package manager takes care of keeping track of which files belong to which package and even downloading updates from a remote server called a repository. On Debian systems the tools include dpkg, apt-get, and apt-cache. On Red Hat derived systems, you use rpm and yum.
Another web server is nginx, which is based out of Russia. It focuses on performance by making use of more modern UNIX kernels and only does a subset of what Apache can do.
At the basic level, you interact with a Linux system through a shell no matter if you are connecting to the system remotely or from an attached keyboard. The shell's job is to accept commands, such as file manipulations and starting applications, and to pass those to the Linux kernel for execution.