What programming language? Answer. Who Cares.

Learn the difference between compiled and interpreted; When to use which. I've seen asp code calling vb scripts that call other scripts, when the same thing could have been done with 15 lines in a sp.

SQL is SQL left right inner outer joins - joins are joins, inserts are inserts. Learn the difference between functions, subs. I've seen programmers who couldn't code there way out of a while loop.

When I need to write anything I use textpad. I use it to write in any language. I use M$ Complier for any .# or C++ apps I may write.

As to cost. If you buy M$ Visual C++ Enterprise and don't have a DB or Web Server. You just wasted your money.

Start with programming for dummies. Follow the K.I.S.S. rule and don't just focus on the syntax. Learn to be dynamic. Write it ONLY ONCE.

/end rant

edit: Also for the love of GOD, know the difference between vchar and int