42 comments

34

The way this man talks makes me so happy. No bullshit. Calling people out on there idiocies. Fuck, I love him because I am like him. I love myself. That's cool; I'm cool with this.

11

Just like improvements on games, holy shit. So many bugs. It gets to a point where you ask, 'did they even test this?'

3

Stop it, you're making the programmers at Bethesda sad.

1

I wish I was like him :/

0

Trivially obvious improvements are totally cool, just not buggy ones.

If its so obvious that tons of people think of it, and think it will be an improvement, then it should be implemented.

0

It is so sad that these days calling people out on their bull**** is "offensive". If you want to succeed your first priority has to be to what is true. You need honesty and rigor, and people need to stop taking offense as if it amounts to something.

13

This is why I got fed up with software development. It's shit. Everything is shit. No one write fail-safe code because "it's hard".

People should be ashamed of publicly pushing such ugly code ffs.

10

No one write fail-safe code because "it's hard".

It actually is hard. No need for quotes.

A former colleague of mine always asked me why I wrote code that failed so eagerly. Why didn't I write code that handled errors like him? Well, I found his manner of error handling likely to cause more problems in the long run. Often, it could allow code to continue running after recovering from an error. But I always worried that the internal state of the program would be changed in unexpected ways, causing unexpected results. I prefer to bring the whole system down than catch() an unknown exception and just keep running, potentially hiding a real problem.

That guy was in the habit of writing SafeSomething() methods that did the same as Something(), but he claimed they would never cause a system to fail. In fact, he was so confident, that he bet me a free lunch for every way I could find to make an application crash originate inside of those functions.

I got a few lunches out of it. There are a lot of ways to crash an application beyond regular out of bounds and null reference exceptions. Heap overflows, stack overflows, and all manner of other nastiness can strike too. It's seriously difficult to write a system that continues to operate under any circumstances. That's the domain of NASA and pacemakers.

2

The quotes were ambiguous. I didn't mean that they were wrong in saying that "it's hard" but simply that it's not a reason to give up on beautiful, resilient, and performant code. And that is especially true when you are writing low level functions that work on strings and such. I'm not talking about complex systems that "just need to work" because you're in a corporate environment (those are usually closed source spaghetti heaps of trashable code that nobody cares about. They're the opposite of open source contributions to Linux...).

7

Wouldn't it be nice if more people actually had an interest in finding the issue and fixing it? It's unfortunate that in most cases it's, "Not in the budget." to debug code regularly. That's for company situations though.. Open source stuff you'd hope that competent dedicated people would have the drive and enthusiasm in what they were working on to not half-ass it and skim over things.

5

The reason why Linux fails to deliver us not enough consistency in their applications and low quality because people are not interested to fix bugs that are not visually rewarding. Instead of creating yet another fork, go into the code and fix the original fork instead.

10

Except this happens in lots of software. Including Windows

0

wat

1

im kind of a newb in this, but how big is this visual reward you are speaking of. Like do they get some sort of a tag that this and this created some fork, does something similar exist if one improves already existing fork?

2

Most Linux application I have seen appear to be designed by nerds for the nerds. It is rarely designed for the none-nerd user, but most of the time a mismatch of different styles put together with tape. So far when I see forks being created is because they add new features and do not fix bugs that were in the old fork itself.

1

Most Linux application I have seen appear to be designed by nerds for the nerds.

Because that's exactly how they start out a lot of the time. Someone needs some tool for something, thinks "hey people might like this," and posts the source on GitHub or something.

So far when I see forks being created is because they add new features and do not fix bugs that were in the old fork itself.

I might be wrong about this, but wouldn't that be because they rely on the "upstream" project to be fixing the bugs and then just porting those fixes to the fork?

0

But good developers don't expect others to fix their bugs. I mean if you start a project, at least do the effort to create quality code to the very end. You can't call yourself a good developer if you leave half developed mess around.

Also good developers create code for the none-nerd. It is designed for ease of use, not massive functionality that is half implemented. The interesting things is that when you develop for the none-nerd, you create way better code, because it is easier to use, easier to understand, easier to test and debug and way more compact.

2

Visual reward as in someone notices their changes, or it has some cascading effect on the development or community. Nobody wants to fix the obscure bug that effects 5 people.

7

Linux is a kernel. The OS takes its name from that. Linus doesn't do every distro magically with a wand, he oversees kernel development. The kernel is used by all the distros.

So I think you'll need to be a little more specific about your vague view of "consistency in applications". Remember each application is often its own whole team, not related to Linus in any way.

-1

It's true. and Linus has only even signed off on 2% (at most) of any one update in the last few years. These day's he really only oversee's the general direction Linux will be taking not the actual changes, and he is doing almost not original code work.

 

He's really just a glorified cheerleader now, and yes he is abrasive but in his position it is required.

0

He is the manager.

0

more of a figurehead really. He's the public face of the Linux kernel, but has been stepping back from the actual coding for years. If you want a good rundown of Linus Torvalds and Linux in general the i suggest Rebel Code. It's a really good book.

3

Decided to tag this as "Off Topic" and not "Linux" because it's not really about linux as it is about good ol' Linus. Other mods or OP, feel free to disagree and change it.

1

Seems reasonable to me.

3

If you like that, read this one on one of the main systemd developers-> http://www.theregister.co.uk/2014/04/05/torvalds_sievers_dust_up/

Imho, the systemd team are a bunch of arrogant f@ckwads who deserve the flack. Eventually they may make better code later in their career, but the world shouldn't be using their code right now.

0

Does the kernel have unit tests or any other type of tests that could easily spot these types of bugs?

-5

i don't get why he does not release an "official" Linux OS and sell it for profit. More people would likely use Linux if it weren't seen as some hobbyist product.

8

Linus oversees kernel. He's software.
Integrating a distro is systems. It's different in literally every way.

Linux is used massively. It's trusted by the government, by big companies, by all professionals, by foreign governments, by most militaries. It's ubiquitous. It is seen as a "hobbyist product" by fucking NO ONE.

Just because you can't pick which distro to download doesn't mean Linus needs to change professions. Here lemme help: roll 1d10 and consult:
http://www.howtogeek.com/191207/10-of-the-most-popular-linux-distributions-compared/

3

It's also used in almost all supercomputers

3

like so many users, parent poster can't see beyond home desktops and office workstations. Fails to realize most of the internet is running on linux.

1

If you would rather buy an 'official' distro the just get Red Hat Enterprise Linux. It's as official as you can get.

1

Android is an official Linux OS.