Asking for a recommendation for a good hotel or a quality cruise or an inexpensive airline is really no different than any other type of shopping recommendation. They may seem tolerable at first glance, but those questions are typically very localized and the author rarely, rarely provides enough criteria to adequately answer the question.
So, what we're left with is a bunch of opinion and random answers from participants who are only guessing what the user actually needs. That's why we explicitly disallow shopping questions.
Q&A is Hard, Let’s Go Shopping!
However, there are ways to ask recommendation-style questions that avoid the inherent problems with shopping recommendations.
First, if you're traveling with a 60-pound Siberian Husky, you might ask which airlines provide sufficient accommodations. In other words, keep your questions to solving very specific problems. If you are asking overly generalized questions, that just reeks of "do my work for me." Keep your questions to SPECIFIC problems you actually have. "What is a good tour company" is not an actual problem; It's just laziness.
Second, consider the adage "teach a man to fish". You can transform your highly localized "just give me the info" problem into something actually useful:
Give a man the answer, and he’ll only have a temporary solution. Teach him the principles that led you to that answer, and he will be able to create his own solutions in the future.
So instead of asking "What is a good cruise to take to Alaska?" You might ask instead: "I'm new to cruising, and prices vary wildly. How do I figure out the difference between these cruise lines and what sort of accommodations should I consider absolutely essential for a young family of four looking to travel on the strictest of budgets?"