The NBA has a lot of bizarre rules. Things like age limits, salary limits, and forced work assignments (for top prospects) would be unthinkable in other fields.
Here's a fun comparison: Imagine that there was a National Software Developer Association. Let's pretend that it had a college program where future developers could have their college paid for. However, they would have to remain "amateurs", which means that they wouldn't be able to profit from their software outside of school-sponsored events. They'd be inelligible from getting software-related jobs. Also, they'd have to wait two years before joining the real National Software Developer Association, where they could actually make money off their own work.
What would one side effect be? Well, no Facebook for one.
Mark Zuckerberg started working on Facebook while he was a student at Harvard. Obviously this was not a school sanctioned project. And of course, he was "profiting" from his work by getting stock in a company while he was still a student. What's more, Zuckerberg didn't even finish his second year at Harvard – he dropped out during his sophomore year so he could spend more time working on Facebook. If there were some organization like the NCAA policing collegiate software development, then Facebook probably wouldn't exist.
It's really hard to take tech people – like Mark Cuban – seriously in regards to NBA age limits when much of the tech field has been led by college dropouts (Jobs, Gates, Zuckerberg; the Google founders quit their PhD program). What's more, Cuban has actually rallied against the rising costs of college. Yes, most players won't be ready for the NBA from the get-go. But in other fields, letting young stars freely practice their chosen careers is not a problem. Remember when LeBron James and Dwight Howard went #1 overall in back-to-back drafts? Was that really so terrible for NBA basketball?
In fields like the tech industry, it's been a huge part of our success – and we embrace it. How long will it take the NBA to do the same?