Professional Documents
Culture Documents
Computational machines have existed as far back as the first calculators created to predict
astronomical events and perform basic arithmetic, but in the modern sense they date only to the past century.
The evolution from physical to electronic computers has given rise to my field, to what distinguishes me
from an engineer. Where they might focus on the physical aspects of a machine, like gears and transistors,
computer science is mostly abstracted from the device it runs on. This means that when I write code, I’m less
concerned with how a computer might run it, more so the output it produces. This is the main idea of my
concentration in software, the programs or operating information that a computer needs to complete tasks.
While we aren’t typically thinking about the flow of electrons in a system like computer engineers,
hardware does dictate the functions a machine can carry out. Code today runs everything, even smart light
bulbs in the home, giving a wide range of sensors, displays, and vastly different areas of communication
between the physical world. All of these devices have different processors, energy requirements, and other
physical and electronic needs. Based on the problem presented, a computer scientist will consider all these
factors in generating instructions for the machine to run. Efficiency (energy/resource consumption) and speed
(power) are huge factors that influence what a final product might look like. A server, a computer in the
cloud, must give multitudes of data and computations to end hosts, but has the advantage of fast hardware
and a controlled environment with lots of energy availability. In this scenario, the speed and efficiency of the
code the servers run is paramount, as it will be run thousands of times a second, and must cater to many hosts
at the same time. Contrasting to this, think of a satellite in space far from earth, with limited solar or nuclear
energy, and extreme temperatures and radiation. Code on these computers will be run less, focusing on
hibernation and reliability. Data is crucial, the speed at which it is processed less so.
This is where specific computer science fields start to diverge. There’s software, which I study, that
focuses on programs run on computers and servers and the operating systems that are configured with the
hardware. Artificial intelligence focuses on using very powerful computers to achieve more humanlike
thought. Systems works to link computers together over networks, and internally between computer
components. All of these concentrations involve writing code, but based on the application certain languages,
writing styles, and external packages will be chosen. A low-level language like C, for example, might be
used on the systems layer in the operating system, as the structure of its logic and data types more closely
resemble how a computer thinks. On the other side of things, a much more powerful language like Python
could be used for making a neural network in the AI field, as it abstracts what the computer actually does,
and allows for more instructions in fewer commands that are more readable to humans.
Even though one person may be able to write a suitable program, most of the time code is run
alongside thousands of scripts, on technology that is always evolving. Collaboration on singular programs,
like with paired programming, as well as coordination as far as a server-wide scale must take place to ensure
systems work as expected. While this can take place in a regular office setting, an interesting aspect of the
computer science field is that it has been very adaptable to the pandemic. Since almost all work is done on
computers or in the cloud, collaborating and working in separate spaces requires little more effort than being
together in the same room. Android app development was a big part of my last co-op, and even though I was
working from home, services like GitHub (think Google Docs for code) allowed me to incorporate up to date
Through collaboration comes writing, but with computer science this is about as far from traditional
English as majors go. The field is extremely new when compared with others, and even though a lot of our
lives depend on this work, informality is a hallmark of programmers. Obviously this varies from company to
company, but in my experience most communication has been on Slack in short and concise messages with
little professionalism. In fact, the main way of sharing ideas in the written form is with code itself. Programs
can contain comments, text in code that is not run, but describes what variables contain which data, the
purpose of functions, etc. Along with well written code, comments allow the sharing of files between
computer scientists without much need for additional explanation. Outside of the programmers’ sphere, ideas
and final products can be shared in presentations simply by running the code. Where a physicist might have
to include several paragraphs of text to describe found data, programs can be analyzed from a person
inexperienced in the field by seeing what programs do. A business contracting a company to build a website
doesn’t need to look at the source code, they just have to type in the URL.
Looking at the language Python’s website, a clearer image can be formed about the interests and
advancements computer scientists are most impacted by. Right on the front page is a section detailing several
applications for the language, including web development, data analysis, software development, and
graphical user interfaces. Python is a very adaptable language, it can be run on any big operating system,
some microcontrollers with microPython, and is powerful yet easy to learn. There are links to specific
packages that can be installed in addition to the language for specific applications, as well as pages that
introduce you to the language, each for programmers and non-programmers. The site also lists quotes from
companies using it in their products. It is commended for allowing developers to complete more in fewer
lines of code, additionally for being easy to read and understand as it is being shared and collaborated on. It
is widely agreed upon that scientists write the same amount of code in a given time, no matter the language,
There’s very little fluff in the website, reflecting the values of computer scientists. In the world of
binary the end result is absolute, no matter how it is described. Everything on the main page is brief and to
the point, mainly directed towards encouraging the usage of the language. There are several download links
to get started, shifting the focus from talking about the language to getting it on the audience’s computer so
they can interact with it themselves. There is a strong notion of usability and flexibility, just like with import
statements of the actual programming language. The body of the website follows a clear flow, directing users
to downloads and tutorials based on their experience and needs. In many ways the rhetoric of the language of
The work of computer scientists joins the binary, absolute precision of computers with the abstract
and complex wishes of humans, and within this is a spectrum. We can work closer to the computer side of
things, like programming operating systems, or the human side, with AI painting. As the field moves further
and further from humankind's first calculators, computers and the instructions they run on will become more
human, but also much more powerful than us. Computing is one of the few areas of research that advances
almost exponentially each year, giving rise to the possibilities of automation, advanced intelligence and
prediction, and deep learning. We fuel this change by behaving, as much as humanly possible, like
computers, in the way we write, communicate, and learn from each other. Machines don’t care about the way
we talk, dress, or behave around each other, just the instructions we give to them.
Works Cited
Python Software Foundation. Python, Python Software Foundation, 6 Aug. 2021, https://www.python.org/.