It depends. The basics of programming are the very things you mentioned, general concepts like variables, program flow, modularity ( libraries, modules, whatever it happens to be ), the kind of stuff that is pretty universal to programming.
That said, it depends on how intrinsic a feature is to a language. For example, you could argue that objects aren't a basic feature of C++, but they are certainly a basic part of Java or Smalltalk applications. On the other hand, the "basics" of C++ means preprocessor, linker, etc... facets that are a complete non-factor in other languages.
So, I guess you could look at the basics of programming as the general concepts that are unviersal between languages, while the basics of a particular programming language are the manditory bits you need to be functional.