Sharpening the Saw

ScottGu never disappoints because ScottGu is Chuck Norris!

Um, does going to meetings count?

Good point. Allow me to clarify.

Sharpening the saw is shorthand for anything you do that isnā€™t programming*, necessarily, but (theoretically) makes you a better programmer.

  • that doesnā€™t make you want to kill yourself

For me sharpening the saw also means trying out new things I read of. Its more time consuming but writing and running a sample code is worth as much as reading through many blogposts and keeps that saw sharp.

Sure would be nice if the folks who run Hacker News would read a few posts about ā€˜modernā€™ uses of RSS. Gee, a title link, no actual post text! Thatā€™s about as compelling as bookmark aggregators circa 2004.
Iā€™m sure thereā€™s interesting stuff there but I donā€™t have the time or patience to ponder 6 word titles to see if I can get a zen feel for whateverā€™s hiding behind themā€¦

What about something that doesnā€™t have anything to do with programming?

I visit www.codekata.com every now and then to refresh myself on some basic programming skills. I wish they would update their site though and get some new kataā€™s out there, unfortunately I think the site is not actively maintained any moreā€¦

@ graeme Just cause itā€™s fun, doesnā€™t mean itā€™s not good for you :slight_smile:

@ Jeff Iā€™ve said it in the past, and Iā€™ll say it again, donā€™t put down yourself or this blog. The mere fact that other developers can come here and discuss the things you bring up, and maybe even poke at you about some practises reinforces the potential for improvement in all of us. - And you take criticism like a pro. thumbsup

Myself I like solving problems from Number Theory, Calculus and Physics books. Solving these complex problems keep me sharp. Also, another big one is looking at or diagnosing and confirming bugs in unfamiliar code. Of course, I read the tech blogs and articles.

That lumberjack story describes half the US.

I agree. There are extreme cases where the team leader refuses to stop and do some re-planning because We are too way behind scheduleā€¦

+1 for the DZone.com recommendation

Reading blogs is great, but I learn a lot more by writing one. Having to understand something well enough to correctly explain it to someone else is a great forcing function for learning. (Not that I always succeed at understanding it well enough or explaining it, but when I fail, at least I learn something from the comments.)

This point is entirely valid but I would wager that most people need to spend more time coding and less time surfing hacker news/proggit.

I know I do.

Thanks Jeff, and other comment posters!
Iā€™ve been looking for good Developer resources to add to my RSS feeds. Itā€™s not as duh obvious to find good ones as I expected.
I believe whole-heartedly in this theology. None of us are as good as we should be. With such easy access to so many other talented developers out there, and so much new information that we are supposed to know added to the library on a daily basis, we must at least occasionally troll for the golden nuggets that push us to be better at what we do. Itā€™s simply a matter of survival.

If you have a long commute (30 minutes or more), I recommend podcasts.

This is especially a recommendation for your colleagues who have excuses about sharpening the saw, and never read books, blogs, or rss feeds. They may still fail to care enough, but itā€™s worth suggesting.

Posting questions on Stackoverflow :slight_smile:

Yes, I know Jeff, you have had a different intentions in mind when you thought about use cases for SO, didnā€™t you? People go there if they have a problem, ask their question and wait for someone helping them out.

My questions are way too specific and complicated to really get a useful reply from thereā€¦ your post about the Bikeshed Effect covers that very well, BTW. As my problems are so specific and so complicated, instead of everyone, hardly anyone will reply.

So what about the questions Iā€™m asking on SO? Iā€™m not asking them because Iā€™m affected by the issue - at least not at the moment. I ask them, because I have general questions and Iā€™m interested in general solutions to general problems. I see what people reply and I learn a lot of their replies. Often they send me interesting links to blog posts, articles and YouTube videos (Google coding sessions).

I already learned a lot that way. The most important lesson I learned so far was that sometimes something is only a problem because Iā€™m caught within a too restrictive thinking pattern. Iā€™m trying to solve a problem on the basis of assumptions that I see as a fact. Just because I see them as fact wonā€™t make them facts, though. If you grew up in a different world, if you have a different thinking pattern, you may not ever realize that something is a problem to some people. To you it may be no problem at all, you are never going to run into the situation in the first place because you take a different approach to begin with and thus wonā€™t end up at the same point as me one day.

This point is entirely valid but I would wager that most people need to spend more time coding and less time surfing hacker news/proggit.

I know I do.

I try to use StackOverflow as a saw sharpener. I justify it to myself as Iā€™m using it to become a better programmer, though sometimes itā€™s just because itā€™s fun.

Fun = a message from your subconscious about an unmet need. Pay attention!

Maybe you need a break from meaningless work. Or maybe you need to do something intellectually stimulating. Or maybe you need to learn. Or maybe you need to do something just for yourself.

I think choosing different kinds of projects makes for a learning experience, though I think one of the things that I appreciate the most was starting a free software project. Iā€™ve learned a bit about working on a software project along with other programmers, which isnā€™t at all my day-to-day experience.

So generally my advice is to try doing the kinds of programming-related stuff that youā€™ve never done before.

Thanks for writing this Jeff. Gave me a whole new bunch of things to add to my feed reader, always on the lookout for new programming sites :slight_smile:
BTW, I started sharpening my saw some time back by writing articles about programming (at http://www.safercode.com/blog/ ). It helped me in a couple of ways. First, I could take out time to read and research more about the aspects that i was writing and second, the great comments that I got on the articles with much more insights than I could imagine.