As a soon to graduate high school senior and someone who seems to have the same interests as you, here are some of my thoughts:<p>1. Stay on the ball with your school work. I regret doing this myself. Freshman and sophomore year I had a decent average (85-90%), however, junior year I just got lazy. Most of my classes went down into the 70s and I was not enjoying myself. I'm in my final semester now, I have been accepted to university, but I'll most likely have to take out a big student loan as my average isn't good enough for most scholarships. I could have done better in those last two years of high school, but I didn't know how to manage my time. I'm getting better with it now, thankfully, and two tips I have for you are: (a) write down what homework you have for the evening on an ipod, notebook, or whatever you are guaranteed to look at once you get home. As soon as you get home, before you visit HN, reddit, or play any games(!), do that homework! You'll be able to focus better if you're not distracted by anything else, and you won't have to rush to finish it before bed (b) find time to do as much work as you can at school. If you happen to have a free period, study hall, or lunch break, take advantage of that. If you have something to do, find somewhere quite to work and JUST DO IT. You'll feel so much better after completing it and then you won't have to spend time at home on it. Don't let your friends talk you out of doing your homework to spend time with them, as there will be opportunities for that later. There's a due date on assignments, and you'll most likely not have another chance to get it done.<p>2. I've attended the canada-wide national science fair two times (hopefully a third. I'll find out soon), and this is something where one has to spend TONS of their free time working on a project. My projects were programming related, so I got to do what I enjoy doing and I won some cash and prizes doing so. However, there are huge time management issue with this. This is where finding those spare moments at school to do homework and assignments is really important.<p>3. Don't worry about a VPS. I know the feeling of wanting one though, but I've had to resist. There's just no practical reason why you actually NEED one. Before you buy something, ask yourself if it's something you actually need. If you would like to get a domain name (which can be helpful if you're advertising yourself on Kijiji or Craigslist for web dev.), you could just have a static HTML page (which most domain registrars allow you to have free), and have it link to your work (Github, etc.)<p>4. As others have pointed out, there are many free resources online. You just have to look.