I said yes, but I really feel a third option is more appropriate: "It depends".
For small companies, there's no choice. The manager also has to code. For larger companies, the manager should be a former developer so as to be able to manage effectively, but that manager should be focused on managing.