# Which way is up?

**URL:** <https://boards.straightdope.com/t/which-way-is-up/821033>\
**Category:** Factual Questions\
**Created:** [September 9, 2018, 1:32am UTC](https://boards.straightdope.com/t/which-way-is-up/821033 "2018-09-09T01:32:02Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![Ximenean](https://avatars.discourse-cdn.com/v4/letter/x/aca169/32.png) [@Ximenean](https://boards.straightdope.com/u/Ximenean)\
**Post date:** [September 9, 2018, 10:53am UTC](https://boards.straightdope.com/t/which-way-is-up/821033/21 "2018-09-09T10:53:50Z")

</div>

My take:

Most transfers of data between computers involve a client (the thing that requests the transfer) and a server (the thing that responds to the request.) A download is a transfer from the server to the client, while an upload is a transfer from the client to the server.  
Of course, there are grey areas where some kind of client/server relationship has been established, and yet the server requests a transfer from the client. You might still call that an upload if the overall client vs. server status is clear. And then there are more equal peer-to-peer relationships where the client/server roles switch all the time.

---

<div class="post-metadata">

**Author:** ![Bullitt](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bullitt/32/5725_2.png) [@Bullitt](https://boards.straightdope.com/u/Bullitt)\
**Post date:** [September 9, 2018, 12:26pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/22 "2018-09-09T12:26:03Z")

</div>

> [@davidm](#):
>
> If a file is being copied from a remote device (generally over the internet) to a device I’m controlling then I’m downloading. If a file is being copied from a device I’m controlling to a remote device then I’m uploading. If a file is being copied between two devices both of which I control, then I’m transferring.
> 
> Those aren’t hard and fast technical definitions. They’re just the way I’ve always intuitively used the terms and obviously there are going to be some ambiguous situations where those rules don’t necessarily apply.

It depends on what ‘device you’re controlling’ — your words. If the device you’re controlling is a cloud server and you’re copying a file from a remote device (again, your words, ‘remote device’) and that remote device is your friend’s office laptop, then you’re uploading data to the cloud server.

Would you agree to this?

---

<div class="post-metadata">

**Author:** ![Bullitt](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bullitt/32/5725_2.png) [@Bullitt](https://boards.straightdope.com/u/Bullitt)\
**Post date:** [September 9, 2018, 12:28pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/23 "2018-09-09T12:28:35Z")

</div>

> [@bob\_2](#):
>
> “uploading” or “downloading” = outgoing or incoming… Where’s the confusion?

See post 22.

---

<div class="post-metadata">

**Author:** ![ftg](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/ftg/32/2801_2.png) [@ftg](https://boards.straightdope.com/u/ftg)\
**Post date:** [September 9, 2018, 12:37pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/24 "2018-09-09T12:37:16Z")

</div>

> [@Mithras](#):
>
> I worked for a place that moved a lot of data in and out and offered a couple cloud services. When we pulled data in we would say we were downloading it. When we sent it out, we would say we were uploading it. If we spoke of users sending us data, we’d say they were uploading to us. If they were pulling from us, we’d say they were downloading. There was never the type of confusion you’d get if someone talked about our servers downloading data and meant that it’s transferring data to a customer because that’s not something that would be said.

Ex-Computer Science prof here. Yep, this is the way it goes.

It’s always from the local perspective. To and from me is downloading and uploading, resp.

Hierarchy, size/type of computers has nothing to do with it.

If you initiate a file transfer between two remote computers that’s called … a file transfer. No up or down involved.

---

<div class="post-metadata">

**Author:** ![Bullitt](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bullitt/32/5725_2.png) [@Bullitt](https://boards.straightdope.com/u/Bullitt)\
**Post date:** [September 9, 2018, 12:40pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/25 "2018-09-09T12:40:15Z")

</div>

> [@GreenWyvern](#):
>
> It doesn’t matter which side you are looking at it from. If I have a server, users are downloading from me.

Correct. I’d like to revise that part from my post 16 — it does not matter where you are. Otherwise, about the hierarchy of ‘up’ and ‘down’, we agree.

It’s like an elevator, up and down, and data upload and download.

---

<div class="post-metadata">

**Author:** ![Chronos](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/chronos/32/134_2.png) [@Chronos](https://boards.straightdope.com/u/Chronos)\
**Post date:** [September 9, 2018, 12:41pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/26 "2018-09-09T12:41:31Z")

</div>

An example of the hierarchy answer: Lego Mindstorms robots have a “smart brick” that’s part of the robot, and which stores and runs the program. You typically create the program on a computer, and then transfer it onto the brick via a USB cable. Even though the user is sitting at the keyboard, and initiates the transfer using the computer rather than using the brick, this transfer process is still called “downloading”.

> [@](#):
>
> Quoth **Heracles** :
> 
> The hierarchy is something like:
> 
> Cloud \> anything…

Not quite. Space \> cloud. Any transfer of data to a satellite or space probe, even if it’s from a cloud source, is still an “upload”. This isn’t entirely consistent with the reasons for the other hierarchical rankings (a spacecraft is usually a “small or passive device”), and is probably due to contamination from the common usage of “up” and “down”.

---

<div class="post-metadata">

**Author:** ![Quartz](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/quartz/32/267_2.png) [@Quartz](https://boards.straightdope.com/u/Quartz)\
**Post date:** [September 9, 2018, 12:50pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/27 "2018-09-09T12:50:06Z")

</div>

> [@Shakester](#):
>
> Upload = sending data.
> 
> Download = receiving data.
> 
> It’s that simple, despite some peoples’ insistence on trying to make it more complicated.

This.

---

<div class="post-metadata">

**Author:** ![Riemann](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/riemann/32/3133_2.png) [@Riemann](https://boards.straightdope.com/u/Riemann)\
**Post date:** [September 9, 2018, 12:50pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/28 "2018-09-09T12:50:21Z")

</div>

> [@Chronos](#):
>
> Not quite. Space \> cloud. Any transfer of data to a satellite or space probe, even if it’s from a cloud source, is still an “upload”. This isn’t entirely consistent with the reasons for the other hierarchical rankings (a spacecraft is usually a “small or passive device”), and is probably due to contamination from the common usage of “up” and “down”.

This is pretty funny. So leahcim’s “gravitational potential” joke wasn’t completely wrong.

---

<div class="post-metadata">

**Author:** ![Bullitt](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bullitt/32/5725_2.png) [@Bullitt](https://boards.straightdope.com/u/Bullitt)\
**Post date:** [September 9, 2018, 1:02pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/29 "2018-09-09T13:02:09Z")

</div>

Wikipedia:

> **[Download | Definition](https://en.m.wikipedia.org/wiki/Download#Definition)**
>
> Downloading generally transfers entire files for local storage and later use, as contrasted with streaming, where the data is used nearly immediately while the transmission is still in progress and may not be stored long-term. Websites that offer streaming media or media displayed in-browser, such as YouTube, increasingly place restrictions on the ability of users to save these materials to their computers after they have been received.
> Downloading on computer networks involves retrieving data f...

> [@](#):
>
> Downloading generally transfers entire files for local storage and later use

> **[Upload](https://en.wikipedia.org/wiki/Upload)**
>
> Uploading refers to transmitting data from one computer system to another through means of a network. Common methods of uploading include: uploading via web browsers, FTP clients, and terminals (SCP/SFTP). Uploading can be used in the context of (potentially many) clients that send files to a central server. While uploading can also be defined in the context of sending files between distributed clients, such as with a peer-to-peer (P2P) file-sharing protocol like BitTorrent, the term file shar Up...

> [@](#):
>
> In computer networks, to upload is to send data to a remote system such as a server or another client so that the remote system can store a copy.

In other words it’s not about the hierarchy, it’s about your location?

---

<div class="post-metadata">

**Author:** ![PoppaSan](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/poppasan/32/189_2.png) [@PoppaSan](https://boards.straightdope.com/u/PoppaSan)\
**Post date:** [September 9, 2018, 1:28pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/30 "2018-09-09T13:28:47Z")

</div>

> [@Shakester](#):
>
> Upload = sending data.
> 
> Download = receiving data.
> 
> It’s that simple, despite some peoples’ insistence on trying to make it more complicated.

So the three industrial control powerhouses that have industrial controllers that together control the manufacturing machines of just about everything have been wrong for the past four decades because some guy on the internet says so. All three have software I have used and from the computer I am at, I upload from the controller when I want a copy of its current program and I download any changes to it. The controller will download the data to any of its remote devices such as motor controls and input bases.  
ETA: In my experience download is send data and upload is receive. This being among peer units. I will grant the cloud hierarchy explained earlier.

---

<div class="post-metadata">

**Author:** ![Quartz](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/quartz/32/267_2.png) [@Quartz](https://boards.straightdope.com/u/Quartz)\
**Post date:** [September 9, 2018, 2:44pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/31 "2018-09-09T14:44:49Z")

</div>

If you ask two different IT professionals you get three different answers.

🙂

---

<div class="post-metadata">

**Author:** ![davidm](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/davidm/32/225_2.png) [@davidm](https://boards.straightdope.com/u/davidm)\
**Post date:** [September 9, 2018, 2:55pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/32 "2018-09-09T14:55:47Z")

</div>

> [@Riemann](#):
>
> This is pretty funny. So leahcim’s “gravitational potential” joke wasn’t completely wrong.

If we base it on relative gravitational potential then if a probe is orbiting Jupiter sending data to it should be considered downloading.

---

<div class="post-metadata">

**Author:** ![davidm](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/davidm/32/225_2.png) [@davidm](https://boards.straightdope.com/u/davidm)\
**Post date:** [September 9, 2018, 2:57pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/33 "2018-09-09T14:57:38Z")

</div>

> [@Bullitt](#):
>
> It depends on what ‘device you’re controlling’ — your words. If the device you’re controlling is a cloud server and you’re copying a file from a remote device (again, your words, ‘remote device’) and that remote device is your friend’s office laptop, then you’re uploading data to the cloud server.
> 
> Would you agree to this?

As I said, there are ambiguous situations.

---

<div class="post-metadata">

**Author:** ![Bryan\_Ekers](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bryan_ekers/32/183_2.png) [@Bryan\_Ekers](https://boards.straightdope.com/u/Bryan_Ekers)\
**Post date:** [September 9, 2018, 3:09pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/34 "2018-09-09T15:09:12Z")

</div>

> [@Shakester](#):
>
> Upload = sending data.
> 
> Download = receiving data.
> 
> It’s that simple, despite some peoples’ insistence on trying to make it more complicated.

Indeed. I’m somewhat bemused by all these alternative interpretations being offered.

That said, I’ve worked in tech support and I learned to resist the urge to correct people who say things like “So can I download these pictures to my grandson?” because… what’s the point, really?

---

<div class="post-metadata">

**Author:** ![Ludovic](https://avatars.discourse-cdn.com/v4/letter/l/7ab992/32.png) [@Ludovic](https://boards.straightdope.com/u/Ludovic)\
**Post date:** [September 9, 2018, 3:12pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/35 "2018-09-09T15:12:36Z")

</div>

I use it from the perspective of the initiator, whether it be a human or an automated process. So if a satellite had a daily task on its computers to initiate a file transfer _from_ another system I would call it a download whereas if the ground system initiated it I would call it an upload. If you buy MP3s and then actively transfer the files to your PC you are downloading. If the cloud server somehow had a process that automatically touched your PC and re-sent your previously purchased files it would be uploading them. When you send video files to YouTube you are uploading them.

I guess it _could_ get theoretically tricky if there are multiple layers involved, such as if a person initiated a process to send several files to a remote server, but the files are put in a queue which is actively managed by the remote server, in which case the entire process is an “upload” but I wouldn’t quibble if each file action were called a “download” since the transfer would be initiated at the destination.

---

<div class="post-metadata">

**Author:** ![Doug\_K](https://avatars.discourse-cdn.com/v4/letter/d/b5ac83/32.png) [@Doug\_K](https://boards.straightdope.com/u/Doug_K)\
**Post date:** [September 9, 2018, 4:51pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/36 "2018-09-09T16:51:52Z")

</div>

> [@PoppaSan](#):
>
> So the three industrial control powerhouses that have industrial controllers that together control the manufacturing machines of just about everything have been wrong for the past four decades because some guy on the internet says so. All three have software I have used and from the computer I am at, I upload from the controller when I want a copy of its current program and I download any changes to it. The controller will download the data to any of its remote devices such as motor controls and input bases.  
> ETA: In my experience download is send data and upload is receive. This being among peer units. I will grant the cloud hierarchy explained earlier.

Other way around.  
[Download](https://en.wikipedia.org/wiki/Download)

> [@](#):
>
> In computer networks, to download (abbreviation DL) is to receive data from a remote system, typically a server such as a web server, an FTP server, an email server, or other similar systems.

[Upload](https://en.wikipedia.org/wiki/Upload)

> [@](#):
>
> In computer networks, to upload is to send data to a remote system such as a server or another client so that the remote system can store a copy.

Downloading and uploading are reciprocal operations. That is , you can’t download a file unless another system is uploading it.

---

<div class="post-metadata">

**Author:** ![davidm](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/davidm/32/225_2.png) [@davidm](https://boards.straightdope.com/u/davidm)\
**Post date:** [September 9, 2018, 6:19pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/37 "2018-09-09T18:19:39Z")

</div>

I can’t think of a single website that distributes files that has a button or link to do so that says “Upload”.  
They all say either “Download” or something else such as the file name or “get file”.

On the other hand, sites that want you to send a file, such as job sites, say things like “Upload Resume”.

---

<div class="post-metadata">

**Author:** ![Riemann](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/riemann/32/3133_2.png) [@Riemann](https://boards.straightdope.com/u/Riemann)\
**Post date:** [September 9, 2018, 7:52pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/38 "2018-09-09T19:52:29Z")

</div>

> [@Bryan\_Ekers](#):
>
> That said, I’ve worked in tech support and I learned to resist the urge to correct people who say things like “So can I download these pictures to my grandson?” because… what’s the point, really?

Yes, save your mental energy for situations like when an elderly person has been told that “I’m DTF” means I’m Doing The Facebook.

---

<div class="post-metadata">

**Author:** ![K2500](https://avatars.discourse-cdn.com/v4/letter/k/f6c823/32.png) [@K2500](https://boards.straightdope.com/u/K2500)\
**Post date:** [September 9, 2018, 8:09pm UTC](https://boards.straightdope.com/t/which-way-is-up/821033/39 "2018-09-09T20:09:13Z")

</div>

> [@Chronos](#):
>
> An example of the hierarchy answer: Lego Mindstorms robots have a “smart brick” that’s part of the robot, and which stores and runs the program. You typically create the program on a computer, and then transfer it onto the brick via a USB cable. Even though the user is sitting at the keyboard, and initiates the transfer using the computer rather than using the brick, this transfer process is still called “downloading”.
> 
> …

When I do things like this I do say downloading but I add the destination " downloading to the brick".

---

<div class="post-metadata">

**Author:** ![Khendrask](https://avatars.discourse-cdn.com/v4/letter/k/3e96dc/32.png) [@Khendrask](https://boards.straightdope.com/u/Khendrask)\
**Post date:** [September 10, 2018, 8:32am UTC](https://boards.straightdope.com/t/which-way-is-up/821033/40 "2018-09-10T08:32:47Z")

</div>

Read the manual, or help files. Seriously.  
In the industrial world, when communication to devices, it is about a 50/50 split who defines a transfer TO a device as a download, and who defines the same transfer TO a device as in upload.  
When dealing with different software packages, it can become a rather spectacular disaster if you get the direction wrong.

[Previous page](https://boards.straightdope.com/t/which-way-is-up/821033.md?page=1)

[Next page](https://boards.straightdope.com/t/which-way-is-up/821033.md?page=3)
