4 ms·
I've worked in the industry as a developer for 12 years and I can't remember any. I do remember a competitor dying of not releasing their big refactored next v
by joss82 10y ago
I've worked in the industry as a developer for 12 years and I can't remember any.
I do remember a competitor dying of not releasing their big refactored next version soon enough, and running out of cash.
Spolski tells it better than me:
https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/ https://www.joelonsoftware.com/2000/04/06/things-you-should-...
- digi_owl 10y agoDear deity, why do that read like the development history of everything Linux bar the kernel itself?!
- Clubber 10y agoSpolsky should be required reading in software development classes. I wish he had time to keep it up.
- isxek 10y agoI can't remember which podcast episode it was, but I do remember him mentioning a professor in South Korea had once told him he was using his blog posts for his CS classes.
- throwaway99911 10y agoThe Firefox rewrite was a success by all measures. Spolsky is wrong on this one, at least with the claims of generality.
- digi_owl 10y agoThen again Firefox was itself a strip down of a rewritten Netscape suite. Stripped down in that the suite included not just a browser but also a email client, IRC client and a HTML editor, and the UI was done using JS and XUL markup. What Firefox devs did was to take the browser part, make it stand alone, and replace much of the XUL UI with native widgets (GTK on _nix).
- randall 10y agoExcept for one measure: Netscape died as a company. The huge rewrite contributed to killing it. If you don't ship a product (for like 4-6 years?) you're gonna die. Mozilla originally chose the name phoenix, (then firebird to avoid trademark problems, then finally firefox) was chosen because it was a phoenix rising from Netscape's ashes. Its major innovation: It was 'blazing fast' when compared to ie 5.5 / 6. Tabbed browsing was also pretty cool. You can learn a lot of lessons from Netscape, but this isn't one of them. Servo is a great example of how a rewrite should / can work. Mozilla hasn't devoted 100% of resources to Servo, but instead is letting servo build all on its own, and someday unclearly defined in the future, the two could merge. (but might not!) It's a separate product, and nobody is pinning all their hopes and dreams on it.
- Fnoord 10y agoI remember how long it took to release a stable version of Mozilla and Mozilla Phoenix. In the meantime, had to recompile newer releases all the time manually. There was no alternative browser on Linux or *NIX for that matter (OK, macOS still had MSIE). The successor of Netscape Communicator was Mozilla (IIRC it was just called that, later renamed Mozilla SeaMonkey), and the successor of Netscape Navigator was Mozilla Phoenix (later renamed Mozilla Firebird and eventually Mozilla Firefox). Firefox and Thunderbird were once again separate clients. Mozilla was still considered bloated, but Phoenix was far less bloated which is nice on lower RAM machines, and allowed the start of Web 2.0. It was also the return of doing one thing and doing it right: browsing the WWW. As Netscape Communicator (unlike its predecessor, Netscape Navigator) came with a Usenet client and e-mail client. Later in development, addons became a thing, and you could add features which were previously part of Netscape Communicator such as calendar, HTML editor, etc. You can also add such features with addons to Mozilla Thunderbird. Then Google Chrome happened, and people switched to that, but I'm not entirely sure why.
- randall 10y agoI switched for the same reason i switched to phoenix: it was just faster. Now I use it for the dev tools. It's still faster imo.
- 10y ago
- rmchugh 10y agoI'm a fan of continuous refactoring, making small improvements to code and environments constantly, rather than trying to do everything all at once. It might not be as satisfying, but it's less risky and a lot more realistic in most work environments.
- Klathmon 10y agoThe problem is when you need to change your "platform". I worked on a 300k LOC business basic application at one point. The big question everyone was asking is how do you move to something else? Everyone wanted something else, they started writing new services on top of the old system, they had some ideas on where to go, but it just didn't seem like a gradual rewrite was possible. And to be honest, a Greenfield rewrite just wouldn't work work for something this size with the resources they had. So it stayed in business basic.
- rmchugh 10y agoIsn't that the usecase for the Strangler app? https://www.martinfowler.com/bliki/StranglerApplication.html https://www.martinfowler.com/bliki/StranglerApplication.html
- heinbehrens 10y agoNot when in 30+ countries with different modifications made in each country
- ams6110 10y agoSame thing, back in the first dotcom boom. I think the company would have died anyway, but they burned whatever runway they had by undertaking a complete rewrite of a working ASP/SQL web app (full stack Microsoft). The new version was to run on Linux and use a variety of custom code, sourceforge and/or freshmeat projects, and several different data storage tiers. An explosion of architectural complexity. As far as I could tell the main reason was that the CTO and his top architects were all Unix zealots and hated Microsoft.