Thanks, that's the missing piece. Ironically I am a software engineer in my day job, but not the right kind of software engineer. It's fun to broaden my horizons though. I copied the proxy settings from the @[email protected]'s nginx.conf with the right edits for the hostname into my reverse proxy config and now everything appears to be working!
Neuromancer
Yeah, I stuck with Windows Phone very nearly to the end, but the lack of apps just made it totally unsustainable for anyone with any kind of social life that extended beyond SMS and email.
Is there a tipping point where it's a net loss? If I understand the protocols correctly, the whole back end federation part of the equation is push based, so if everyone was running their own instance, lemmy.ml would have to push every post to every individual instance in the network. At some point isn't it more efficient to only have to serve posts when people come here to look at them?
You have to make a new account unfortunately.
I'm not sure if I should make a new post or keep this in a single thread, anyway, I've managed to get the front page to load, but can't get any farther.
I used the instructions from @[email protected]'s branch, particularly their nginx config.
I'm running the whole docker-compose setup behind my own nginx reverse proxy, which is set to proxy requests to the docker nginx (and also handles SSL). I modified the docker-compose.yml to bind the host port on 9001
, then my main nginx config looks like this:
http {
server {
listen 443 ssl http2;
server_name lemmy.villa-straylight.social;
ssl_certificate /etc/letsencrypt/live/<redacted>
ssl_certificate_key /etc/letsencrypt/live/<redacted>
location / {
proxy_set_header Host $host;
proxy_pass http://localhost:9001;
}
}
}
The front page loads, but pretty much anything else I do results in an endless spinner. The only possible problem I see is this in the docker terminal output:
WARN Error encountered while processing the incoming HTTP request: lemmy_server::root_span_builder: WebSocket upgrade is expected. NoWebsocketUpgrade
If that's true about images that does greatly reduce my concern. Text is small and easily compressed. That said, I fully hope to see multiple orders of magnitude of increased traffic if/as Lemmy gains traction.
One related question I have about this: How much ongoing storage would one expect for this kind of instance? My understanding is that the fediverse is push-based, so if I run my own instance that means that all communities I subscribe to are pushing updates to my instance which presumably get stored in a database somewhere. It seems like that could really add up to a lot of data.
Content longevity: You can do your own backups and don’t have to worry about loosing content when another instance disappears.
Conversely, this is the main thing keeping me from setting up my own instance. You have to do your own backups and keep everything running. If you mess up, you loose your whole identity. I'm a software engineer, but I'm a mediocre sys admin. I have the technical skills to host my own instance but I don't want the stress of getting it right.
I just tried it. No way I can fit 3 columns on a 16:9 4k monitor, which means the main window area is offset to one side, which would quickly drive me crazy. Same reason I have never understood the ultrawide trend. I have three monitors and it works a lot like your screenshot but way less cramped.
I'm a NASA software engineer writing spacecraft flight software. A few thoughts:
- I'm not at JPL and I don't know how religiously they follow these rules, but we really don't. They're not part of our official or unofficial standard practice. Indeed, I can't even find a reference to the rules on nasa.gov
- Most of these rules are considered obvious these days. Most of the rest we don't follow either. (at least not absolutely)
- This video critically misstates the rule about heap allocation, which is perhaps the most significant difference between how we write software and how non-safety critical systems are written. Dynamic allocation is allowed during initialization. This is a massive, massive difference in terms of how easy it is to write code compared to stack-only.
- The video also misses the mark on preprocessor usage. Especially in C, you have very little choice but to rely on the preprocessor. We avoid it, but the kind of multi-path compilation he describes is necessary to enable thorough testing of the code.
- We're still human. Even where the rule is good and we follow it in principle, you will still find all too many exceptions in the actual code.
If you really want to see how the sausage is made, the software framework used by many NASA missions is open source and on GitHub.
I wish they didn't throw "think of the children" in there.