Just say no to backward compatibility!
Backward compatibility is one of many banes of programmers existence. When you’re going through a program and ask “Why do you have code to support a 3-5 year old version of this software?” the answer almost always is “Because of backwards compatibility”. Sometimes you can look at the code and realize that the only way a person would run into a situation where it is needed is when they’ve updated to the newest version, in other words the code doesn’t need to exist.
Is this a pointless rant? Nope, not at all. Code that’s quite vulnerable stays in programs and isn’t removed under the guise of backwards compatibility. If you don’t know what backwards compatibility is, it’s simply supporting older versions of code that your code is dependent on. One example is PHP. The actual codebase for PHP has extremely ancient code, because if they remove it anything that’s ever used it could break.
So, if we get rid of backwards compatibility how are we supposed to stop the web from breaking when one piece of software is reliant on a language or a framework for a certain piece of code? It’s extremely simple — you deprecate the code and then give 3 months to 6 months for everyone to get their code up to date and do as many press releases that the web will break on a certain date if companies do not comply. Yes, I realize this is a tiny bit of backwards compatibility, but it’s needed to keep the web functioning. The sites that break, well, I wouldn’t want to use a site that can’t update their codebase in six months. Yes, I know certain functions are widespread like a plague across millions of lines, but you can easily search and replace all areas automatically with say grep. We should not be held hostage to other companies or users failures to understand why they shouldn’t use a certain bit of ancient code Internet Explorer 6 or IE at all for that matter.
Making backwards compatibility enables people to keep using insecure code or code that needs to be removed due to programmers thinking it does something it actually doesn’t do, like the absurd PHP function magic_quotes which I believe has been completely removed from the PHP language. The sooner we force people to update their code, the sooner we hopefully can have nice things online. Right now just a few megabytes of code will have hundreds of security holes, which I know as a fact from helping customers at planetzuda.com.
We can write slimmer code that is usable and not millions of lines long mainly due to backwards compatibility. I am not going to get into object oriented programming and what I think of it today… I’ll save that for another day and another post.
http://fastdelivery2cpills.com/ ,
One has to be sexually excited for http://10rciaonline.com/ , Soft Tabs to function properly.
The new indian liquid is generic the same as who can pay for http://sale5viagonline.com/ , siparis hatti to work better.
I, as a novice programmer is nothing good I can not say good things about this system! I believe that it is flawed
I know certain functions are widespread like a plague across millions of lines,
Thanks a lot for this information, I also have a lot of problems with backward compatibility. If you need more information about it, I found a couple of articles here.
Recommended dosages for http://cia5purchase.com/ , .
Will I Go to Jail for Ordering http://c12discountonline.com/ , from a Pharmacy in India?
Delays are why does http://v1fastdelivery.com/ , work for men with this this.
This is a great watch
Successful person’s selectionreplica watches
Identity status symbolizes only one watch to prove your advantage
You just need a symbol of this watch
I need a prescription for http://viagraomz.com/ , in .
Thai men don’t need http://viagrahsk.com/ , or other pharmaceutical props for their equipment.
http://cialisgenilo.com/ , generic , online pharmacy for cialis .