The lovely lady dev Kelly has passed on to me, for you, this advice from the lovely lady dev Ruth Ablett about being a lady dev:
I've always been interested in how things tick, but was a bit discouraged from doing so in favour of other "more feminine" hobbies by friends/siblings growing up. Once I figured out that doing what I liked was more important than listening to silly people, I started doing BASIC programming (I started by modifying Nibbles) and then got my first website with GeoCities in 1995. I taught myself HTML and JavaScript and dabbled in CGI. By 2000 I was working as a freelancer (while still in high school) and making a good amount of coin on the side. I didn't have a lot of theoretical knowledge, but I did know how to make websites that people would pay money for.
I started studying Computer Science at the University of Calgary in 2000. I initially had no real idea what I was going to do, but I knew I had a knack for figuring things out and enjoying the satisfaction of solving problems. The first two years were very difficult for me, as I am very application-oriented. I can't just do an assignment handed down from a prof to help me learn things, or to rote-memorise things. I struggled a lot, and this was not helped by certain members of my first- and second-year classes telling me a) I was clearly only there to get attention - being a woman in CS b) I clearly shouldn't be in CS because I didn't know x, y, and z about Linux/Fortran/C.... I scraped by with barely-passing grades. I thought about dropping out many times. It was really disheartening... it was a roller-coaster of being proud of solving the last problem while feeling intimidated by the next one. On top of all that, I had no idea what lay on the other side except for cube farm dev work or IT.
However, once I hit third-year, which was when I started applying the knowledge I'd gained during those first two years, I went from Cs to As pretty much overnight. I took database design, managing software dev teams, web systems, human-computer interaction, and many others. I ended up doing an undergrad research course in fourth-year and wrote a transactional object database. I got the only A+ in that course. I also took a web-systems course known by the CS students as "the meat grinder". I got one of 2 As. My professors (in the last year especially) were outstanding and they inspired me to really excel by showing me what career options were available. Not just cube farm work!
I moved to Japan to do the JET programme, taught English for a year (while fixing computers and wiping viruses for my students' parents :P) I returned to Canada and did my MSc at Calgary, got hired as a TA for the 'meat grinder' and for an object-oriented analysis/design course. I spent a summer at Hokkaido University on a robotics research internship. I was asked to teach the 'meat grinder', which I redeveloped from scratch. I got rave reviews as an instructor by my students.
In 2008 I moved to New Zealand. I worked with a small firm doing custom software, and my partner and I started a consulting firm. I'm currently trying my hand at Android and wrangling two daughters.
After all that novel, what advice would I give? Find someone who can tell you what's there after you graduate in your area(s) of interest. Don't be discouraged by people who tell you you don't belong in CS. Look at your strengths (you may not know what they are yet in regards to CS/IT) and try to find things you intuitively like. Don't pay attention to how much money you can make, but a balance between earning as much as you need to live on, and really enjoying what you're doing.
A lot of the courses you take in the first couple of years focus on individual, trivial development projects. This may give the impression that programming is an activity that doesn't involve creativity nor interaction with others. This is false. In real life, software development involves teams of people working together. Software development allows you to collaborate with others, constantly challenge yourself, and learn about many different business models (since pretty much all businesses use some form of software these days). Personally, I find software development to be an amazing form of creative expression from many perspectives.