5 ms·
This is definitely cool, but it also highlights a huge problem we have with software nowadays. There are 19 stacks in this repository. 19 pieces of software th
by kstenerud 5y ago
This is definitely cool, but it also highlights a huge problem we have with software nowadays.
There are 19 stacks in this repository. 19 pieces of software that require their own maintenance, JUST TO RUN YOUR APPLICATIONS! The amount of extra work required just to host the software that views your pictures, plays your videos, and allows chat with people is absolutely insane.
I'm not talking about this particular repo; it's just indicative of how complicated things have become that you must do the equivalent of building and maintaining your own operating system just to get even simple things done. And I belive that it's unnecessarily complicated (once again, not this repo, but rather the state of affairs in general). We're at an inflection point in the industry, and haven't come out the other side yet.
- legends2k 5y agoIsn't it how the general software philosophy is? A composition of decoupled, do-one-thing-well pieces working together to achieve a larger task?
- kstenerud 5y agoYes, but after the initial monoliths of mainframes, we had a golden era of operating systems, where all of the plumbing and infrastructure to run your applications was maintained by someone else (Microsoft, Apple, Commodore, Atari, SGI, Sun, Palm, Redhat, etc). Now we've come full circle back to the bad old days where you need an entire team of dedicated people and arcane knowledge just to run your application software again. I suspect that this will continue until we reach a point where the big players out of necessity come to an agreement for a kind of "distributed POSIX" (I mean in spirit, not actual POSIX). These are exciting times living on the edge of a paradigm shift, but also frustrating!
- theK 5y agoThat’s actually very insightful. The OS era you describe was mostly local with not so many things happening in online interactions and way less devices collaborating to create for example your images folder. Now that we mostly have the server-client model ingrained in every online activity there is an obvious complexity centralisation on the server side. Might be interesting to see how web3 and other decentralised web movements might factor in to this!
- midasuni 5y agoApt install your lamp stack Deploy your files Cronjob to apt upgrade every night Why does that need a full team? Or more than 10 minutes every few years?
- xupybd 5y agoOkay but what happens when you have a breaking change from one of your updates?
- midasuni 5y agoFrom a standard system upgrade? Never happened to me in 20 years. Between OS versions sure, once every few years spend 20 minutes building from scratch If it did happen, same as if your machine caught fire. restore from your backup
- rambambram 5y agoI want to visibly second this (with a comment, not only an upvote). I dubbed the LAMP stack the CHAMP stack for some time now (CH standing for CSS and HTML).
- 867-5309 5y agoone does not simply "deploy"
- midasuni 5y agotar -xvf of your git repository
- tluyben2 5y agoI could post my fully automated self hosting infrastructure, but it would be boring. Few bash ssh scripts and LEPP stack. None of this complexity and yet 10+ years uptime. Interesting nonetheless but think i'll pass on this. I have done these setups at cloudproviders for clients; that is definitely the risk averse version; if something goes wrong every month with AWS, it's just 'ok'; if something goes wrong every 5 years with your non-cloud, it's panic & heads need to roll (even though it costs a fraction).
- rawoke083600 5y agoYup ! This I've used bash+ssh for the last 10 years for my solo founder and commercial products. Is sexy or even nice ? Absolutely not, but damn its simple and most Linux semi professionals can understand it with a glance. Bash as infrastructure+maintenance is almost like SQL for data. Everyone agrees is not fantastic, many have tried to improve and yet SQL + BASH is still around chunking along doing their unsexy things just good enough :) Never underestimate software that is 'just good enough' :)
- eloeffler 5y ago> I could post my fully automated self hosting infrastructure, but it would be boring. Actually, I would find that not boring :)
- INTPenis 5y agoMost of that is kubernetes, which is completely unnecessary for self hosting purposes. It's mostly for learning, or for the convenience of hosting multiple different services, trying many different containerized applications. If your only goal is to serve Nextcloud, Plex or whatever to your family, you can get away with much less than that.
- dgellow 5y agoYou don’t need all of this for a home server, the author is just having fun. Systemd units and a bit of sh is enough if you just want your applications.
- tiarafawn 5y agoI agree that the number of different technologies here is shocking, but you get a lot more value as a result than "just to run your applications". Most notably that includes CI/CD, scaling, and redundancy, all with IaC. These things used to require a lot more administration and development effort. Plugging together all these different tools has become so much work though that in many organizations the platform team(s) who are mainly occupied with doing just that take up a lot of engineering resources. In my opinion the next evolutionary step would be for all of this to be bundled and abstracted away. Funnily enough, we pretty much have that product already with autoscaled "serverless" cloud services, GitHub Actions/Azure DevOps pipelines etc. The biggest problem is probably that things like AWS Lambda, SQS, and DDB lack versatility and user friendliness. If we get some improvements on that front, many organizations might opt for that instead of dealing with their own K8s deployments. Even better would be if we had something like a stripped-down version of OpenStack, just focussed on doing "serverless" right, and rebuilt from the ground up.
- nyellin 5y agoIt's not just running an app. He's building a setup that supports FANG-level infrastructure with autoscaling, self healing, etc. Maybe it's unnecessary for tiny companies, but if you're dealing with infrastructure at scale then the complexity is unavoidable. The only question is whether you want to invent it in house or use a robust system that someone else built properly. I elaborated more in my comment below
- rapnie 5y ago> There are 19 stacks in this repository. 19 pieces of software that require their own maintenance, JUST TO RUN YOUR APPLICATIONS! There's tools like Yunohost [0] that can save a lot of work and are focused on making the subsequent maintenance burden easier too. There's an application catalogue [1] with a lot of popular self-hosted apps to choose from and new ones being packaged all the time. I haven't used it myself yet, but hear very good experiences from people that have. Especially those that lack the more sysadmin tech skills and just wanna click-install & go. There's also Freedombox [2]. I'd be interested to know about other such tools and your experience with them. [0] https://yunohost.org https://yunohost.org [1] https://yunohost.org/en/apps https://yunohost.org/en/apps [2] https://freedombox.org/ https://freedombox.org/
- usrme 5y agoThank you so much for name-dropping YunoHost! The demo alone sold me on finally going the self-host route for things such as ebooks, music, and photos.
- deleted 5y ago[deleted]