summaryrefslogtreecommitdiff
path: root/writeup
diff options
context:
space:
mode:
authorthing1 <thing1@seacrossedlovers.xyz>2025-01-23 12:46:16 +0000
committerthing1 <thing1@seacrossedlovers.xyz>2025-01-23 12:46:16 +0000
commitafce35c3950c2d3c9e0a111cde65eb9dca8714a2 (patch)
tree00b3e438faa5fb3e4236fde4d35cc17338863ebe /writeup
parentb8faae85ae08f7c99091cdaa37e0ecc4869924f4 (diff)
made some final edits to the epq, alot of things on tone, also added an extra refernce on one section to make it feel more fleshed out
Diffstat (limited to 'writeup')
-rw-r--r--writeup/ref.bib7
-rw-r--r--writeup/writeup.tex107
2 files changed, 65 insertions, 49 deletions
diff --git a/writeup/ref.bib b/writeup/ref.bib
index ce39281..08dd53a 100644
--- a/writeup/ref.bib
+++ b/writeup/ref.bib
@@ -47,6 +47,13 @@
keywords = "FOSS,learning,coding"
}
+@online{CC,
+ title = "Creative Commons",
+ url = "https://creativecommons.org/",
+ addendum = "(accessed: 9/1/2025)",
+ keywords = "FOSS,learning,coding"
+}
+
@online{STACKOVERFLOW,
title = "stack overflow developer survey",
url = "https://survey.stackoverflow.co/2024/",
diff --git a/writeup/writeup.tex b/writeup/writeup.tex
index 59070ad..4e244bd 100644
--- a/writeup/writeup.tex
+++ b/writeup/writeup.tex
@@ -30,7 +30,7 @@
\section{Using this document} This document is written using the {\LaTeX} text compiler. The compiler has set up
clickable links, clickable references and a clickable table of contents, so please use these to your advantage.
-The Tex source and Bib Tex bibliography is available for all at \url{https://git.seacrossedlovers.xyz/epq} under
+The Tex source and Bib Tex bibliography is available for all at \url{https://git.seacrossedlovers.xyz/epq.git} under
the MIT/X document license.
\tableofcontents
@@ -39,12 +39,13 @@ the MIT/X document license.
\setlength{\parskip}{1em}
{\setlength{\parindent}{0cm}
-\section{Used language in this paper} Throughout this paper I will use language specific to the field of computer
-science, and as such it makes sense to provide a brief overview for those who don't know what specific terms mean.
+\section{Used language in this paper} Throughout this paper, language specific to the field of computer
+science will be used, and as such it makes sense to provide a brief overview for those who don't know
+what specific terms mean.
\begin{description}
\item[Licenses] In this setting a license is a legal document that is distributed with
- almost all modern software, which describes how someone can use a piece of software.
+ almost all modern software, which describes how someone can use and redistribute a piece of software.
\item[Free Software] This term refers to software under specific licenses, making them
free for the user to use (free as in freedom, not the monetary cost). This will be covered further
in the next section.
@@ -58,7 +59,7 @@ science, and as such it makes sense to provide a brief overview for those who do
\end{description}
\section{A brief introduction}
-This papers will cover the advancements of FOSS tools and systems over time, discuss the benefits, its recent growth,
+This paper will cover the advancements of FOSS tools and systems over time, discuss the benefits, its recent growth,
and the reasons developers and privacy experts find it to be a better tool for the job. This paper will cover a variety
of ways of how FOSS software is used compared to its propriety counterparts.
@@ -72,15 +73,16 @@ The definition of what counts Free Software and what is software freedom can var
it was originally written that software that allows the following freedoms is Free Software:
\begin{description}
- \item[0] The freedom to run a program for any purpose \item[1] The freedom to study how a program works,
- and modify it to your needs \item[2] The freedom to redistribute a piece of software \item[3] The freedom
- to redistribute a edited version of software publicly
-\end{description} \textit{These freedoms were written by Richard Stallman\cite{FOSSdef} who is ever
- important in this space.}
+ \item[0] The freedom to run a program for any purpose
+ \item[1] The freedom to study how a program works, and modify it to your needs
+ \item[2] The freedom to redistribute a piece of software
+ \item[3] The freedom to redistribute a edited version of software publicly
+\end{description}
+\textit{These freedoms were written by Richard Stallman\cite{FOSSdef} who is ever important in this space.}
It is important that one does not confuse Free Software with software that is monetarily free, this is known as
Freeware. Free Software defends the users rights to use and modify software and is not focused on its cost.
-However free software often is also free as in cost, so the confusion is easily made.
+However Free Software often is also free in cost, so the confusion is easily made.
One should also note the differences between Free Software and Open Source software. In Open Source software,
like Free Software, the original code for a program is available to anyone, however in Open Source, this is to
@@ -95,11 +97,11 @@ permission. This kind of software intentionally restricts the users freedom, usu
control of the software. Some common examples of Proprietary Software, are Microsoft's \textit{Windows}, Apple's
\textit{iOS}, and Google's \textit{Chrome} web browser.
-Many people don't know that they already use Free Software\cite{COMMONfoss}, but sometimes the tools they use most
-often are Free Software. A few examples of this are, Krita\cite{KRITA}; a graphics design and art tool that is
+Many people don't know that they already use Free Software\cite{COMMONfoss}, and sometimes the tools they use most
+often are infact Free Software. A few examples of this are, Krita\cite{KRITA}; a graphics design and art tool that is
used frequently in animation, and other digital art, is made and managed by the KDE foundation\cite{KDE}, who make
-exclusively Free Software. Dovecot\cite{DOVECOT}; an email server used by many major email providers and is Free
-Software. A final example is Firefox\cite{FIREFOX}; a Free Software web browser made by Mozilla that makes up 2.71\%
+exclusively Free Software. Dovecot\cite{DOVECOT}; an email server used by many major email providers.
+A final example is Firefox\cite{FIREFOX}; a Free Software web browser made by Mozilla that makes up 2.71\%
of the browser market share as of 2024, however in the past has had up to 30\%\cite{BROWSERmarketshare}. These
are all more modern examples of Free Software, however over the past 40 years, there have been countless others.
@@ -107,11 +109,11 @@ are all more modern examples of Free Software, however over the past 40 years, t
however even before this, examples of Free Software (and the disapproval of Proprietary Software), were already
starting to show.
-One of the earliest examples of the disapproval of Non-Free Software, was the response to Microsoft's \textit{An
+One of the earliest examples of the disapproval of Non-free Software, was the response to Microsoft's \textit{An
open letter to hobbyists}\cite{OPENletter}, which was written by Bill Gates in 1976. This letter detailed that
people had been stealing from Microsoft, as many people had brought hardware through them, but far fewer people
had brought required software for said hardware. The fact this was happening at a scale large enough to cause this
-showed how many computing groups, also known as hacker groups/spaces, weren't willing to pay for the software they
+showed how many computing groups, also known as hacker groups/spaces at the time, weren't willing to pay for the software they
used, believing that if they brought the hardware they had done all that was needed\cite{OPENletter}. It is often
believed that this is one of the first examples of \textit{hacker culture}, which would become more common into the
80's and 90's, and was the starting point of the current Free Software movement, where people continued the view,
@@ -123,7 +125,7 @@ to be a full recreation of AT\&T's Unix operating system from the ground up as F
allow anyone access to a Unix like machine without paying AT\&T's expensive license fees, and allow any user to
view it, redistribute or edit; it was to be the first fully free operating system. The early development of GNU
was relatively slow, and it was not a completely free system for many years, as some core parts of the operating
-system were missing, meaning Non-Free alternatives had to be used. However this would later change in 1991, when
+system were missing, meaning Non-free alternatives had to be used. However this would later change in 1991, when
final additions would be created.
In 1988 the BSD Net1 operating system would release\cite{BSDnet1}, this was the first fully open version of the
@@ -140,15 +142,20 @@ system for general use, this combination of software is still in use today, havi
on desktop computers\cite{LINUXmarket}, and on web servers it is dominant. In recent years it has also shown some
use in gaming, with it being the operating system used by Valve's \textit{steam deck} gaming handheld\cite{STEAMdeck}.
+As one can see, the rise of Free Software has been tied to the rise of Unix, and this is no surprise; like many
+Free Software projects, the goal of Unix was to make small reusable tools that together became a cohearent operating system,
+that could be modified and changed per any users needs. This happened to align with the Free Software movement,
+and thus many early projects, were recreating or adding to Unix.
+
Since Linux's release there haven't been as many major events in the space and more so a steady flow of updates
and new features, most likely due to the amount of people working on projects being high enough for constant
-development, as opposed to one person sending in code every few weeks or days. There was another large jump
+development, as opposed to one person sending in code every few days or weeks. There was another large jump
in development over the Covid lock down's. As of 2024 it would be hard not to say Free Software is fully viable
against its Proprietary counterpart.
\section{How is Free Software developed?}
The process of developing Free Software has changed over time, especially
-as the internet came to be, allowing developers from all across the world to add things. In modern terms the
+as the internet came to be, allowing developers from all across the world to add to things. In modern terms the
development process is very simple, a developer can look at a piece of code, make changes to a local version of
it, then it can be uploaded to a central online version of the code, to be checked by lead maintainers, before
becoming the part of the main version (developers would say creating a local branch and submitting a pull request).
@@ -163,7 +170,7 @@ between many developers.
Without going into too much detail, this is done by merging all contributions into the main code base by
comparing line numbers in differing versions, this is a fully automated process, managed by your version control
system. This pattern of development is liked amongst programmers as it allows many to submit code all at once,
-which is invaluable if your project has many developers. This method is also commonly used in Non-Free Software,
+which is invaluable if your project has many developers. This method is also commonly used in Non-free Software,
to manage large development teams\cite{NONFREEvcs}.
\section{Comparing Free Software to its Proprietary counterparts}
@@ -176,10 +183,10 @@ least one of these, and thus will be familiar with them.
\subsection{Programming IDE's}
\textit{An \textbf{IDE} is an \textbf{I}ntegrated \textbf{D}evelopment \textbf{E}nvironment}
-The main IDE's used by developers are Free Software, but there are a few Non-Free ones that are used according to
+The main IDE's used by developers are Free Software, but there are a few Non-free ones that are used according to
the stack over flow developer survey\cite{IDEusage}. To compare text editors, one can look at \textit{VS Code} as
an example of open software, with 73\% of developers claiming to have used it at some point, and \textit{IntelliJ},
-as an example of Non-Free software, with 26\% of developers claiming to have used it at some point\cite{IDEusage}.
+as an example of Non-free software, with 26\% of developers claiming to have used it at some point\cite{IDEusage}.
These tools are both commonly used personally and professionally, and are of a similar size, making them ideal to
compare. On the performance side of the argument, VS Code has Intellij beat, being faster to open and generally
@@ -219,7 +226,7 @@ and Google Chrome have plug-in capability's, Firefox is known for its completely
and all extensions to be used. In contrast Google limits what can be used via the "manifest" documents, this series
of documents describes what is and isn't allowed in the Chrome browser, and is significant as it holds a large
market share. The most recent one of these documents, manifest V3\cite{MANIFESTv3}, has come to much disapproval
-amongst users, as it will disallow ad blockers, and other extensions that selectively remove content from web pages.
+amongst users, as it will disallow AD blockers, and other extensions that selectively remove content from web pages.
In today's world, the majority of browsers are based on Chrome in some way or another with Firefox being one of
the few exceptions to this rule. Due to this, most browsers will be effected by manifest V3 as it comes into full
@@ -235,15 +242,15 @@ most part are completely cross compatible. In this sense they have become almost
As the tools are so similar one will find it's not worth comparing them, in this way we can say that there is no
difference, they are both mature, well used, effective suites of software, they are equal. This is something many
-people struggle to see sometimes as they have been using one piece of Non-Free software for so long, they don't
-want to move to anything else. This has negative effects on the users, many Non-Free tools are effected by cyber
+people struggle to see sometimes as they have been using one piece of Non-free software for so long, they don't
+want to move to anything else. This has negative effects on the users, many Non-free tools are effected by cyber
attacks, and long lasting bugs, that could be fixed by switching to Free Software alternatives, as the technical
users of these tools fix these issues quickly compared to alternatives. This is usually put up to the fact that
most FOSS developers aren't working to new features and are instead working to making a tool that works for them.
\subsection{General conclusions}
Overall one can see that in many areas of software use, FOSS tools are already
-at an equal state or better, than the Non-Free counterparts, for general users. One may find that this balance
+at an equal state or better, than the Non-free counterparts, for general users. One may find that this balance
begins to change in more specific fields, where optimisation and speed may become more important than it is to
the common computer user or tools are only made by large companies and no free alternative exist.
@@ -261,12 +268,12 @@ This is very helpful in an enterprise setting for a number of reasons, such as:
tool, or ones company may not be able to acquire a license to an existing piece of software.
\subsubsection{What is not appealing?}
Many developers do however site issues with FOSS, often claiming it to be too hands on, which may not be ideal. While a large amount
-of these claims are no longer true (especially around tools like Linux\cite{LINUXhard}), they do still hold weight over the free software
+of these claims are no longer true (especially around tools like Linux\cite{LINUXhard}), they do still hold weight over the Free Software
community. It is in a sense a double edged sword, because tools are more customizable\cite{FOSScustomize}, it can feel that without customizations, one
does not get a proper experience using FOSS if one wants something that just works.
-\subsection{Why is it more appealing than non-free software?}
-Due to the closed down nature of non-free software, it is often hard to work with when a specific use cases is required, as it
-is too locked down to customise. For a lot of developers they also find non-free software as a blight on the software space,
+\subsection{Why is it more appealing than Non-free Software?}
+Due to the closed down nature of non-Free Software, it is often hard to work with when a specific use cases is required, as it
+is too locked down to customise. For a lot of developers they also find non-Free Software as a blight on the software space,
as they feel that it is objectively worse, due to the locked nature and corporate profits often being considered before user
experience, this is only an opinion, but it is held by many individuals in the space.
\subsection{How does this effect other users?}
@@ -300,25 +307,27 @@ or another.
\item[BBC reporters and readers: ]
While not an individual, a very interesting case, to ensure those who live in countries
with restrictive media, or communications, the BBC have began to host a version of their news site over
- the tor network\cite{BBCtor}, which means those from the restricting countries can read news without their governments knowing.
- This service is also used by their reporters to feed back information from countries in strict political monitoring.
+ the tor network\cite{BBCtor}, which means people from restrictive countries can read uncensored news without
+ their governments knowing. This service is also used by their reporters to feed back information from
+ countries with strict political monitoring.
\item[Edward Snowden: ]
- This man is known for in 2013 leaking many documents from the NSA \textit{(the American National Security Agency)},
+ In 2013 this man leaked many documents from the NSA \textit{(the American National Security Agency)},
outlining how the USA had full access to email communications between the majority of major email providers in the USA.
- He is known for using many privacy tools when fleeing from America to avoid prosecution. While this is obviously highly
- illegal, with the USA prosecuting him under the Espionage Act of 1917; he is often praised for his work, pushing
- against mass surveillance. What is interesting about him as an individual is that he worked for the NSA and CIA and says
- that the mass surveillance was known and common\cite{EDWARDsnowden}.
+ He is known for using many privacy and security related FOSS tools when fleeing from America to avoid prosecution.
+ While this is obviously highly illegal, with the USA prosecuting him under the Espionage Act of 1917; he is often praised
+ for his work, pushing against mass surveillance. What is interesting about him as an individual is that he worked for
+ the NSA and CIA and says that the mass surveillance was thought of as common in these places\cite{EDWARDsnowden}.
\item[Lawrence Lessig: ]
- He is known for pushing digital privacy and free software, creating the creative commons. He cares for privacy for the sake
- of it, not because he has things to hide like Edward Snowden, or because he is in a politically restrictive state. He has
+ He is known for pushing digital privacy and Free Software, creating the Creative Commons\cite{CC}. He cares for privacy for the sake
+ of it, not because he has things to hide like Edward Snowden, or because he is in a politically restrictive location. He has
appeared in/worked on films, books and other media trying to push for free digital speech and free digital use. He believes
- digital privacy is one of many steps needed to achieve this\cite{LESSIG}.
+ digital privacy is one of many steps needed to achieve this\cite{LESSIG}. Creative Commons is known for its use adgacent
+ to Free Software, as they are both about sharing, reusing and avoiding limitations.
\end{description}
-\subsection{What free software do they use?}
+\subsection{What Free Software do they use?}
While many tools come to mind when thinking of privacy, the most prominent ones have to be Tor and Linux.
-Tor (\textit{\textbf{T}he \textbf{O}nion \textbf{R}outer}), is a free software tool that allows a user to encrypt their network
+Tor (\textit{\textbf{T}he \textbf{O}nion \textbf{R}outer}), is a Free Software tool that allows a user to encrypt their network
traffic, and send it through three other computers first. This is similar to a VPN (\textit{\textbf{V}irtual \textbf{P}rivate \textbf{N}etwork}),
which sends network traffic through an middle man before it is received at the server. The difference is that Tor, will go through
three random middle men nodes, instead of one constant node\cite{TOR}. Using Tor makes it almost impossible for a server to know where the original
@@ -338,7 +347,7 @@ For privacy experts and enthusiasts, Free and open tools are preferable for the
using non free tools, it would be impossible to know weather the code running had their privacy in mind, or if it would be sending data to a large
corporation or other such entity. For this reason free and open software is perfect, there cant be any hidden malicious intentions as they would be
seen by all who vet these tools on a daily basis. Another reason that one can draw as to why someone would want to use free tools is that they are
-less restricted in what they can do; non-free tools are limited by corporate law and other such things, free software on the other hand is less limited
+less restricted in what they can do; non-free tools are limited by corporate law and other such things, Free Software on the other hand is less limited
as restricting what individuals make and share, would end up making many things in common life illegal. Its under these rules that tools such as
Tor can exist.
\section{Where else is Free Software used and why?}
@@ -352,19 +361,19 @@ security, and ability to adapt to newer hardware systems. It does all this, whil
which are known for being highly expensive, often sold as a yearly service.
\section{What's next for the Free Software space?}
-In the coming years it is clear the free software space is going to grow, with major projects like Linux becoming exponentially more popular. These
+In the coming years it is clear the Free Software space is going to grow, with major projects like Linux becoming exponentially more popular. These
trends aren't showing any signs of stopping, and infact are increasing. From the growth in the space right now, one could assume that someone who is
-using one or two pieces of free software today, might be using many more in the coming years.
+using one or two pieces of Free Software today, might be using many more in the coming years.
This recent up tick has been put up to many things, such as improved quality compared to the past. Many people say there is a lower barrier to entry,
with more user friendly software. Many also have become frustrated with the lack of control they have over there systems, data, and privacy; with things
-changing without their control. All of these reasons, and many others have lead to the recent up tick in free software in the past 5 years.
+changing without their control. All of these reasons, and many others have lead to the recent up tick in Free Software in the past 5 years.
-The same level of growth is being seen with developers, becoming a large community, commonly associated with the free software movement. Newer tools
+The same level of growth is being seen with developers, becoming a large community, commonly associated with the Free Software movement. Newer tools
are always being made, with the advancements in AI, including the first open models and frameworks, such as Llama; new IDE's and improving features in existing
ones, for example vim getting full/improved LSP features.
\section{Closing thoughts}
-After reading this paper, one can hopefully see there is some benefit to the use of free software by development and privacy experts, as it clearly tends
+After reading this paper, one can hopefully see there is some benefit to the use of Free Software by development and privacy experts, as it clearly tends
more to their needs, and is developed with them in mind, unlike alternative proprietary software software. It is clear that it is a growing space, with
more people entering, including non technical users, only getting better for specific use cases and more generic ones.