tags:

views:

417

answers:

9

I was wrapping my head around C# lambda expressions yesterday and a question popped up. What's your way to

  1. Stay informed of new things in the market / new features in, say, .NET Framework etc?
  2. Decide what to invest time on learning?
  3. Actually learn the new feature / technology / methodology?
+2  A: 
  • blogs
  • podcasts
  • conferences
  • community sites, like this
  • Just Do It (tm) Seriously...it is all just cerebral day dreaming if you don't actually do things. Just Talk About It is for management! (haha)
Stu Thompson
+2  A: 

There is no substitute for reading good books from time to time to really understand a given technology. C# in Depth, for example, is a great book book.

Other than that, I find that InfoQ.com and DZone.com are good to hear about new/interesting topics. I do find that InfoQ has less noise than DZone.

In terms of deciding what to learn, I'd say just follow your instincts. If you are working on a project and say to yourself, "I wish I knew better how this worked," write it down and look into it the next time you have a chance. You'll be able to tell pretty quickly if it is something that interests you or not.

ottobar
A: 

Stackoverflow.com is a good place to learn in my opinion. Lots of interesting questions and answers here. Pick a tag, and you'll be sure to find something interesting.

Floetic
A: 

I simply make it a goal to learn 2 or languages or frameworks per year, if you enjoy programming, then you should have no problem doing this...

And when I say "learn" I mean make a complete usable app with the technology, event if it is something easy or mundane (e.g. a blog engine, a wiki, etc...)

you can read about new technology all you want but IMO, if you have not directly worked with it, you have no experience in it.

mmattax
A: 

I use podcasts and blogs to stay up to date. For .Net, Hanselminutes and dotnetrocks are good podcasts for finding out what is coming out soom. I assume that other technologies have their own front runners. I tend to listen to these on my commute to work, but sometines I run them as background noise while working.

Deciding what to invest time on is harder -- we all know that there is many, many new technologies coming at us all the time. I try to pick things that will be useful in my day job. Hopefully I can talk work into paying for training, books etc if I can relate it to a pressing business need.

My method for learing new technologies depends on how far behind the curve I am. I did not get into C# until .Net 1.1 was released so there were many training courses offered (and work agreed to send me). When we need to learn WSE 3.0, it was reasonably new (and more of a niche product) so I read a book and worked through code -- learn as you go style...

Jack Bolding
A: 

My strategy is to have a rough idea of what's going on, but not feel like I have to learn or know everything to be a good developer. There's so much new stuff being developed these days that it's virtually impossible to know it all, but it is important to know enough to be able to make a good decision about what to learn or use in a given situation.

In my opinion I would focus on knowing the "timeless" development skills such as OO (cohesion, coupling, and encapsulation) and creating testable and high-quality software.

I would then supplement this by learning the technologies I need to do the stuff that I'm working on.

I believe there are many ways to achieve this information/skills. A combination of books, work experience, conferences, postcasts, and reading blogs and Q&A sites such as this one should be a good start.

Lars A. Brekken
A: 

I learn by doing and writing about it. I blog at SQLBlog.com and at Lessthandot. I also answer questions on So, MSDN forums, lessthandot forums. In my opinion blogging is the best way to learn, once you start writing about new things you will get sometimes comments telling you that you are wrong, this will force you to check and double check things before you hit that post button.

I am also a SQL Server MVP and participate in non public newsgroups and have access to things which are not public. Being active in forums (or fora for you grammar Nazis) is also very good to improve your skills, in forums you will encounter things which you might need right now but when you do later on you will remember that you have seen that solution somewhere and then a simple search will lead you to the answer, here the same applies as with blogging if you give the wrong answer; someone will set you straight

SQLMenace
+7  A: 

I try to give myself 30 minutes to an hour each work day and I just go through Google Reader. Being a developer on the Microsoft stack, I started with more Microsoft-related blogs like Scott Hanselman's or Jeff Atwood's. Literally, that's all I did. When they linked to someone, I would read it and consider if it was good. And slowly, my feed list grew... (probably to less than maintainable proportions right now).

Besides that, get involved in the developer community, whether that be via user groups (in person) or online communities like Stack Overflow.

Keep reading!

David Mohundro
A: 

Rather than reading about particular technologies, it may be more important to grok the ideas behind the technologies, and rationally infer what's new, what makes sense and what not - not just take things are they are, but how they might be. I strongly recommend Russell and Norvig's book: "Artificial Intelligence - A Modern Approach". Such books can change the way we program - and help us invent new technologies. In short, don't just follow, also lead.

Amit Kumar