One of the more common questions i get asked at User Groups and events is how can i learn Technology WPF/ASP.NET/XXX/.... My stock answer is to pick small project or application and dedicate couple of days driving it to completion. I not am retracting my stock answer as it really is a great way of starting with a new technology, but depending your goal this may not be the most efficient way of learning something as it forces you to reinvent the wheel for well...Everything...In looking back at my skills i would say most my knowledge has come from two other methods of learning:
1. Firedrill cramming - Like you would use for studying for an exam -or prepping for a presentation to do be delivered the following day on a technology you had never even heard of!
2. Just-in-time Application creation- This is probably the scenario most developers unfortunately probably find themselves in. You come in to work on Monday (typically late in my case) and your manager tells you we need an application, built on a technology you don't know, by the end of the month -oh yeah with about 10 man years worth of features. Funny thing is i cannot think of a situation i have missed one of these impossible deadlines. The reason being is i cheated! By taking an existing application that is pretty close and repurpose it, hoping to god the original creators did due diligence with the design! While i don't feel i learned the technology that well using this method I must admit i probably know as much about ASP.NET reskinning I-buy Spy than any book i have bought! Which reminds me, if you are in a "Just-in-time Application" crisis make sure and check out the latest ASP.NET Starter kits -my favorite is the Beer house website…I am guessing 10 minutes in Paintbrush and it could be a compelling Fishing Tackle site!
Other great starter kits include: