I've done everything from the 7-10 day Caribbean trips to the 21 day Mediterranean/Middle East cruises, and the biggest lesson I've learned is to avoid the ship sponsored excursions at all costs. They absolutely bend you over with their pricing. I go out on my own. (this may present some safety issues depending on where you go and how comfortable you are with the idea) Hire local taxis to take you where you want to go. Hire private boats to take you outside the congested reefs that all the ships bring people to. Research ports online at places like cruisecritic .com. You can usually find others on your same cruise looking to hook up with small groups for the tourist spots. The advantages are usually a much more reasonable price, local knowledge and info from your guide and a more relaxed time compared to the ships excursions where they load up 40 or more of you on a bus and haul you around like sheep. It can also greatly open up the opportunities available to you. On one trip to Cozumel, we weren't super excited by the typical local excursions, so we pre-arranged to get a flight at the local airport to take us inland to go to Chichen Itza. Figuring it may be the only time I'd ever be in the area, it was well worth the extra $ and planning to see such an amazing site as opposed to a 4 hour snorkeling trip that pretty much everyone else on our ship did.
Also be prepared to haggle. It's accepted practice to negotiate taxi fares, tourist items at shops etc...
Know what type of vacation cruise you really want. Personally, I hate the days at sea. I'm not much for lounging on my balcony or at the pool for hours or days at a time. I'd prefer my vacation being spent doing something. Others though love the days at sea and the ability to mingle and do nothing. Pick your cruise accordingly.
Time of year, length of trip and the cruise line you choose all impact the type of people you'll find on your ship. A cheaper cruise line such as Carnival will usually give you more of a younger group. Lots of families and that typically means kids running around the ship and being loud. Whereas companys like Princess, Celebrity or Oceania are genarally more expensive and tend to be an older bunch.
Longer cruises also tend to raise the average age. My first cruise was as a 21 yr old with my parents on a 10 day Southern Caribbean on Princess. Most of my shipmates were about 60 plus. While I had an amazing time, I missed having the younger crowd that I was expecting in the night clubs and social events. Typically the shorter cruise length finds more people in the younger age brackets either due to financial means or ability to have time off from jobs or school.
Time of year can have an effect on whether or not kids are out of school, hence more families on board. Also the weather comes into play.
Cruising is a great get away. Just research where you want to go, what you want to do and the type of atmosphere you're looking for. And as others have mentioned, prepare accordingly for all the additional monies you'll spend on top of the cruise price and airfare. To an extent you're nickle an dimed the entire way' but you can have some control over that with proper planning.