These kinds of blind spots exist because not only is there no money in solving them (and open solutions are too hard to use as usual) but in this case there is money in not solving them. A great simple ubiquitous solution would reduce demand for large complicated cloud storage systems that allow cloud data mining of all your files and/or require subscriptions.
For me, a pair of netcats has served that use-case quite well.
python -m http.server 8000
You first start one server on a desktop/laptop which has the software, and then any client (Android, iOS, PlayStation, Kindle, etc) with a web browser (no need to install any client software) can upload or download files from it.You can download prebuilt binaries for x86-64 Linux, Windows 7 or higher, or Mac OS 10.7 Lion or higher (sorry, no prebuilt binaries for Apple Silicon, but they could be added if there is sufficient demand) from https://github.com/akovacs/uploadserver/releases/ or compile from source using a nightly rust toolchain if you prefer.
Start the file server on a desktop machine:
chmod +x upload_server
./upload_server
Determine your machine's IP address using: # Linux
hostname -I
# Mac
ifconfig
# Windows
ipconfig
Navigate to the server's ip address port 8000 (indicated by the hostname -I command you ran earlier) in the web browser of your choice on any device (no need to download or install any client applications) and upload files using the web UI or directly via curl: curl -X POST --data-binary @file_to_upload.txt http://192.168.1.X:8000/uploaded_file.txt
Then download the file to another machine or mobile device either from the web GUI or via a commandline tool: curl http://192.168.1.X:8000/uploads/uploaded_file.txt --output downloaded_file.txt
If you don't have a local network, you can setup an adhoc hotspot on any Android 9+ (Settings > Network & internet > Hotspot & tethering https://support.google.com/android/answer/9059108) or iPhone (Settings > Personal Hotspot), then connect to it using any WiFi-enabled device.Compared to cloud services or `python -m http.server 8000`, this is extremely fast since the server is written in rust, it is fairly simple (compiled and stripped binary is typically less than 3MB), it sends everything over local LAN, it seems to handle large files (over 4GB) fairly well, and you only need to install the software on one machine.
Also what about syncthing[1] (for recurrent/permanent sync) and croc[2] (for one time copies) ?
I have used both for a number of years already. Before croc, magic wormhole was available for even longer.
Obviously I can move files around. I can also program in 10 languages. I am not normal.
But even for me, it's not convenient. I don't "need" a friendly ubiquitous way to do it, but if I had one it'd be really nice and would save me time.
Regardless of the quality of any tool, most people will not necessarily use the most friendly way. They will use the tool they already know and have. Reason most people have been using Microsoft Word over the year with very crappy results to share screenshot to people for example. There were plenty of available screenshot tools that would save wherever you want in the format you want, but you had to install them, they were not installed on their windows XP computer out of the box. So you would see people preferring copy/pasting to Word, not even paint or that other image tool I don't remember the name that was available ou of the box on windows.
So nowadays, there is only one thing that is ubiquitous and available in most people devices that allows them to reach other: messaging tools. In the past it was email, nowadays it is Whatsapp. You can make the nicest, fast and friendly tool to share files to others, people will still use Whatsapp to send files to others and even themselves.
(But of course, I hardly have the time or perhaps even ability to really go far with that thought. Oh well.)