sirocyl

noted computer gremlinizer

working on a @styx-os.

 

laptop.
                                                                                                     

"accidentally-vengeful telco nerd"
—Tom Scott

platform sec researcher, OS dev, systems architect, composer; Other (please specify). vintage computer/electronics nut.

I am open to tag suggestions - if there is something you want me to tag on my posts, leave a comment. <3


take a look at
this cool bug I found 🪲
discord
@sirocyl
revolt.chat (occasionally active)
@sirocyl#5128
styx linux OS project
styx-os.org/

tob
@tob

I need to fuss for a moment about the impenetrable nature of github. I see REALLY promising tools and alternatives to things like YouTube and other bigger sites that are on monopolistic rampages BUT, to the layman that shit is a different language. I can work my way around a fair bit of technology, I'm not inept but I am aware that my depth of knowledge is still pretty surface level. So, when I open something that is a possible youtube alternative and see this:

and then the install instructions are like this:
Its no wonder why there isn't mass adoption for using alternatives.

I'm not saying this isn't impossible, I'm not saying its unlearnable, but as someone who is starting to look into alternatives for The Usual Suspects, it is discouraging. I know alternatives will also not have the inherent creature comforts that a lot of people are used to, but so much of the stuff that's on github feels out of reach or unobtainable cause I don't have something that can run a certain code or can't parse out which parts of code need to be edited to get something to function properly. I just dont know these things and finding people to ask feels equally impossible sometimes. Hell, even people who DO use github for stuff say it's whack how stuff is laid out sometimes.
Also, the one I used in particular, this isn't a jab specifically at them, it's just the site as a whole, I've run into so many instances of wanting to try something and being unable or incapable because I'm missing some fine print Somewhere that says I should be able to run this thing but for now it remains feeling like a 50ft wall when I have a 5ft ladder.


nago-
@nago-

github was never meant to be a software distribution service. it was definitely never meant to be a product distribution service. git was never meant to be that. It's meant to share source code between developers. But, there's a few factors that muddy the waters:

  1. Every other actual software distribution service is paid, for-profit, big C Capitalism

  2. Open source stuff is generally "free", or at least "free" enough for the hobbyist

  3. software packaging, distribution, testing, maintenance, review and documentation is easily the hardest part of writing software and 95% of your time commitment. even new developers do not understand how much of their time is rightly spent not coding. I am still probably underestimating it.

  4. Hobbyists, like me, often write little "useful tools" and throw them up for free in the event they might help someone else. If another developer gets use out of it, that's awesome

  5. 99.99% of things on github were never designed for non-technical users to engage with in any way, shape, or form.

  6. There's nothing scarier than when a free little script or tool gets picked up by a social circle outside of the developer's and you have to rush to try and "turn it into a foolproof thing", often without help, pay, or any even vague sense of reward while users scream at you for your buggy, broken crap that they are now demanding support for

  7. We mean well and want to help.

  8. That lone maintainer is now so mired in technical debt and burnout that they have no time to actually add a reasonable landing page or add reasonable instructions suitable for their user's technical level. They do not have time to review any contributions from anyone that might help fix this.

  9. Shit stays a big box of wires because as the demands grow, engineering capacity diminishes.

  10. Everyone is so used to big, venture capital backed "free" corporate software products that the demands placed upon "also free" software are simply not possible to solve with the engineering power available to them. every last good open source project was built on crunch and crunch alone. but twitter was never profitable, it never should have existed. it was never sustainable. You're just witnessing how the level of polish and guidance you want is not possible with small teams working for free in their hobby time.

  11. We (the maintainers and developers) all become so increasingly bitter and despondent that we are rightfully accused of being huge assholes by users who just don't know what they're stepping into.

  12. but we still have shit we wanna get done so we trudge on with the same broken tools and websites because who has time to engineer something better on top of fixing the passion project's problems....???

  13. it's so, so hard to say "no"


nago-
@nago-

and to be super clear I am in the same boat even as a Professional Open Source Developer:tm:. I find most projects to be fucking inscrutable and hugely frustrating. even and especially ones I work on full time.

but I've been in the soup and I can confidently tell you exactly why they're all like this, my own projects included.

community outreach, docs and usability testing does not happen at the FOSS library level and we do not get paid or promoted for that shit.

Saw a tweet once talking about google/amazon's promotion process and how what the industry needs is "meticulous glue work" but that promotion committees specifically reward everything except precisely that and you can feel the consequences echo throughout the entire tech stack, and it's true.


You must log in to comment.

in reply to @tob's post:

i don't know why programmers are so oblivious to the fact that average users just want a binary. all anyone wants is a web page with a big obvious download button labeled with their OS, and it downloads an installer/portable executable they can Just Double Click And It Works. you can keep all the other stuff, it just shouldn't be the first thing people see.

but they're.... containers. why can't you download the container file, double click it, and it be running? why do I have to man docker, the UI should be self-demonstrating.

windows has a "service manager", some inscrutable system-administrator-side UX written for Microsoft Management Console, but ... it works? it has the information and the tool buttons needed to work with the things! it's ugly, definitely not "user" friendly, but it works.

Linux, on the other hand, expects you to know how to man systemctl and write a systemd unit file from scratch. Why?

Nobody's writing .reg files from scratch and merging their hives by hand. There's no C:\Windows\System32\registry.d\. You have a Registry Editor. We use tools, we're not mortaring the bricks with our fingers, we have a trowel. Not Linux, though. You stick your fingers in the cement, "as god intended" and you had better damn well like it

i'd love that, that's the dream we'd been sold, but were that easy it would have already happened. there's things working on it like runtipi and the other selfhosting... frameworks, but they've got their own faults.

I hope something better can exist.

As a professional who gets paid to touch that Windows service manager panel... It does not actually work, all the buttons and statuses are lies, and attempting to make software, even software written by large companies with the explicit goal of working as a service, run as a Windows service is virtually impossible to do well. Notably, the way it tracks process dependencies is not really sufficient to ensure everything starts up in the right order -- so you can have a webapp that starts before the DB, crashes, and then never recovers. As for regedit... from the perspective of trying to make reproducible machine configurations, regedit is sticking your fingers in the undocumented, constantly-changing, impossible-to-version cement. I can back up and restore a set of config files independent of the underlying OS; I really wish that was the case for the registry.

lol, yeah. if it doesnt say right in the readme.md a link to the website where they put binaries, or if there isnt anything in the releases section, then it probably wasnt intended to be used by anyone that doesnt have the technical expertise to build it from source in the first place

FWIW runtipi simplifies a lot of this, especially if you're running it on a local network.

it on its own may be annoying to set up, but after that each selfhosted thing it supports is installed via it's package manager, which does all the docker config for you.

but you're not technically supposed to be running an invidious instance as an end user, even tho it's possible, there's a list of already propped up instances

tbh it's a website for programmers. if you're not a programmer and someone is directing you to github then probably they shouldn't be doing that, unless maybe they're linking to a "releases" page

but yeah also running websites is a huge fucking pain in the ass timesink, i don't even like doing it any more

in reply to @nago-'s post:

guarenteed if they dont have a website with a list of official instances/official binaries, and there's nothing in the releases page, then theres nothing for you (an end user) there in the first place. thay just means that this software isnt popular enough or important enough to its target audience for it to be publicly available; its primarily there for ethical / "just in case" reasons, only really for people who can tell how to build it from source at a glance. also, docker compose at least is FAIRLY easy to figure out, like id consider myself still pretty close to a layman when it comes to server software; docker is SUPER fuckin easy for installation, but it also assumes that you have a system that you can use for that, probably a linux server hangin around somewhere. actually am i allowed to even call myself a layman when i built a bare metal linux server to run my website off of i just realized maybe i dont even count... whatever uhhh docker is FAIRLY easy but its also almost never intended for the end users. if its a website type thing like invidious or piped or whatever the hell then youre expected to use someone else's instance or know what youre doing and have a personal server

Pinned Tags