This book is actually geared for people who don't have a c s Degree. It's to introduce those concepts that you out on by my being a programmer and not having that c s education. So i really think it's a broadly applicable set of topics that everyone should at least be familiar with. But when you run a problem in your softward development day job, or even if you're just doing softward development as a hobby, you should know what tools are available to you to solve it.