Early in my career I had to report to Simon Gluckman. Simon was a big guy. He usually smiled. And he got along well with all the other senior managers. The problem was that Simon had no clue about any of the work I did. And he did not seem to want to know either.
Simon had a lot of people under him. He delegated most of the hands-on technical leadership to lower level managers or even team leads. This actually seemed to work. But all the developers in the trenches did not have much respect for Simon. They considered him a lightweight.
When it came time for Simon to review my performance, he did not have much data himself. But he was OK because he just asked other people. Every so often we had to write status reports for the customer. Simon was supposed to do this. But as I mentioned before, he was clueless as to what was going on. So the arrangement was that developers would ghost write the reports for him.
In summary, Simon was a nice guy. Not sure if he was ever technical. But his lack of even basic knowledge about what us developers did cause him to be irrelevant. You don't have to be able to do a programmer's job in order to lead them. But you have to at least have a clue.
A Little Bit of Crypto - I have been trying to figure out to "collision resistant" some of these standard hash functions are. It is a tough concept to get my head around. I figure...