1) school. I'm not a fan of the formal 4 year degree system (I think it's inefficient), but have learned to value my BFA education. You definitely need to learn design principles, things like balance, harmony, unity. Especially hierarchy. Also typography is so important. As you learn these, you'll learn what good design is and why. Hint: design is not decorating or making something pretty.
2) while in school, I was coached not to use just my school portfolio when seeking professional work. The idea was to give yourself some projects. Make them up. They'll then be different and stand out more.
Along those lines, when creating projects for yourself for your portfolio, use a subject matter that you're passionate about. The project is likely to be so much stronger of you're passionate about the subject.
3) for web design, as others have mentioned, don't underestimate the value of learning how to code. Especially smaller companies will be more likely to hire someone who can code and design-- they get way more mileage out of that employee than one who only understands visual graphic design.
2) while in school, I was coached not to use just my school portfolio when seeking professional work. The idea was to give yourself some projects. Make them up. They'll then be different and stand out more.
Along those lines, when creating projects for yourself for your portfolio, use a subject matter that you're passionate about. The project is likely to be so much stronger of you're passionate about the subject.
3) for web design, as others have mentioned, don't underestimate the value of learning how to code. Especially smaller companies will be more likely to hire someone who can code and design-- they get way more mileage out of that employee than one who only understands visual graphic design.