I studied in a technical school and learned programming, among other subjects related to IT and gained the title of IT Technician.
I decided to follow programming as my career choice and began a stage at a local company in order to learn more and pursue a programming career. So during this stage I developed in C#, VB.NET and VB6, but I was developing in VB.NET for the most part.
I concluded this stage 1 year later, and although I was technically better, I felt a bit lost in programming bases and theory. I could program simple things, get some pages done and learn on my own but I still felt like what I knew was poorly backed by the lack of some Algorithmics.
I got a job in a consulting company and I develop web applications in ASP.NET MVC 1. I feel like I've learned a lot while working here but I would like to learn a lot more in correct programming manners and upgrade my capability of developing algorithms.
I will study Software Engineering but I can only attend the course during the next year. During this year, I would like to do something at home, like doing some projects that could get me better at programming and logic and read some good books on the area.
What exercises, projects and/or books do you people recommend? I'm all in for good advice.