Shani Raba has tagged my to answer this question.
I think the answer is pretty simple: Don't stop learning. Read, code, and listen to the people around you.
I think that curiosity is a very important thing. In the race of life, it's easy to be stuck in a rut. To wake up every morning, go to work, go home, sleep and repeat (I've been there). I don't accept that anymore.
You shouldn't either. Find the time to learn new things, to experiment technologies and wide your horizons.
In the world of software, if stand still, you will be left behind. So be curios, it is the one thing that separates good programmers from excellent ones.
Things I want to do
Books, blogs, articles.
We've just got several very interesting books that I would really like to read, on every subject from design patterns, through web site advanced development, to performance in our Database. Shani gave me a simple goal: 4 books until the end of the year.
I would like to accomplish this goal.
Unitesting and TDD
This week I started to do this, with not to much success, and a lot of suffering. I would like to improve doing this. It will take time and a lot of code.
UI and Usability
Currently my team is very bad in this subject.
I've been trying to get this in the door for a long time. I'm taking this as a personal challenge. I want to learn more about how to build a usable and friendly interface for our users, and to assimilate that in my team.
In my opinion, it's the MOST important thing in an application.
Enterprise library 3.1: I currently know only the basic, and I didn't practice it much.
ArcSDE 9.2 new features: Especially the new packages which allows you to use standard queries in order to access geographic information.
DirectX: This is a personal one. I started with computers in order to learn to do computer graphics. Until now I haven't had the chance to learn using DirectX in order to do graphics.
WPF: Taking the next level in UI and graphics sounds very interesting (and looks amazing!).
C# 3.0: Only if I get Orcas to work without crashing my computer).
Troubleshooting: We've all been there... web.config gets checked out by TFS and no one knows way, an application locks an assembly in the GAC which prevents you from compiling and so on...
So you skip these problems, find yourself a patchy solution and continue on (somebody said, remove the readonly from the web.config.
So I need to start thinking at these things differently . From now on if I would stumble with an annoying problem, I will not move on until it's fixed!!!!!. I would make time in each week to try and solving them one by one.
Things I won't do
I won't take things for granted. When I first started in the team, I argued with every one about every thing. Every one told me I was very stubborn. I mellowed down in the meanwhile, but I still think that criticism is good. You should never take anything for granted. Not bugs, not architecture decisions, and not nonsense of VS and TFS. You have a problem with something, don't be afraid to ask about it. It is sometimes very interesting to find the answers.
I won't stop playing computer games (although almost everyone will tell you it's for kids only).
The reason I was interested with the computer, as a child, was games. In the past, in every new language I learned , the first project I did with it is to create the "Snake" game. I like to play them, and create them (EA here I come!). So no matter what happens, I will always find the time to play another level.
Next year I'll see if this all came through.
Have a great week.