The greatest debate of our time

3 years ago by Gork to c/linuxmemes

glibg10b 121 points 3 years ago

You seem to like the lines-of-code metric. There are many lines of GNU code in a typical Linux distribution. You seem to suggest that (more LOC) == (more important). However, I submit to you that raw LOC numbers do not directly correlate with importance. I would suggest that clock cycles spent on code is a better metric. For example, if my system spends 90% of its time executing XFree86 code, XFree86 is probably the single most important collection of code on my system. Even if I loaded ten times as many lines of useless bloatware on my system and I never excuted that bloatware, it certainly isn't more important code than XFree86. Obviously, this metric isn't perfect either, but LOC really, really sucks. Please refrain from using it ever again in supporting any argument.

path: 0 2395636, hotness: undefined, score: 121, children: 19
rikudou 68 points 3 years ago

Can confirm it's a shitty metric. I once saved the company I was working at few millions by changing one line of code. And it took 3 days to find it. And it was only 3 characters changed.

path: 0 2395636 2395836, hotness: undefined, score: 68, children: 8
agressivelyPassive 28 points 3 years ago

That's the curse and blessing of our profession: efficiency of work is almost impossible to measure once you go beyond very simple code.

You can feel like a hero for changing three characters and finally fixing that nasty, or you can feel like an absolute disgrace for needing days to find such a simple fix. Your manager employs the same duality of judgement

path: 0 2395636 2395836 2397135, hotness: undefined, score: 28, children: 3
rikudou 15 points 3 years ago

I feel like a hero in this particular case, it was a bug in a code that was written when I was still too young to even read. And no one knew how to run it. We didn't have access to the pipelines so no one knew how to build it and how to run it. It was a very obscure hybrid of C and PHP. I basically had to be the compiler, I went line by line through the whole codebase, searching for the code path that caused the error. Sounds easy enough, right? Just CTRL+click in your IDE. Wouldn't it be a shame if someone decided that function names should be constructed as a string using at least 20 levels of nesting where each layer adda something to the function name and then it's finally called. TL;DR it was a very shitty code.

path: 0 2395636 2395836 2397135 2400173, hotness: undefined, score: 15, children: 2
Sanctus 9 points 3 years ago

What the fuck. I'm so appalled I had to leave this useless comment to digitally stare with an agape mouth.

path: 0 2395636 2395836 2397135 2400173 2401573, hotness: undefined, score: 9, children: 1
Gork 16 points 3 years ago

But did you add 3 characters? Gotta bump up that code count bruh.

path: 0 2395636 2395836 2396369, hotness: undefined, score: 16, children: 2
rikudou 15 points 3 years ago

Nope, removed 3, added 1.

path: 0 2395636 2395836 2396369 2396427, hotness: undefined, score: 15, children: 1
rockSlayer 11 points 3 years ago

-2 on your paycheck!

path: 0 2395636 2395836 2396369 2396427 2397938, hotness: undefined, score: 11, children: 0
JaymesRS 15 points 3 years ago path: 0 2395636 2395836 2398536, hotness: undefined, score: 15, children: 0
stylist_trend 22 points 3 years ago

I wrote a program that does nothing but busy loop on all cores. stylist_trend/Linux is my favourite OS.

path: 0 2395636 2398578, hotness: undefined, score: 22, children: 3
affiliate 8 points 3 years ago

i’m partial to the more relaxing sleep(500)/linux os, but to each their own

path: 0 2395636 2398578 2399717, hotness: undefined, score: 8, children: 2
anton 4 points 3 years ago

Any good sleep will give back control to other threads.

path: 0 2395636 2398578 2399717 2415647, hotness: undefined, score: 4, children: 1
affiliate 8 points 3 years ago

that’s why sleep(500)/linux uses bad sleep

path: 0 2395636 2398578 2399717 2415647 2417891, hotness: undefined, score: 8, children: 0
starman 12 points 3 years ago

Then this: :(){ :|:& };: is most important code in existence.

path: 0 2395636 2397159, hotness: undefined, score: 12, children: 1
stylist_trend 15 points 3 years ago

What you refer to as Linux, is actually called Forkbomb/Linux, or as I've recently taken to calli-[Process Killed]

path: 0 2395636 2397159 2398652, hotness: undefined, score: 15, children: 0
bob_wiley 9 points 3 years ago
path: 0 2395636 2397170, hotness: undefined, score: 9, children: 1
Zacryon 3 points 3 years ago

Yes. Also the required clock cycles depends a lot on individual CPU architectures.

For example division: Some CPUs have hardwired logic to compute the division operation directly on circuit level. Others are basically running a for loop with substraction. The difference in required clock cycles for a division operation can then be huge.

Another example: is it a scalar or superscalar CPU?

A rather obvious example: the bit width of the CPU. 32 bit systems compute 64 bit data much more inefficiently than 64 bit systems.

Then there is other stuff like branch prediction, or system dependencies like memory bus width and clock, cache size and associativity etc. etc..

Long story short: When evaluating the performance of code, multiple performance metrics have to be considered simultaneously and prioritized according to the development goals.

Lines of code is usually a veeery bad metric. (I sometimes spend hours just to write a few lines of code. But those are good ones then.) Cycles per code segment is better, but also not good (except you are developing for a very specific target system). Do benchmarking, profiling, run it on different systems and maybe design individual performance metrics based on your expectations.

path: 0 2395636 2397170 2410920, hotness: undefined, score: 3, children: 0
nookiena 4 points 3 years ago
path: 0 2395636 2395700, hotness: undefined, score: 4, children: 0
monk 3 points 3 years ago

No, he doesn't. He suggests that there are Linux systems with no GNU code, like one I'm replying from, and whether "no" meant "no SLOC" or "no instructions spent executing" or "no packages" absolutely doesn't matter.

path: 0 2395636 2403247, hotness: undefined, score: 3, children: 0
style99 60 points 3 years ago

Ubuntu: "Linux"
Fedora: "Linux"
Arch: "Linux"
Gentoo: "Linux"
Slackware: "Linux"
Debian: "Free Operating System"

path: 0 2395786, hotness: undefined, score: 60, children: 5
Emma_Gold_Man 63 points 3 years ago path: 0 2395786 2397579, hotness: undefined, score: 63, children: 0
wildbus8979 17 points 3 years ago

Debian: "Libre Operating System"

FTFY

path: 0 2395786 2395944, hotness: undefined, score: 17, children: 3
squaresinger 6 points 3 years ago

Lifree

path: 0 2395786 2395944 2395966, hotness: undefined, score: 6, children: 2
jadegear 3 points 3 years ago

Freebre?

path: 0 2395786 2395944 2395966 2440175, hotness: undefined, score: 3, children: 1
ObviouslyNotBanana 1 point 3 years ago

Bruh

path: 0 2395786 2395944 2395966 2440175 2757192, hotness: undefined, score: 1, children: 0
SnowdenHeroOfOurTime 55 points 3 years ago

Been running a Linux based os for coming up on two years. I still definitely do not care about this.

path: 0 2399632, hotness: undefined, score: 55, children: 1
Ddhuud 34 points 3 years ago

Been running a Linux based os for coming up on twenty years. I still definitely do not care about this.

path: 0 2399632 2403197, hotness: undefined, score: 34, children: 0
Hallainzil 42 points 3 years ago

path: 0 2418396, hotness: undefined, score: 42, children: 0
traches 39 points 3 years ago

But the compiler is GNU!


If you compile windows with GCC is it gnu/windows?

path: 0 2402911, hotness: undefined, score: 39, children: 0
rikudou 28 points 3 years ago

So, how's Hurd doing these days? If they want their own operating system, maybe they should release version 1.0 of their kernel.

path: 0 2395891, hotness: undefined, score: 28, children: 0
Jerrimu2 25 points 3 years ago

There are distros without GNU, like alpine.

path: 0 2399163, hotness: undefined, score: 25, children: 1
Spw 1 point 3 years ago
path: 0 2399163 2416008, hotness: undefined, score: 1, children: 0
dcat 22 points 3 years ago path: 0 2395374, hotness: undefined, score: 22, children: 7
nookiena 10 points 3 years ago
path: 0 2395374 2395679, hotness: undefined, score: 10, children: 4
ziggurism 9 points 3 years ago

It shows that Unix’s implementation of echo uses 10 lines of code, other *nixen use 60 to 100, and gnu uses 250. The implication being, I suppose, that GNU has such a high line of code count because it’s very verbose or padded

path: 0 2395374 2395679 2399156, hotness: undefined, score: 9, children: 1
mexicancartel 4 points 3 years ago

Not only comments and padding, but also features/flags/options in GNU echo

path: 0 2395374 2395679 2399156 2408091, hotness: undefined, score: 4, children: 0
nottheengineer 8 points 3 years ago

Implementation is the actual code with the logic that does the thing you want it do, as opposed to the command, which is how you tell the system what it should do.

The command can be the same on multiple OSs, but the implementation can be different.

In case of Linux and the coreutils (which are the basic programs you need beside the kernel to make a functioning system, stuff like mkdir) the most common implementation of all the coreutils is the one made by GNU. Stallmann did a lot of work on that so he wants credit for making a big part of the OS.

path: 0 2395374 2395679 2396426, hotness: undefined, score: 8, children: 0
rikudou 4 points 3 years ago

The same program (echo) implemented in different operating systems (and the GNU version).

path: 0 2395374 2395679 2395791, hotness: undefined, score: 4, children: 0
rikudou 5 points 3 years ago

Well, no surprise they have more lines of code. And that's even if you disregard printing help.

path: 0 2395374 2395754, hotness: undefined, score: 5, children: 0
squaresinger 4 points 3 years ago

That's how they get more lines of code.

path: 0 2395374 2395948, hotness: undefined, score: 4, children: 0
tired_n_bored 20 points 3 years ago

I honestly never cared about this, it's the first time I write something about that, but any Linux-based OS is made of countless different software. What limits the number of names to two? Why can't I call my OS OpenVPN/Gnu/Linux, then why not Wayland/OpenVPN/Gnu/Linux? That would be crazy. A single recognizable name is what makes it.

Furthermore by definition an operating system is an interface between userspace applications to the hardware, hence the operating system should be just Linux.

Not shitting on GNU at all, but this push for calling the OS Gnu/Linux seems futile

path: 0 2414832, hotness: undefined, score: 20, children: 6
Faresh 6 points 3 years ago

Furthermore by definition an operating system is an interface between userspace applications to the hardware, hence the operating system should be just Linux.

It gets more complicated with microkernels, though because you literally can't run anything without some important processes running in userspace.

path: 0 2414832 2417343, hotness: undefined, score: 6, children: 1
tired_n_bored 3 points 3 years ago

That's a good point, thank you for your time

path: 0 2414832 2417343 2418204, hotness: undefined, score: 3, children: 0
elxeno 5 points 3 years ago

SystemD/Linux

path: 0 2414832 2446987, hotness: undefined, score: 5, children: 0
mexicancartel 1 point 3 years ago

I call GNU

path: 0 2414832 2417854, hotness: undefined, score: 1, children: 2
tired_n_bored 3 points 3 years ago

I mean I don't think there must be a heated debate about it you know. You can call it GNU because you probably value more GNU, some others call it GNU/Linux and some Linux. It's okay as long as it's understandable

path: 0 2414832 2417854 2418227, hotness: undefined, score: 3, children: 1
mexicancartel 2 points 3 years ago

True

path: 0 2414832 2417854 2418227 2421765, hotness: undefined, score: 2, children: 0
collegefurtrader 14 points 3 years ago

This is why Windows users don’t switch.

path: 0 2403529, hotness: undefined, score: 14, children: 9
ShustOne 12 points 3 years ago

I used Linux for many years, I still run it for my personal projects. I'm sure it's not everyone but damn the community is toxic as hell to newbies. If something doesn't work it's your fault. Don't know what flatpak is? You're an idiot. How do I use X? Don't use X it sucks but also I won't provide alternatives. Linux just works now open up terminal and type these flags to mount your external drive correctly so other programs can see it.

I love the power and customization but it's a confusing world at times with unhelpful people.

path: 0 2403529 2411151, hotness: undefined, score: 12, children: 5
Anafabula 4 points 3 years ago path: 0 2403529 2411151 2414591, hotness: undefined, score: 4, children: 1
ShustOne 2 points 3 years ago

X in my post was meant to mean anything, as in unknown. But I see the confusion in regards to the window manager haha

path: 0 2403529 2411151 2414591 2432007, hotness: undefined, score: 2, children: 0
smackjack 1 point 3 years ago

If you're asking how to do something, and most of the responses are "why would you want to do that?" It means you can't do it.

path: 0 2403529 2411151 2412944, hotness: undefined, score: 1, children: 1
ShustOne 3 points 3 years ago

So instead of "why would you want to do that" they can say "you can't do that and here's why but you can do this"

path: 0 2403529 2411151 2412944 2431927, hotness: undefined, score: 3, children: 0
Crashumbc 1 point 3 years ago

This has been pretty much my experience with every time I've gotten the "Linux" itch...

It's so bad that most of the time googling doesn't help because the top twenty results are just someone else getting shit on for asking the same question.

path: 0 2403529 2411151 2434738, hotness: undefined, score: 1, children: 0
Default_Defect 8 points 3 years ago

Some guy got mad at me for referring to linux as GNU/Linux in a post clearly making fun of him for being a huge shit head to someone earnestly trying to do something on Linux and failing. Never address any of the criticisms, just called me an idiot and a liar. SOME linux users are their own worst enemy if they want wider adoption.

path: 0 2403529 2409034, hotness: undefined, score: 8, children: 2
Aqarius 4 points 3 years ago

I once asked for a clarification on a tutorial I found, and the only reply I got was berating me for trying to use systemd.

path: 0 2403529 2409034 2410454, hotness: undefined, score: 4, children: 1
Default_Defect 5 points 3 years ago

No! No clarification, you must already know how it works.

path: 0 2403529 2409034 2410454 2410768, hotness: undefined, score: 5, children: 0
SaltyIceteaMaker 12 points 3 years ago

holds up linux os without gnu software WHATS THIS THEN HUH?!

path: 0 2412653, hotness: undefined, score: 12, children: 2
Kirbo 16 points 3 years ago

Gnun't/Linux

path: 0 2412653 2416927, hotness: undefined, score: 16, children: 1
merthyr1831 3 points 3 years ago

GNL (GNU isn't Linux) / Linux

path: 0 2412653 2416927 2416981, hotness: undefined, score: 3, children: 0
pineapplelover 12 points 3 years ago

Gnu+Linux+Arch+KDE

path: 0 2402249, hotness: undefined, score: 12, children: 4
WhoRoger 5 points 3 years ago

Cuz like, GNU was the thing before Linux, so I'd say that's pretty important.

path: 0 2402249 2402839, hotness: undefined, score: 5, children: 3
mexicancartel 3 points 3 years ago

So say GNU instead of GNU linux kek

path: 0 2402249 2402839 2408144, hotness: undefined, score: 3, children: 2
WhoRoger 2 points 3 years ago

Why? Both parts of GNU/Linux are important. Open source is all about collaboration. It doesn't need to conform to the neat capitalist OS ideas with one monolithic corporate creator and one user-friendly name.

path: 0 2402249 2402839 2408144 2413988, hotness: undefined, score: 2, children: 1
mexicancartel 1 point 3 years ago

Some people call just linux so.... Also GNU is easier to say than GNU/Linux right? Thats the same argument made by people who say just "linux".

Open source is all about collaboration

Free software is all about freedom. Nothing wrong with any of them tho

path: 0 2402249 2402839 2408144 2413988 2417742, hotness: undefined, score: 1, children: 0
AlmightySnoo 12 points 3 years ago

busybox, musl and llvm enter the room

path: 0 2396405, hotness: undefined, score: 12, children: 0
hellfire103 9 points 3 years ago

Take a look at Alpine, Void, and (most importantly) Chimera Linux.

path: 0 2396598, hotness: undefined, score: 9, children: 0
lasagna 7 points 3 years ago

I thought it was arch?

path: 0 2400166, hotness: undefined, score: 7, children: 3
Speiser0 24 points 3 years ago

I use arch/linux, btw.

As a german I also use Arsch, btw., for sitting.

path: 0 2400166 2401069, hotness: undefined, score: 24, children: 2
lasagna 4 points 3 years ago

Arch/linux = 0.5 or so right

path: 0 2400166 2401069 2401200, hotness: undefined, score: 4, children: 1
rikudou 3 points 3 years ago

More like 32.33, repeating of course.

path: 0 2400166 2401069 2401200 2403691, hotness: undefined, score: 3, children: 0
Whisper06 6 points 3 years ago

So GNU I’d just bloat /s

path: 0 2398226, hotness: undefined, score: 6, children: 0
dukk 6 points 3 years ago

Alpine Linux: what’s up, guys?

path: 0 2419445, hotness: undefined, score: 6, children: 0
jsnc 6 points 3 years ago

The shortest proper name is GNU.

Inb4 Alpine, which is just called "Linux" internally.

People use terrible words in CS and engineering in general. Doesn't mean we don't challenge them.

path: 0 2396143, hotness: undefined, score: 6, children: 19
rikudou 16 points 3 years ago

I mean, GNU wants to be called an operating system but it can't talk to hardware.

path: 0 2396143 2396496, hotness: undefined, score: 16, children: 18
starman 10 points 3 years ago

Linux want to be called an operating system but it's a kernel.

if only there was a way to combine these two...

path: 0 2396143 2396496 2397288, hotness: undefined, score: 10, children: 2
Gork 12 points 3 years ago

With a / obviously

path: 0 2396143 2396496 2397288 2399145, hotness: undefined, score: 12, children: 1
affiliate 2 points 3 years ago path: 0 2396143 2396496 2397288 2399145 2399977, hotness: undefined, score: 2, children: 0
jsnc 1 point 3 years ago

And hardware can't talk to it. Has it ever occurred to you that there's more at stake here? That companies feel the need to lock away hardware in order to drive their profit line.

At least GNU has something interesting to say about computer science. And for what it's worth, it's telling to know that you woild rather disparage GNU rather than the purposeful decisions made by executives and manufactuers to render both hardware and software undocumented and subjugating.

But no! That's "unfixable" and we need to learn how to "deal with it." God forbid anyone makes a ruckus about it. Freedom for me but not for thee in this fast paced economy.

You picked the status quo and are now complaining that people reject the status quo.

path: 0 2396143 2396496 2397261, hotness: undefined, score: 1, children: 14
rikudou 9 points 3 years ago

I feel like you misunderstood. Operating system has many functions, one of the most important ones is talking to hardware. GNU cannot do that because that's the kernel's job. And the kernel is Linux. So they claim they're an operating system but can't do the most fundamental thing an operating system needs to do.

path: 0 2396143 2396496 2397261 2400237, hotness: undefined, score: 9, children: 13
rambaroo 1 point 3 years ago

Well by that token Linux can't claim to be an OS either, since as your own comment mentions it only performs one function of an OS. It's important that it can talk to hardware but it's not an OS if it can't do anything else.

path: 0 2396143 2396496 2397261 2400237 2417386, hotness: undefined, score: 1, children: 1
jsnc -1 points 3 years ago

What? GNU has a kernel, it's called Linux!

path: 0 2396143 2396496 2397261 2400237 2403682, hotness: undefined, score: -1, children: 10
monk 5 points 3 years ago

Does GNU userspace even make the top-3 Linux userspaces?

path: 0 2403314, hotness: undefined, score: 5, children: 0
grue 5 points 3 years ago

throws chair "Fine, it's just GNU then!"

path: 0 2411209, hotness: undefined, score: 5, children: 0
Xelnoc 4 points 3 years ago

Just say linux, the 'gnu + ' is a given

path: 0 2430869, hotness: undefined, score: 4, children: 0
ricdeh 3 points 3 years ago

So much corporate bootlicking in this thread. People don't seem to know what GNU and Linux actually stand for and the importance of the free software movement, all they see is a fancy Windows alternative where they can run the same stupid proprietary programs and in the end contribute to the loss of software freedom just as much as a useless Microsoft consumer. People here are even openly hostile to GNU despite it being possibly the most important component in ensuring that free software remains free. I feel like our operating systems are being hijacked by little children with no responsibility for which GNU/Linux only serves mundane, corporately induced needs, and they don't see the political and idealistic dimension at all.

path: 0 2411324, hotness: undefined, score: 3, children: 0
isthismanas 3 points 3 years ago

More like GN vs Linus

path: 0 2418522, hotness: undefined, score: 3, children: 0
chemicalwonka 3 points 3 years ago

I'd like to interject for a moment........ STALLMAN, Richard

path: 0 2401895, hotness: undefined, score: 3, children: 0
spaceshuttlee 2 points 3 years ago
path: 0 2444535, hotness: undefined, score: 2, children: 0
dan 1 point 3 years ago

It's just GNU 🤷

path: 0 2843069, hotness: undefined, score: 1, children: 0
gamey 1 point 3 years ago

PostmarketOS anyone?

path: 0 2424956, hotness: undefined, score: 1, children: 0
Presi300 1 point 3 years ago
path: 0 2429647, hotness: undefined, score: 1, children: 0
HellAwaits -1 points 3 years ago
path: 0 2425404, hotness: undefined, score: -1, children: 0
linuxmemes
linuxmemes

@lemmy.world

login for more options
33067
2389
6292

Hint: :q!


Sister communities:

Community rules (click to expand)

1. Follow the site-wide rules
2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry of any kind will not be tolerated. This is an LGBTQ+-friendly community -- if that is a problem for you, you should leave.
3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn, no politics, no trolling or ragebaiting.
  • Don't come looking for advice, this is not the right community.
4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves / tolerates / hates> systemd, and wants to interject for a moment. You can stop now.
5. 🇬🇧 Language/язык/Sprache
  • This is primarily an English-speaking community. 🇬🇧🇦🇺🇺🇸
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
6. (NEW!) Regarding public figures

We all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.

  • Keep discussions polite and free of disparagement.
  • We are never in possession of all of the facts. Defamatory comments will not be tolerated.
  • Discussions that get too heated will be locked and offending comments removed.

 

Please report posts and comments that break these rules!


Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

go to feed...