| ▲ | nostrademons a day ago | |||||||||||||
Came here to say this. I still think that Linus Torvalds has the most profound advice to building a large, highly successful software system: "Nobody should start to undertake a large project. You start with a small trivial project, and you should never expect it to get large. If you do, you'll just overdesign and generally think it is more important than it likely is at that stage. Or worse, you might be scared away by the sheer size of the work you envision. So start small, and think about the details. Don't think about some big picture and fancy design. If it doesn't solve some fairly immediate need, it's almost certainly over-designed. And don't expect people to jump in and help you. That's not how these things work. You need to get something half-way useful first, and then others will say "hey, that almost works for me", and they'll get involved in the project." -- Linux Times, October 2004. | ||||||||||||||
| ▲ | tsimionescu 21 hours ago | parent | next [-] | |||||||||||||
I don't think this applies in any way to companies contracted to build a massive system for a government with a clear need. Linus is talking about growing a greenfield open-source project, which may or may not ever be used by anyone. In contrast, if your purpose is "we need to manage our country's accounting without pen and paper", that's a clear need for a massive system. Starting work on this by designing a system that can solve accounting for a small firm is not the right way to go. Instead, you have to design with the end-goal in mind, since that's what you were paid for. But, you don't launch your system to the entire country at once: you first use this system designed for a country in a small shop, to make sure it actually handles the small scale well, before gradually rolling out to more and more people. | ||||||||||||||
| ||||||||||||||
| ▲ | ozim 20 hours ago | parent | prev | next [-] | |||||||||||||
No Linus Torvalds would stand against people in projects from article, he would slam the door and quit. Those projects that author pointed out are basically political horror stories. I can imagine how dozens of people wanted to have a cut on money in those projects or wanted to push things because “they are important people”. There is nothing you can do technically to save such projects and it is NOT an IT failure. | ||||||||||||||
| ▲ | nly 19 hours ago | parent | prev | next [-] | |||||||||||||
Works with implementations and not APIs though. A bad API can constrain your implementation and often can't be changed once it's in use by loads of users. APIs should be right from day one if possible. | ||||||||||||||
| ||||||||||||||
| ▲ | ambicapter a day ago | parent | prev [-] | |||||||||||||
This is a really dense paragraph of lifetime-accumulated wisdom in that single quote. | ||||||||||||||