Yeah that has always been a problem for me in my degree. All the programs I had to write in my 100, 200, and 300-level courses were really basic (and boring). Since I already knew how to program in C, C++, and Perl when I arrived in college, these assignments didn't challenge me at all. I usually just cranked out the assignments the night before they were due.
However, when I got to my senior-level classes....things changed a LOT. In my analysis of algorithms class we had to write very complicated sorting and data structure manipulation routines then test their execution speed. While the algorithms themselves have been around for ages, actually getting them into code was quite a challenge and very fun. In my software engineering course I put together (with a team of 6 people) a very complicated PHP-based webpage. This project was sufficiently challenging that I really got into it. In my robotics course I worked with a team of 4 people to write 3-d simulations of robot arms and calculate joint positions and stuff. Learned a lot about OpenGL and coding in Windows (first time I had ever done that) in that class. And then of course my microcomputer systems course, where I've been writing drivers for a USB host controller that I built for an Atmel ARM embedded processor.
So my advice to you is to just keep plugging away at it. Don't let the early courses get you discouraged. Just make the grades and then you'll get some really challenging projects later on.
|