This seems like a really expansive way to say don't do something if you don't enjoy it, which I think is good advice for anyone, not just undergraduate hackers.
Overall you have good points though for people early in their careers/education. People should consider their motivations honestly before devoting a lot of time/money/effort to it and it's easy to be blinded by other factors. In the end, most people who make it through a CS degree and entry level jobs to excel in software careers seem to really enjoy programming itself. Others who get into it for money or family pressure usually end up as mediocre or below-average programmers (which is probably fine btw, not everyone needs to be awesome at what they do nor do they necessarily have to like it).