I'm torn a little on my opinion of this post. On the one side I applaud anyone who's willing to self-learn and isn't a "I'll just Google it" developer. On the flip side I tire of hearing people tell me that they've written a CMS of their own, in some cases piggy backing on someone who's solved the an identical problem pays dividends and will be more mature than your solution.
Perhaps for a self-learner a nice approach is to write it yourself and then go searching for a solution. That way you'll likely: validate what you did, figure out that you missed a detail or perhaps learn some new regexp foo or different way of writing the same thing.