How so?
This is totally the right way. Make it work, then make it right, then make it fast.
Yes. When you have to try out dozens of research ideas, most of which won't pan out, then you stop writing engineering-style code and switch to hacker mode. Why make it nice when you could be trying 2 more ideas in the meantime. Most of research code it is going to the trash anyway.
> This formulation of this statement has been attributed to [KentBeck][0]; it has existed as part of the [UnixWay][1] for a long time.
These .cpp projects don't improve anything for performance. They just drop dependencies necessary for training and experimentation.