My personal opinion is that Docker just makes things more difficult. Containers are fantastic, and I use plenty of them, but Docker is just one way to implement containers, and a bad one. I have a server that runs Proxmox; if I need to set up a new service, I just spin up a LXC and install what I need to. It gives all the advantages of a full Linux installation without taking up the resources of a full-fledged OS. With Docker, I would need a VM running the docker host, then I’d have to install my docker containers inside this host, then forward any ports or resources between the hypervisor, docker host, and docker container.
I just don’t get the use-case for Docker. As far as I can tell, all it does is add another layer of complexity between the host machine and the container.
4 Mbit is exceptionally slow by today’s standards; when I signed up for internet access (there’s only one provider available where I live), I told them “I will pay for whatever the fastest connection is that you can offer.” Turns out that’s just single-channel DSL. They won’t even install bonded DSL where I live, and believe me, I’ve tried. I do have Starlink as well, but because of the land around me, it’s always going to be obstructed by the land topology; when I calculated how high I would need to raise my antenna to avoid obstructions, it was several hundred feet. My pfSense box does a good job of routing traffic between my DSL connection and my Starlink connetion (and falling back when Starlink is obstructed), but for hosting anything, I need a stable connection. That leaves me with just my DSL connection.
Are you sure Youtube doesn’t pick video quality based on connection speed? It will frequently drop down to 360p when my connection speed is particularly shitty that day, and I’ll have to manually increase it (I’d rather have occasional buffering than a blurry mess).
Unfortunately, the only people who would actually want to see my home videos (family) live several thousand miles away. I’m also not sure they would even know what to do with an external HDD. Not a bad idea, though.
I honestly didn’t know that Youtube “unlisted” was even a thing; I’ve never posted a video to Youtube before, but this might be a promising idea. I’m assuming they still inject ads into unlisted videos, which is a major barrier for me… I hate ads.
I’ll admit that I’m a snob when it comes to video and audio quality; 4k/60 might be overkill, but I think at least 4k/30 has some merit in this case. Most modern phones and tablets (and TVs) are at least greater than 1080p, so assuming they’re watching the video horizontally, 1080p video would still result in a loss of quality. Would they care? Almost certainly not, but the idea of watching a UHD video source in a lower resolution bothers me far more than it should.
It definitely seems like VPS hosting is out of my budget. I think that hosting multiple version of the same video (and paying for more HDD space) would probably be cheaper than a VPS with a GPU resources, but the recurring fees are probably more than I’m willing to spend.
I’m a big fan of Jellyfin. I run it at home with a dedicated Nvidia A2000 for hardware transcoding. It’s able to transcode multiple 4k streams with tonemapping faster than they can play.
As much as I’d love to use Jellyfin, there are two major issues: My internet connection is so slow, that I’d be lucky to stream 720p at a low bitrate. I’d spend the money on a faster connection, but I live in an area that doesn’t even get cell phone service. My options are DSL and Starlink, and I have both; the DSL is just slow, and Starlink uplink speed isn’t much better, plus I have plenty of obstructions that make it somewhat unreliable. The second problem is that Jellyfin has too steep of a learning curve. Telling my relatives “oh, if it starts buffering, just lower the bitrate” isn’t an option. Not to mention, I’d have to run it on a VPS, and hosting a VPS with the resources required for this is way too expensive for me.
I’ve swapped out at few of my Zigbee devices in the past, and even though I’ve deleted the original device, HA will add an “_2” to the entity ID, which breaks any automation that uses it, even if the friendly name remains the same. The only time I’ve seen this not happen is when a device drops off the network and I re-pair it. Is there a trick to making this work? Even if I don’t switch to Z2MQTT, this would be really useful to know. I have a few unreliable cheap door sensors that I’d like to replace, but they’re tied to so many automations that I’ve been dragging my feet on it.
When you talk about the limits of ZHA, what are you referring to exactly? It would probably take an entire weekend for me to re-pair all the devices on my Zigbee network, but I’m not completely opposed to the idea of I gain some functionality that I didn’t have before.
Based on what I read when I first set up HA, it seems like ZHA was somewhat lacking for quite some time but is now essentially equivalent to Z2MQTT. I went with ZHA because it seemed like the “default” for Zigbee.
.NET is infuriating enough on Windows. Any time I have to work with a .NET library, I always write a wrapper with a C or C++ interface first. Your friend who does .NET development on Linux has far more patience than I can ever hope to have.
RTX is one of those things that just isn’t optional for me. I may be in the minority, but I am far more concerned with how games look than how they run. As long as my FPS is above 30 or so, I’m generally okay with performance. I feel like Windows will always support those “extra features” like RTX before Linux, unfortunately. I really comes down to market share, I think; the developers at Nvidia and AMD are going to target Windows first, and the people who maintain Proton are stuck in second place. You’ll have to pry Windows 10 out of my cold dead hands, though; I liked Vista better than Windows 11.
For development, I’m locked into Windows at work, but my job isn’t specifically software development; it just happens to be a useful skill to have in my career. I do far more coding at home, and I certainly have the option of switching to Linux. I think I’ve just been spoiled by Visual Studio’s all-in-one approach for so long. My #1 concern is debugging. I haven’t seen an Linux IDE that allows for stepping back through the call stack and checking variable states inside the IDE quite like VS does it.
To be clear, I’m not bashing Linux at all. I’ve been a homelabber for longer than I can remember, and I have a total of 3 physical machines and VMs that run Windows compared to a total of probably 20 that run Linux, FreeBSD, or some other POSIX variant. I have so few Windows machines that I actually own legal licenses for all of them. I do feel like the people who say “Just run Linux on your desktop PC; it can do everything Windows can” are looking at the operating system through rose-colored glasses. Linux will always be the best choice for anything that doesn’t require having a monitor attached, but otherwise, it feels like it’s playing catch-up to Windows.
I’ve tried switching to Linux exclusively multiple times, and I always end up falling back to Windows on my desktop. I have multiple Linux servers and VMs, but there are two main barriers. First is gaming. Last time I tried, I couldn’t get RTX working in some titles, EA launcher was broken, and it was generally just buggy. The second reason is for coding. I’ve been coding for Windows for almost 20 years, and I am hugely reliant on Visual Studio. I just can’t find a comparable alternative for Linux.
I’d ditch Windows in a second if I could make Linux work for me, but so far I haven’t had much luck.
The best solution IMO is don’t let your smart devices have access to the internet. Put them on a VLAN, block them at the firewall, whatever method you prefer. Accessing your home network remotely is one thing, but your air conditioner doesn’t need to INITIATE a connection to the outside world.
You should never fully trust ANY device on your network. Even if it’s not collecting your personal information and sending it off to who-knows-where, there could always be a zero-day exploit just waiting for someone to find it.