4 ms·
> Lol if everyone did open source like Linus We'd have less, but much better software.
by gnaritas 11y ago
> Lol if everyone did open source like Linus
We'd have less, but much better software.
- kalail 11y agoTHIS For an opposing example, look at the world of JavaScript.
- moron4hire 11y agoPeople have really only been doing JavaScript in earnest for the last 7 years. When you consider that, and how terrible the base language actually is, I think it's pretty amazing what people have done with it.
- edejong 11y agoI started writing AJAX callbacks in 2004, and I'm sure I wasn't alone, so 11 years of higher-level JS is certainly a better range. But we should abstract away from the language. We've had 35+ years of experience of designing and implementing user interfaces, including their design patterns (MVC, Action/Event based). History is filled with successful designs. Just consider a sophisticated tool such as your standard IDE: do/undo functionality, separation of concerns, event based, MVC, good standard graphical toolkit, easy deployment and upgrades. These designs are not new, and date back to at least the late 90's (Delphi). What changed? Well, we've been doing incremental design: throw something at the wall, see what sticks and debug the hell out of it while adding new features. Perhaps that design philosophy is not very tenable in the long run.
- this_user 11y agoWould we? Your statement implies that creating the kind of environment Linux is developed in somehow weeds out the bad developers while retaining the good ones. Yet, I am not aware of any data that would suggests a positive correlation between development abilities and resilience towards a hostile work environment. Therefore, we can assume that good contributors, too, will be put off, thereby making the project worse than it could be. The best example of this is Alan Cox who did a lot of good work before leaving the Kernel project. I don't think anyone would argue that his exit made the project stronger.
- deleted 11y ago[deleted]
- vezzy-fnord 11y agoI didn't know the better the software, the more primitive the development tools.
- venomsnake 11y agoVoyager still works superbly. Unlike my just completed reactive js mvp single page framework ridden app. Making good software is hard. Step by step debugger is not suitable for a lot of tasks - not least because it tends to fix some bugs like memory initialization and race conditions. What can save your ass is automatic formal verification and static analysis. And not using C/C++ creatively.
- vezzy-fnord 11y agoWhat can save your ass is automatic formal verification and static analysis. That's hardly what I'd rate as "primitive". That a lot of people carelessly throw together CRUD apps does not contradict what I'm saying. In fact, I'd say most CRUD app development is highly primitive, notwithstanding the complexity of the web platform itself. Debuggers do tend to sometimes to mask heisenbugs, but this goes the same for just about any tool performing intricate binary analysis. And there's some subtle timing bugs where it's a fact of life that you'll get misleading readings.
- gnaritas 11y agoA debugger is a thinking crutch, yes, it's easier and more productive to just see what it's doing; but to fix something without a debugger, you have to understand it better. That's his point, and he's right. Quite simply, the easier you make something, the more people who are less intelligent can do it and the result is more but less quality software. Examples abound, but every attempt to make something easier results is people producing more shitty stuff with pointy clicky interfaces.
- vezzy-fnord 11y agoAgain, this would require us to reject most advances in software after 1968 if we are to apply the logic consistently. Go back to single-tasking, cooperatively multithreaded systems with static file allocation tables and no access control. Actually even the Multics of 1968 was far more advanced than that. Fact is, without debuggers, most highly subtle war story bugs would go unsolved. Logic analyzers, tracers and ICEs are debuggers, too. "Debugger" doesn't just mean gdb. Not that there's anything wrong with it.
- mwcampbell 11y agoHaving less software isn't an actual option though. The world demands both more and better software. So we should take advantage of the best available tools to produce it. Yes, those tools make it easier to write crappy software, but when used well, they also make it easier to write great software. Put another way, an uber-developer who could write a good program in asm with no debugger could write an even better program, or more programs, in a higher-level language with a debugger and strong static analysis. So if these tools are available, working without them is just misguided masochism.
- gnaritas 11y agoI agree, I wasn't saying I'd prefer it the other way, only stating what I thought the consequences would be.