If you were programming in C++, I might say they have a point. But if you're programming in C then they're clearly crazy for such suggestions
C++ programmers tell me the above is crazy and I should have made C++ classes for inner and outer, and then used boost smart pointers. At work I program how I'm supposed to program to get things done. At home, I program for fun, whatever way I want.
But to add to the discussion, I think some of the people have made excellent points. I won't repeat everything. I've primarily found knowing assembly useful when debugging release applications (where I haven't been able to reproduce bugs in debug builds), which has been really helpful to me. It doesn't happen a lot, but when it does... well, somebody has to get their hands dirty.