I've been developing software since 1989 (I'm not a teen anymore, but I
know the moderator of this group pretty well :-) and the most valuable
things to me are things related to good general programming practices;
technology comes and goes so fast it's hard to say what will be useful
in the future.
One of the most important things is to develop good habits. Good habits
are things like backing up your code and data, using version control
(can come later if you're just starting out), keeping notes about what
changes you make between versions of a program, commenting your code,
doing design work before jumping into writing code; stuff like that.
Also, don't be afraid to try a number of languages to see what you
like. Later, you may decide to use certain tools for "commercial" or
employment reasons, but if you're just learning, make sure it's
enjoyable for you; the tools you use will have a lot to do with that.
Some good languages to check out at first would be: BASIC (many
and Ruby are neat languages too, but you might want to get your feet
wet with some others first.
Nothing against C (not my first choice), but the ones I mentioned are
really easy to get started with, where you can write programs that
actually do something useful, without too much pain and effort.