As a college freshman learning web development, how can I not feel insecure about not being as good as programmers and hackers that start…
Answer by Neal Wu:
Make sure you realize it's not a competition.
Success isn't a zero-sum game. Instead of feeling jealous, try to change your attitude: if there are people are around you who you think are way ahead of you, that's awesome! Seek them out and learn as much as you can from them. In the process they'll gain perspective as well, just from teaching you the concepts and having to explain things from the ground up. And if for some reason they don't think you're worth their time, don't worry; keep looking and you'll find someone who's willing to help.
Another thing I've found is that a key ingredient for success at anything is raw excitement. Take any chess grandmaster or Wimbledon winner, and you can be sure that when they started, they had no idea what they were doing either. How did they reach the top? Yes, through lots of practice, but plenty of people can just put in the number of hours. I've noticed what often separates the "very top" from the "pretty good" is that the people who are really the best at something are also the ones who have the most enthusiasm for it, the ones who put the most energy into it. And if you ask them, they'll usually say they were happy to put in all the time anyway, win or lose.
So basically, do it if you like it. Don't let your late start stop you! (And honestly, you're not starting that late at all.) If you really enjoy it, you'll quickly find that you've learned much more than you ever thought you would.