Many people that want to get into the programming picture first ask themselves,
what language do I want to concentrate on? And that can only be answered with another questions,
what type of programming do I want to do? Around places, you could see some programmings praising their languages and putting down others. In most cases, those programmings 1) don't know what they're talking about or 2) don't understand the language(s).
Each language has it's purpose. C and C++ are real good for developing applications such that are commonly used (many are WinAPI based). Java is the language of the internet and is widely used among that group of programmers. Even Visual Basic has it's use. It's great for RAD (Rapid Application Development) and you can easily and quickly develop useful apps.
From my experience with programmings, people either love Assembly (like me

) or they hate it (the programmers who don't program in it). Of course, like any language, there are the ups and downs. That's how you choose a language.
If you want low-level programming and minimized app sizes and the fastest programs (provided you're using optimal programming skills
) then I would say to program in Assembly. But, if you don't have patience for learning or not willing to spend hours and days and possibly weeks debugging, they
don't learn Assembly!