Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "backward compatibility"
"Kids, which organization has poorly documented projects?"
"Apache Software Foundation!"
"Kids, which organization has poorly maintained projects?"
"Apache Software Foundation!"
"Kids,Which organization breaks backward compatibility with each release?"
"Apache Software Foundation!"3
FUCK FUCK FUCK
Started working on devRantron after a month holiday.
Major version upgrade to 4 different packages. All the upgrades are breaking the current configurations.
I just fucking wish JS community would understand the importance of backward compatibility.5
Those who do not remember history are doomed to have serious backward compatibility problems. -- Expert C Programming1
I can't use the stupid library I want because some fuckhead decided to change a stupid import. I guess backward compatibility for something as stupid as that would be too hard to insure.11
this code is messy .. it has to be refactored..
abstact those classes to commom interfaces .. create a base class for all those common classes .. make this a parameter, make that a setting.. generalize this, pass a behaviour to that.. separate responsobilities..
hmm .. need to handle that special case .. let's just add a temp method for now to get it compiling .. //todo this later .. maybe add a couple virtual bools to handle the base class behaviour
238 compilation errors! .. let's do a static var for now on this.. and just add this for backward compatibility .. maybe hardcode that dll name, I know it'll NEVER change..
aah finally, all compiles..
this code is messy .. it has to be refactored..
Anyone please remember to ask if the project|s that you're going to work on do|es need Internet Explorer support.
If it's the case just expect any resemblance of modern frontend development skills go backwards into the backward compatibility territory and never going forward.
I'll start looking for another job, can't be bothered for this payment and regressing my dev skills for client needs.
Again FUCK YOU IE!6
Solved a problem while maintaining backward compatibility using reflection... Then i had to spend half an hour to justify using reflection.
Reflection is your friend (just don't overuse it)3
Fuck backward compatibility
Because IOS 9 and Android 4.4 doesn't support arrow functions, I have to refactor almost 90% of the code4
That level of satisfaction when you successfully port a Python2 Project to Python3 and implement proper backward-compatibility - without 2to3!
Want to hear another joke?
Blue Prism allows you to export stuff from version 6.7 to 6.3.
However they changed 𝘷𝘦𝘦𝘦𝘦𝘳𝘺 slightly the way they store the position of the nodes. No new features -or at least nothing that you would care about- but the structure of the node itself want went from
<position x=1 y=2 w=3 h=4></position>
The whole project collapsed to a single point, catastrophic consequences as far as exception handling. A generic "fuck you" for no real reason other than the sheer malice of those beasts of burden who developed Blue Prism in the first place.
And I have two different versions of Blue Prism on dev and prod :)2
While attempting to quit smoking and after spending a full day trying to understand why the previous devs took this approach to encrypting a string and my lack of nicotine addled brain not allowing me to see that this was a “Secure”String and so uses a machine specific key (that’s why the code that worked locally wouldn’t run on production 😑) this is my rant on comments added to the helper I had to write
/// If you are using this class and it's not for backward compatibility - then you probably shouldn't be using it
/// Nothing good comes from "Secure" strings
/// Further to this Secure strings are only "useful" for single user crypto as the encryption uses the login creds, transferring
/// this data to another client will result in them never being able to decrypt it
/// Windows uses the user's login password to generate a master key.
/// This master key is protected using the user's password and then stored along with the user's profile.
/// This master key then gets used to derive a number of other keys and it's these other keys that are used to protect the data.
/// This is also a broken crypto method via injection (see Hawkeye http://hawkeye.codeplex.com/) plus the string is stored in plain
/// text in memory, along with numerous other reasons not to use it.
public class SecureStringHelper
The absence of backward compatibility in php updates should be illegal and the developers responsible for that should be trampled by an elephant with the PHP logo painted on its side.12
I recently tried to prototype a few pages for a new webapp I'm working on and--because I'm a masochist--decided to try something other than Bootstrap. It seems that no one can support backward compatibility and even Foundation's examples don't work with their current version.
Folks, add new stuff all you want, but don't break what works. If you do, at least update your damn example code!
C++ is the building blocks for many high-level programming languages, and since 1984 its first appearance in the markets the C++ core committee developers have introduced its 4 new versions which are C++03 (ISO/IEC 14882:2003 second edition), C++11 (third edition), C++14 (fourth edition) and C++17 is the fifth edition. With each new version, developers introduced new features, libraries and APIs in it.
C++ introduced as the extension of C programming language which made C++ as a compiled programming language, which means the developer required a C++ compiler to translate the C++ code to its equivalent machine or byte language, so the Operating system of the computer can execute the program.
There are various C++ compilers in the market and most of them are open source and free to use, however conventionally when we say C++ compiler, we basically talk about GCC which stands for GNU Compiler Collection.
What is GCC?
GCC stands for GNU Compiler Collection, and it is a collection of programming compilers which induce C, C++, Objective-C, Fortran, and some versions of Java. The first version of GCC introduced in 1987 and it was also known as GNU C compiler which became the standard compiler for C programming language, in that same year GCC also provided Compiler support for the C++ programming language.
Now GCC has various versions and each version give specific support for C++ versions, by now if we look at all the versions of GCC, we have a stable GCC for every version of C++, but there are some exceptions with C++11.
C++11 introduced as the 2nd update version of C++, it suffixes 11 because it released in 2011 or because on August 12, 2011, ISO gives official approval to it. Formally C++11 known as C++0X because developers were expecting the new update released in 2010, but with its release in 2011, the core committee developer of C++ changed its name by C++0X to C++11.
C++ 11 replaced the old version of C++03, and it also brings many new features for the C++ developers. The main aim of designing C++11 to stabilize and maintain the backward compatibility of new C++ version with the C+98 and C programming language and that’s become the main reason why core committee developers only introduced new features in the old standard library rather than extending the core language.
GCC does not give Full Support to C++11:
GCC version GCC 4.8.1 purpose the first feature-complete implementation of the C++11 standard, however, the 4.8 and 4.7 does not give the full support for the C++11. The current version of GCC provides the major support for all the standard features of C++11 but if you are using the GCC 4.8 or 4.7 versions then your GCC only provide you with the experimental support for the C++11.
To use the Experimental support of GCC you need to enable it first before you compile or run you C++ 11 version code.
use code std=c++11 or -std=gnu++11 to enable the experimental support for C++11.17