I like how those people are like “this site isn’t for you.”
Do you know how many damn times I’ve seen people say “go to GitHub, they’ll have it.” Or when you want to activate windows 11 for free, you can get a code from GitHub to launch an activator.
Yep, if we want to correctly say that github is for developers, then developers shouldn't make it public for the end user to download it from there, but that's easier said than done
Don't worry people who understand this stuff are just nerds. How do I know? I'm a nerd lol.
For anyone actually interested; GitHub is a tool for developers. It was never meant to be user friendly.
People who give you GitHub links are probably nerds who forgot that most of the users don't know how to use GitHub.
If you want to install an exe there will probably be a "Releases" button, or you can just add "/releases" to the link. Most apps on GitHub have the releases page and there you can select the version that you want and downloaded the exe.
And if the app does not have this page you can try reading the "readme" aka instructions that are under the code. They should tell you there how to install the app.
And if you dont understand what written in the readme, it's probably best to just move on. You can try using AI to help you but I don't recommend it.
Also apologies for the long message I'm not the best at English and explaining as it is my second language. Hope you have a good day!
Hey, you did really well with the English here! I understood everything perfectly and if you hadn't mentioned it was your 2nd language I wouldn't have even known.
In a way a little bit though tbbh, because the right sidebar on Github first shows "about" and then releases, which for most projects looks like this:
But at the same time (and that probably causes confusion), that "releases" section is only available if the developer / creator uploaded any releases. So if that isn't there and no further info shown what to do, best to move on
GitHub is a code management tool, not an app store. Some developers don't know how to distribute software properly and try to use it like an app store without explaining how to use it, but that's not GitHub's fault. This is like saying
I am new to GitHub the grocery store and I have a lot to say
I DONT GIVE A FUCK ABOUT THE FUCKING CODE INGREDIENTS! I just want to download the stupid fucking application and use it order a fucking meal and eat it.
WHY IS THERE CODE ARE THERE RAW INGREDIENTS??? MAKE A FUCKING EXE MEAL AND GIVE IT TO ME. these dumbfucks think everyone is a developer chef and understands code how to cook. Well I am not and don't understand it. I only know how to download and install applications order takeout. SO WHY THE FUCK IS THERE CODE ARE THERE RAW INGREDIENTS?. Make an EXE a meal and give it to me. STUPID FUCKING SMELLY NERDS COOKS
If you look at the GitHub page for that tool… it’s a command line tool and looks like it’s a tool to be used in other applications. This is like going to a trade tool store and asking for fully furnished kitchen.
The majority of the time, it will be in releases on the right. If not, you'll need to compile it from source, which has its own benifits over straight executables both for the developers (who don't have to waste resources compiling the app) and you (able to specify different compile flags and such for better performance on your hardware). Main downside is that sometimes compiling software can take a while, for example a compile of Firefox takes about 20 mins on my main computer (R7 3700X, 64GB DDR4) and its far from the worst example. When compiling software, make sure you have all build dependencies installed.
If you really need a precompiled version of whatever you're trying to install, you can often (but not always) find them in package managers, where someone usually other than the developers have taken the time to build it. For example, apt/pacman/zypper/dnf and more on GNU/Linux, Brew on macOS, or winget on Windows.
I'll be honest, I don't know what much past the first sentence means. If I get directed to GitHub, I just accept that program isn't for me and move on.
Compiling is a process where a software called the 'compiler' will translate the 'source code' or the code written using a programming language into an executable (The .exe files on windows are one kind of executable programs. Different executable formats exist for different Operating systems). Generally they can also be called 'binaries'.
But basically, if your 'compilation' results in an executable, that means your application/game/program or whatever software you were trying to 'compile' in the first place was built successfully.
Now, you can open it and run it.
And, as for the 'waste resources' part. Some (Truthfully, Most) developers who build a piece of software provide direct .exe files that they have compiled on their own machine and distribute that .exe file (or whatever format it comes in for other OSes) for the convenience of the user.
But say, if the developer has written the code on a Mac, and they intend for the program to run on other platforms like Windows, Linux .etc. They wont be able to provide binaries for those platforms, because the executable that they get is Mac specific, and it cannot be run on windows or linux at all. And, same applies for any OS. If it compiles on your platform, it wont run on another platform.
So therefore, if the developer just provided you the source code itself, you have the freedom to 'compile' it and produce an executable for your own platform. (If you are well versed with the development stuff, you could even tweak the code to your liking so that it can behave the way you want. But, take that statement with a generous serving of salt, because there is a LOT to know before you do such things)
And, a few more pieces of advice.
- Compared to a publicly available binary (the .exe files) that the developer distributes, compiling the source code on your own platform is a bit better, because the compiler tailors the program for your PC, to run on your CPU, and use your RAM. Sure, the pre-built binaries also work. But, there will be a marginal difference, as you increase the codebase size and complexity. It's better to compile large software projects because the performance & optimization is better. Think of it as comparing store bought ready-made clothes (pre-built binaries) vs tailored clothes (compiling on your platform)
- If there is software, which isnt readily available as a binary, and instead has installation instructions - the developer expects their users to have some level of knowledge involving the tool. And, following instructions for installation. But, this is not always the case. Very large codebases often require you to compile the code yourself because it could either be very expensive for them to do it for every release, or it's just simpler for the user to compile the codebase because it's simply more efficient for the workflow.
- Also, software vendors provide direct binaries for your platform, because compiling the code on your PC would take too long (Also it's dependent on your PC spec). (Fun fact: Chromium, used in web browsers like google chrome, MS edge, Brave, Opera ... would take over 6 hours to compile on a reasonable PC. And, if you do the debug build - it would result in it eating up over 80+GB of your storage just to to accomodate the output). So, there are cases where pre-built binaries are more logical, and practical.
- And, coming to your 'wasting resources' comment. You could say that just by keeping your computer on, you are 'using resources' i.e. electricity. And, using your web browser, text editor, office programs, or any practical thing you do counts as spending resources. Compiling programs is also a process. Which, generally wont be very resource draining. It'll just need the power of your CPU and RAM for a bit till the compilation is over. After that, it spits out a binary file, and the compiler stops. And, your PC is practically the same.
Compilation takes a few seconds (Depends on the size of the code & your processor and RAM) And, the time increases when you're compiling larger codebases.
I don't know what that means. I don't know any scripting, I don't know any code languages, I don't know how to compile or even use Github aside from where it has a download button to download an EXE.
I think you might have lost touch with what it meant to not know these things.
I think you might have lost touch with what it meant to not know these things.
This is such a real thing for the types of people who code/use Github. I tried looking at Githubs official site tutorial on youtube and its like they can't even hear themselves and are incapable of explaining things in layman terms. A few of my coding friends are that way too when explaining anything and I just don't get it.
When you asked, I thought you'd get a simple ELI5 answer like "the code is the prepared ingredients, compilation is the act of cooking, the .exe is the finished dish" since that suffices as an explanation to a beginner
answering a question regarding technical jargon with more technical jargon in a satirical tone wrapped up into a multi layer joke/poke does not help your average tech-unsavvy guy that just wanted a program but can't find the installer on github
Sincerely, an tech-unsavvy guy that just wanted a program but can't find the installer on github
Also people on Reddit: Geezus you old fucks, it's not that hard, you just download the binary, create boot media, change the UEFI boot priority, boot the live, set the VAR and other items in the installer, and load GRUB. Then change to KDE or whatever, and if it fails, recompile. Then pull down the latest package of Thunderbird and configure your SMTP settings, but be sure to select the right ports and messaging type.
It’s obvious this user is versed in the space but their answer isn’t empathetic to the audience this post is targeted for. If someone doesn’t know how to download software from GitHub, explaining usage using lower level terms probably doesn’t help that audience get past their blocker.
In a nutshell, what this user is getting at is that GitHub is to software what the a farm is to food. Most of the time you buy your food at a grocery store so you don’t have to think about anything other than what food to buy. If for some reason you want to buy the seeds themselves, you take on more risk and gain more control—the seeds could become a better version the fruit you buy at the store because you have more control over, they could make a fruit that gets you sick or (most likely) they simply won’t grow because you didn’t follow the correct steps.
For anyone that doesn’t know how, or doesn’t care to spend time learning how software works, I’d suggest only downloading software from GitHub that is made by a reputable team/company.
As others have said, if this is the case, you can download the latest stable version (LTS: the newest version that doesn’t have breaking bugs), often as a .zip or a .tar using the download button. Then you double click that download to gain access to the Application you can open like any others.
If this exact flow isn’t available (a lot of the software on GitHub doesn’t provide this flow), that suggests you are entering a space that requires more patience to make sure what you do is safe. 99% of the time it’s totally safe to proceed, but there is also a good chance the steps you need to take to get the thing running will be confusing if you haven’t encountered this before. All the same, learning how to use GitHub in this way unlocks all of the “tools of the farm” for you to upskill and experiment.
If you are trying to do something and the thing you are trying to download falls into this second camp, just leave a message below and I/we/someone can explain the level of effort involved.
The problem I have with compilation is that my environment is so polluted with shitass packages from God knows where that it throws random errors in my face that not even SOF knows, like just kill me already
Why don’t they make it obvious? Surely UI design should be simple and it’s not? I’m not asking for neckbeards to comment “skill issue” I am capable of downloading shit from GitHub. It should still be simpler to find the link.
The free software devs don't owe you anything, though. Github was built for them and designed as a pipeline for version control and collaboration for software projects. That's it's primary function, but it also incidentally can be used to host downloads. Which is really helpful when the project is a hobby for you and you've got a whole other job family etc. you don't have to constantly waste valuable time uploading the releases to your project's website or blog, or updating download links. it's just convenient and using it means devs spend more time working on the project and less time fussing with the packaging and delivery.
It's really mainly on the dev to make sure the project's Github page is navigable to non-devs (assuming they're even an audience). Which is why most projects you find out there on the internet have guides on their github pages.
Because it's not a website for you to be looking for software, it's a repository platform meant for devs. Whatever you're interested in from GH either has an end-user alternative with clear download instructions hosted elsewhere or the author is doing it wrong.
Well it has a green tag on it, but that’s not the focus of the page because that’s not the main use for it. A developer should link you directly to releases though rather than the repo’s main page.
When you need a software-level solution for your problem but the person who helps you sent a github link when you're more used to download from cracked software site...
When people will understand that Github (and basically any other git platform) is just a platform that uses git as a version control and isnt made for regular end user? If a maintainer is user friendly enough he will make a "downloadable links" through releases, or write a guide in a README. And if someone points you to a Git(hub), because some obscure software doesn't have a dedicated website, he either expects you to know how it works, or he expects you to use a portion of the brain to navigate/explore the site.
Never. Whenever I tell people on reddit that if reading the readme on github is above their skill level then they should not try to use github they get, lol.
"But the mod I want to use is only on github!!111!". I should keep in mind that I might be talking to 10 years old sometimes.
The catch is that most popular open source software has a page on Github and directs there to download. So average users end up there. But generally, any decently made project has a foolproof extra "download" or "how to install" section further down in the readme that serves as a redundant link for the releases page
I work with servers, so that's the only way that I usually interact with it, so when I'm searching for new software on I get confused searching for download links
Me still today. 90% of the time, I can find the u compiled source. Dude, just give me a downloadable, usable piece of software. If it's a GitHub link, I cringe.
I always considered it a form of gatekeeping. You can never get a straight answer from some of those "knowledgeable" people either when you ask for help with your limited vocab on their expertise.
honestly even as a programmer I agree with this. if there is no release then I'm a little annoyed because I don't want to have to possibly download something to compile it.
and of course if the program wasn't needed then I wouldn't care but if it's my only option to do something (or just the best option) then it's a little annoying
I've had a career going through jobs in various fields, tech being one of them and I still had a problem trying to figure how anything on Github worked. Not the programs but the website itself. Thank you for the post.
GitHub isn't designed to host software. It's designed to host code. So downloading the source code is kind of the only download most devs will need. You can usually find the actual program/installer under Releases on the right side.
864
u/grislyfind Windows 7 Feb 23 '26
Which of the 23 different versions should I use?