There is much knowledge than you can learn. Try to focus your learning on what help you solve your clients problems. You'll become an expert only in a thing or two, and you'll be able to talk about it like the people here on HN.
Also the smart comment writer is not a representative of the average HN visitor/population. There are always people who are expert in their niches.
This is true, However at some point I want to move my career in a different direction and most of what I learn on the job is industry specific and the industry itself is not something that hugely interests me (although I have not decided for sure what I want to do). So I am trying to learn as much fundamental stuff as possible.
The issue is deciding how much one should know about something before you confidently put it on your resume.
For example I would say that I am an OK Java programmer but I avoid using enterprise frameworks which are commonly used in many companies so there are many parts of the language which I am not familiar with simply because I have never had cause to use them, for example I do almost all of my persistence using a database and ORM so I almost never have to use Java's concurrency locking features in the wild as I do all my locking in the DB.
The same with functional programming, there is no reason to learn it for my job but I get a feeling it will become more important as time moves on so I should know something about it.
There is allot of stuff on HN with people saying that everyone should have implemented a toy compiler at somepoint and if you haven't then your not a serious programmer , or perhaps it is a Toy OS etc etc.
Also the smart comment writer is not a representative of the average HN visitor/population. There are always people who are expert in their niches.