Nah I kinda agree, just give me a “download” button somewhere. I don’t care about your build file, deprecated classes, list of supporters or whatever the fuck else you keep on there.
I just want to download the software and use it.
Yeah and I just want to be a millionaire. Son, it ain’t happening just because you want it.
Wanting the most used version control platform in the world, that is owned by the biggest software developer in the world to have slightly better UX, is not the same as wanting g to be a millionaire.
Kinda is tho since you want a bunch of people to do basically unpaid work just so your experience can be a bit better.
That’s what the releases page is for. But even then people will download the source instead and complain.
If you’re having trouble with this I suggest you find an adult.
I’m not having trouble with it. I use github every day at work. I just want an easy streamlined user experience.
You’re not going to get it on a system for technical users like Github. That’s for managing software projects and handling code. Make a website if you want a big fancy download button.
This is like complaining a forklift doesn’t have cruise control.
I tend to agree, I don’t go on GitHub very often but pretty much every time if I don’t land on the screen where I can download the files (if it’s a project that has “packages” that can be downloaded I mean, not just code that’s executed in a terminal), I need a bit of time to remember where to find the releases page, when that should be something easily accessible from a UX perspective.
I just checked again and on mobile it’s all the way at the bottom of the page…
The worst is when there is an error in the install commands that you have to debug and correct yourself. When they didn’t even bother to test their install commands it gives me pause about even installing the thing. But I’ve definitely had the experience before and then had the actual software itself work fine
I would suggest that github is the wrong place to go look for that. Github is for developers, primarily a place to share source code, for people who DO care about build files, deprecated classes, contributors, and git history - so they can make the software that runs large parts of the modern world more efficient and flexible.
Whether there’s an executable provided is completely optional and up to each author. Further, considering in this specific example it was python code, it’s far more flexible for the author to provide python run instructions (which the author HAD provided by the way) than it is to give you a .exe which would take extra, unnecessary effort, and overlooks that the tool he was writing could also be used on linux and macos based machines (because python command exist on those)
…how hard is it to upload something in the release section for people to download?
Compared to giving your dumb ass the source? A lot. A lot of effort. Shut up and learn how to run two simple commands.
For what architecture? You use windows, what about Linux? What about MacOS? Should the author spend their time making an executable for each platform? Or only the platforms that are most popular? (Edit: also, I’m not going to touch the fact that for complex programs there are third party dependencies which have license restrictions to be bundled together into an exe or provided into a zip as a dll, which is extra work for the dev to do just to make an exe)
Secondly, as I pointed out in my above comment which you seemed to have missed:
Some code, as is literally the case for the original source does NOT run via a standalone executable, so there is NO exe to upload. It is run via third party interpreters, in this case the Python interpreter.
There’s a section about how to run the code in the original post for example here https://github.com/sherlock-project/sherlock?tab=readme-ov-file#usage - it requires the source code (because its not compiled, it’s interpreted) and installing python - which then is used via python3 sherlock
to run the tool. Again, in cases like this there is literally no executable to upload. There may be some roundabout ways to upload an executable that packages, but that’s way beyond just providing the source to be run via python.
Also to edit to say this: Regardless of how “easy” you may think uploading an exe for something might be, calling the people developing that code “stupid smelly nerds” as the original poster did (not you) is completely disrespectful, arrogant and entitled, and if someone demanded that I upload an exe to one of my repos like that, I would completely ignore their request.
I’m not browsing github for random software to install. I’m looking for specific bits of software to do something and coming to github because it’s the only place the devs host their software.
Like I get what github is for, I use it almost every day, it’s the people using it to host downloads for their software that are using it outside its intended purpose (kind of)
As someone who quite hates being in that situation (although I can build binaries and all that with a little grunt), I can’t quite understand why sometimes developers can’t do what’s seemingly so simple for them - build and release their code as a package.
Like, I know there are variables when building, but why can’t you just make a default package (okay, series of packages for different OSes if needed) for everyone to enjoy? Is it just some elitist mindset or no bothering about anyone but devs or are there valid reasons for such actions beyond “I don’t care”?
It’s Python. It’s source or nothing. It’s as close to universally released as it can get without a lot more effort. This is a perfect example of where non-tech savvy people put their foot in their mouth and chew.
It’s Python. It’s source or nothing.
Not quite true. There are tools that can compile a Python program to a binary. I used PyInstaller years ago to create a single-file .exe file of a Python app I designed for a non-tech savvy friend. Worked like a charm.
Remember, the person does it FOR FREE in his SPARE TIME. Any type of entitlement is absolutely toxic. No, you are not entitled for an installer. Especially with Python. The READMEs are usually 1-5 commands, anyway. People would rather rant for across several forums rather than educate themselves over 30 mins.
Yes, but that’s extra effort, for a single platform. In order to properly asuage the goons that whine about no installer, they’d need to compile up such a binary or installer for every OS, for each unique distro.
My point is not that it is impossible, but that to even gain much for everyone, it takes A LOT of extra work. The source code for Python, with build context included, is easier than most other options, and the people asking for more are entitled twats.
It’s not actually all that easy, depending on the project. There are a million different ways to package a program to be installable. “Just make an EXE” for example doesn’t work very well as modern Windows won’t want to let you run it; and since computers are all different you need to bundle all potential dependencies in the EXE. If that’s not feasible then you’re back to picking an installation manager.
As others have mentioned, in this case we’re talking about Python, so it’s easier for everybody to not do any of that. Using it is probably as easy as 1-install Python, 2-install dependencies (one command), 3-run the script. Making that into an EXE is possible but introduces way more complexity than is warranted.
Its just a python script, it takes 5 minutes to watch a youtube video to learn how to install python and run the script according to the readme instructions.
Its not like the repo owner could just hit the magic compile button for an interpreted language to make it work or really needs too.
It’s not always that simple and I also don’t want to do the testing and support that requires. I’m not gonna set up a windows vm and 5 different Linux vms and get a Mac to build and test for every platform. If you want to use my software you’re welcome to do so but unless you’re paying me I don’t see why I should provide a service that is just a pain in the ass for me. Open sourcing the code alone is already a commitment that not everyone is willing to do as that requires documentation, issue tracking, community support and much more. I build stuff that I want to use and am interested in and as a thank you to the OSS community also share that work but that does not include end user support
I kind of agree with the Reddit post. Like how hard is it to just provide a simple download button? Obviously if it’s an open source project and still in development there’s not a lot of utility in doing that, but there are situations where there will be a plug-in for a program and it’s been distributed via github.
And it’s got a terrible UI, I can never remember where the download zip button is, because it’s not obvious.
You are arguing with elitism, it will never go anywhere and they will never feel ashamed.
Honestly, 99% of the reason the world is still locked in closed source software ecosystems is that fucking elitist rectal-cranial inversionist devs that want to make it as hard as possible for a non-dev to use their tools.
‘You aren’t entitled to an easy install’ is the mantra they whisper in their hearts as they push code.
What? It’s python code, not in a binary, and you’re complaining about things being closed source?
Also if you want it compiled and provided to you, feel free to pay someone to provide that service.
The only barrier here is not wanting to pay AND not wanting to learn or read instructions.
Life is going to be pretty tricky with that mentality.
^This attitude is exactly what crippled open source, good job playing into Apple and Microshit’s hands.
The more effort a user has to put in to use a tool, especially when other, easier and functional tools exist, the less likely that user is going to adopt that tool as part of their daily use.
The only barrier here is not wanting to pay AND not wanting to learn or read instructions.
This is a false dichotomy, there are plenty of free and good open source tools that don’t need 20 hours of manual plundering to install.
The Gimp is a great example of this, super easy to install right out the box for even non-technical people, is open source, doesn’t cost a cent.
The simple truth is devs that share your attitude are too lazy to complete their projects so they get it to 80% and expect the end user to finish the rest.
Do you think that is winning you any adherents? But please, keep proving my claims of linux elitism so blatantly, it makes my job so much easier.
Github is not a software distribution platform, it was never meant to be one. It’s a developer platform for code distribution and collaboration. And UI is designed around that.
A lot of projects use it as a distribution platform, but they’re wrong - it’s always better to have a web page with simple download button for casual “ordinary” people.
But, this case is special: this mostly harmless tool is designed and almost exclusively used to stalk / doxx / hack people =|. So, it’s not in developers interest to make it widely available and easy to install.
You’re full of contradictions. “It’s not a distribution platform it’s another kind of distribution platform.” Nevermind the fact that it has a “releases” feature designed to provide a somewhat easy way to distribute software however the dev wants to use it.
Then “it’s a mostly harmless script designed to commit crimes.” Do you know what harmless means?
Sorry, I meant to write that Github is not a software distribution, but a code distribution platform.
And ‘mostly harmless’ as in it’s not inherently malicious - you can use it for harmless stuff. It’s merely a tool.
Because making proper executables working on all machines is just extra maintenance work. They probably just wanted to code something and share it to the world without that extra headache.
Unless you’re running it very low level code no it’s not.
If it’s anything that is in c++ or java You’re basically making me copy paste your code into a compiler and then pressing compile the end result will be identical to the one you would have given me.
It’s not if you want to compile for Windows, Linux and Mac at the same time, with x86, x64 and ARM support. Cross compiling can often be a big annoyance to set up.
And this is a Python project. Making stand alone executables for Python projects is rare.
I hate when the installation takes like 20 steps. Never heard of an installation script and a interactive installation? I’ve installed far more complex software, that gets this but your shitty programm can’t do it?
And they wonder why nearly nobody uses Linux. In Windows nearly all software comes as an executable. Imagine offering a software under windows, where you need to do the setup manually in a shell.
It’s literally three steps, not 20 you overdramatic cringelord
It’s just downloading the shit, navigate to the shit, run the shit
clone the repo
$ git clone https://github.com/sherlock-project/sherlock.git
change the working directory to sherlock
$ cd sherlock
install the requirements
$ python3 -m pip install -r requirements.txt
If you’re too stupid to handle that then just suffer, for real
Do you kiss your mother with that mouth? I’m not speaking of this project but in general. Other projects where they does this, not this one.
Never heard of an installation script and a interactive installation?
Making an installation script that will work for all, or even most, OSs and processor architectures can be a lot of work. Are you paying the devs to do it?
I’ve installed far more complex software, that gets this but your shitty programm can’t do it?
Because the more complex software is usually run by a bigger team, and has more funding.
In Windows nearly all software comes as an executable.
And that’s a problem, because the devs either have to make multiple versions - one for each OS version, processor architecture, dependency, feature set, etc. - or compromise and make a one size fits none solution. In contrast, if you provide the user the source code, they can ask their machine to compile it for their OS and architecture, including just the parts they want, without taking up unnecessary disk space or memory.
Imagine offering a software under windows, where you need to do the setup manually in a shell.
You mean, like the vast majority of scientific or technological software? A lot of it is written on python too, just like this package.
Making an installation script that will work for all, or even most, OSs and processor architectures can be a lot of work. Are you paying the devs to do it?
I do pay for my software, even when its free, when I like the software and the devs. But if the devs/community think they are something better, then no. I had some where they refused a install script and said something along the lines that if you can’t get it running with the docs, you shouldn’t host the software. Yeah I don’t like such devs. Also when they have enough time to write a documentation, they have enough time to write a script. I even had one project, where the dev refused a correction in the docs, even though it was faulty.
Also you don’t need to write a script for every system. You start with the most used ones. I mean just for testing I would get insane, when I have to repeat some steps over and over. At our company I do write scripts for some things that drive me insane. First I got told, it works this way, this costs too much time to do and it doesn’t sell more software. I just did it and now they thank me for that. Even just an internal tool that I wrote for myself, after I drove insane doing stuff manually, now also customers get.
I don’t speak about software where you pull via git, install some prerequisites and run a script. Not shipping prerequisites can have a legal reason and git pull is just a different way of downloading. It also works to download the tagged source code, instead of cloning but this requires more explanation to less skilled users.
Also with docker I came across some projects where they really butchered it. A docker compose file is my preferred way. I have my file + .env and it works for most containers I come across. It looks clean and feels clean. Running one command for creating a user is a understandable step, to avoid default users.
When you like to hammer in a lot of commands into a shell to install something, do it. I prefer my clean, simple and straight forward install scripts. I don’t need a installation doc that goes over every customization that you can make. I want a setup that works for most users and after that, I can dig around every customization there is, to optimize a software how I want it. Not everything is needed right at start and a default value that most users will use, is enough for the start.
Good thing that there is a ton of software and I can pick the ones where I like their philosophy and support them. That is what I do.
Jesus! Ipad baby script kiddies just sounds like an absolute nightmare!
They, the people like that r*dd!t person, have the technology to look up how to do the thing that’ll probably get them in trouble but are so used to everything being essentially hand fed to them thanks to “smart” phones dumbing everything down that the second they find anything inconvenient, they don’t know what to do or get furious because of their lack of knowledge and start blaming everyone else.
At least that’s what it sounds like to me.