.

Tuesday, February 5, 2019

The Problem: Rewrite Mania :: essays research papers

The Problem Rewrite ManiaI have been noticing a certain trend in softwargon toward rewriting successful tools and standards. It seems that programmers eternally have the urge to make things better, which is perfectly understandable - after all, this is the first trait of the engineers mind (although I also think that artistic creativity also enters in the mix). Why should things stay static? Surely carry on is good, and if we just stayed in the same place, using the same variations of tools without improvement, then things would discharge and generally get pretty boring. Thats all very true, but what I am seeing is that in many cases we have tools which truly atomic number 18 "good decorous" for what they are designed to do - TCP/IP allows us to build giant, interconnected networks, Apache lets us build flexible weather vane servers, Perl lets us write incomprehensibly obfuscated code()... well, point being, these things work. Really, outstandingly well. They are & quotgood enough", and moreover they are used everywhere. So alls well and good, right? Well, not exactly. The programmers add little bits and pieces here and there, fix lots of bugs, and over cadence the code starts to look distinctly messy - and with the insights gained from this "first version" of the exercise (I dont mean V1.0, but rather the overall codebase) the developers start to think nigh how it could be " through with(p) right". You know, now they know how they should have done it. Fired with young zeal and enthusiasm, the developers embark on a one thousand rewrite project, which will throw out all the former(a), stale, horrible, nasty slouchy code, and construct reams of brand new, clean, designed, and, uh, buggy, incompatible, untested code. Oh well, itll be worth it ... right? So the new version will break some things that worked with the old version - the benefits from the changes far outweigh a loss of backward compatibility. In their minds , the developers are more focused on the cool aspects of the new version than they are on the fact that in the real world, millions of people are shut away using the old version. Eventually, then, the new version comes out, to grand fanfare. And a a couple of(prenominal) people download it, try it... and it doesnt quite work. This is perfectly normal, these things need time. So all the people who are running large production systems with the old version just back off for a while until the new version has been tested properly by, uh, someone else.

No comments:

Post a Comment