Archive: February, 2017

I needed a dad win today

posted by Jeff | Saturday, February 25, 2017, 8:10 PM | comments: 1

Social media is not, to say the least, the most honest representation of the people who use it. I'm sure that some people genuinely want to portray their lives as awesome as a means of over-compensating, but I think most people just don't want to share a ton of the dark and scary stuff. I'm definitely in that second category. I used to air a lot more of my silliest complaints online, but I don't do it anymore.

However, the last few months have been challenging for me as a father. I'm very sensitive about being Simon's dad, probably because I never had an ideal father situation myself. My step-father was a good man who provided for us, but he didn't take a very active interest in much of anything I did. My biological father only had us one weekend a month at best, so he wasn't hands-on either. I suppose that maybe I'm over-compensating, but I want to get it right for my only child.

He's closing in on 7, in about a week and change, and while it hasn't been easy, it has usually been amazing. Lately it feels less easy, and I find myself being short with him, and reacting emotionally over things that I shouldn't. I catch myself being annoyed with him over things that kids find important. Unimportant things that he does can make me angry, and I can't even explain why. It's not that I want him to live without discipline or not work out difficult situations on his own, but I also don't want to be a douche.

While his challenges with ASD are something I feel comfortable rolling with, now we have a recent ADHD diagnosis to contend with. I felt like this was controversial, because I tend to project my own indifference toward things I don't want to do as his challenge, but the initial low dose of meds seem to be having a positive effect at school, but sometimes a negative impact when his ASD side absolutely must complete or do a certain thing (he can't stop thinking about it). The interesting thing is that his expressive language, which his eval and teacher said was a concern, seems to be amped up with the amphetamines.

With Diana out for the weekend at a quilting conference, this seemed like a good chance to bond with my mini-me, and today was a total win. I let him start the day with some computer time (he's kind of obsessed with Planet Coaster), and he was cooperative about stopping when the timer went off. Next, despite some initial fear that was leading me down the path of feeling defeated, we had some lunch at the Polynesian Village Resort then rented a boat to tool around the Seven Seas Lagoon and Bay Lake. Once he felt secure, this turned out to be a great time, and it wasn't even that expensive (with passholder discount) relative to other touristy things we can do around town. After that, we had a nice afternoon at Epcot, enjoying Soarin' and a few of his other favorites. Of course we ended our day out with Dolewhip. He was fantastic, all day, start to finish, and I was able to handle every issue he had successfully.

I needed a day like this.

My friends are often quick to tell me that we're good parents, and that we're doing a good job, but while I appreciate the encouragement, I don't always feel like I'm doing it right. Too many of those days, and you start to have real doubts. I'm generally OK with failing at stuff, but parenting seems too important to get it wrong.

Reminder: Unplug

posted by Jeff | Friday, February 24, 2017, 8:27 PM | comments: 0

I had a pretty great week at work, and felt the most accomplished I have in awhile. Along with the last few weeks, which were less fun, I've been really plugged in and putting in a bit of extra time. I'm feeling a little spent, though the results are worth it.

As much as I complain about people having a disregard for history, and making the same mistakes over and over again, I do it too. When I fully commit to getting to a certain place, I tend to forget that at some point I need to unplug and back away for a bit. That's me right now. With Diana gone for the weekend and Simon in bed, my first thought was, "Hey, why don't I read up on these technologies and maybe play with them a bit." No! It's time to do something that isn't related to work, to use some other muscles (even if it's the one where I do nothing).

I make fun of type-A people, I guess because they engage in non-sustainable behavior, but every once in awhile, I catch myself being like that. It's like that first six months I lived in Florida, going at it non-stop, without a vacation or a real break from it all. No wonder I was so tweaked out then (the house financing thing didn't help).

So this weekend, I will do my best to stick to recreation. You've gotta unplug now and then.

Investing in yourself pays

posted by Jeff | Thursday, February 23, 2017, 10:28 PM | comments: 0

I've been having an amazing week at work, onboarding a new hire (and feeling pretty good about getting it right), working on hiring another, and having good moments with my team. I'm also getting set to speak again at Orlando Code Camp in April, and I'm doing a talk on hiring and getting hired. It got me to thinking about the tear I've been on for the last eight years, and how it started.

While 2009 was a terrible year to find work in my field while living in Cleveland, and that caused a ton of anxiety, it ended up being awesome when it was all said and done. That summer was fun because I was making enough money on my sites to sustain me and more than cover my mortgage. The economy may have sucked, but ad revenue was good in those days. More importantly, the involuntary time off gave me a chance to invest in myself. That was a huge turning point for me. It was the year I actively started managing my career instead of letting it happen to me. It ended with me moving to Seattle on Microsoft's dime.

Almost eight years later, I remember the job anxiety, but mostly I remember how much I was learning. I was like a sponge. I certainly had the time, so I did my best to dig in and learn all that I could about the emerging technologies and patterns that would make me better at what I did. There is no question in my mind that these actions are what set me up for years of success from then on. (I made a cosmically stupid decision to move back to Cleveland in the middle of all that, but one of these days I'll let that go.)

This brief walk down amnesia lane is relevant to the talk I have to give, and I don't think it applies to just my field. Investing in yourself, really spending the time to learn new things, will have incredible return on investment. I'm not talking about doing things for yourself, I'm talking about doing the work to make yourself better. It's not even something to narrow in scope to your career. You can learn virtually anything, and that includes being a better parent and a spouse. The results are tangible.

Forming opinions without knowledge

posted by Jeff | Wednesday, February 22, 2017, 11:07 PM | comments: 0

I've spent a lot of time lately wondering why it is that I don't write as much as I used to. Prior to 2013, it wasn't uncommon that I would write a blog post almost every day. I love writing. I've always loved it. I think part of it was the change in circumstance that came that year, with the move to Orange County, along with generally higher job engagement that has continued ever since that time. The last three years and change have been the most productive professionally of my life. I also find myself being more engaged with my boy, as he's old enough now that you can have conversations and do more stuff together. So collectively, I don't think I have the mental bandwidth for as much writing.

While these are contributing factors to writing less, I'm also become more aware of the fact that I'm not in as much of a hurry to publish my opinions. I've written before that this might be because I don't find them valuable, or because there is enough noise on the Internet without me contributing to it, but it's something else. In the general sense, I don't feel like my opinions are formed enough to share because I don't have enough knowledge to support them. This is a big deal, because I've generally been indiscriminate about saying what I think. OK, so I still am that way, but a drive-by social media post isn't the same as the way I write here.

This self-awareness has been augmented in the last year in part by a renewed appreciation for science, and a new interest in history. I'm the guy who has been saying for years that the availability of all the world's knowledge on the Internet is largely squandered by people who have no interest in it, but I've probably been hypocritical about that to a degree.

Politically, I still find myself being more centrist than perhaps it appears, but really, I may not entirely agree with a guy who wants to give away free college and healthcare to everyone, but it's easier to get in that corner than one that advocates discrimination. While I'm not as quick to form opinions, and wish to generally consider more data, I can still consider a very short list of moral absolutes. Killing people is bad, for example, and I see no logical reason to ever tolerate discrimination of people based on race, ethnicity, gender, religion, sexual or gender identity, etc. But beyond that, it's hard to adopt any particular broad ideology.

There are still a lot of things I want to write about, but I haven't thought them through. So many parenting topics, comedy and politics, technology, energy, career, code... I have to get it out. For now, stuff isn't well-formed enough.

Project Fi is Fi-a-licious

posted by Jeff | Monday, February 20, 2017, 10:37 PM | comments: 0

Back in December, when I decided to unnecessarily purchase a Pixel phone, I wrote about how we were also switching from AT&T to Google's Project Fi, the pseudo-carrier that actually works on the networks of T-Mobile, Sprint and US Cellular (and WiFi if you've got it). There's a lot of talk in the press right now about the sudden unlimited data wars now between the big carriers, which are actually not a terrible deal, but we're still making out pretty well on Fi, and this is why.

We're not big data users. I work from home, Diana works part-time, and we're pretty much always around WiFi. Our local cable company has access points almost everywhere, too, so I find myself on WiFi even when I'm not looking for it. We're not going out of our way to really measure our cellular data usage, but we didn't use much when we had 15 gigs pooled to play with on AT&T. Now that we've had a full month both on the new service, using about 1.4 gigs combined, we paid all of $56 for the two lines, including all taxes and fees. That's not bad. On AT&T, we would have been paying about $95 when it was all done.

The WiFi calling has been a huge plus. Florida houses are practically Faraday cages, because they're concrete on the lower floor and lined with foil. It doesn't matter who your carrier is, the signal isn't good unless you're by a window. Google's network foo generally works well in that sense, though there have been a few odd times where the signal was too weak and it didn't fallback on WiFi, so I've missed one call. It was spam anyway. Sometimes, I just put the phone in airplane mode and turn on the WiFi at home, which works very well, and the call quality is a miracle. Oh, it's nice to use Android's native visual voicemail, too, for those annoying times when someone leaves a message. The transcription is surprisingly accurate, too.

I have to mention the international support. It just works. We were in the Bahamas a few weekends ago on a Disney cruise, and at Castaway Cay, we had a nice strong 3G connection that was more than adequate for posting selfies on the beach and backing up photos. The Fi app greets you on the new network, tells you what the rates are (unlimited texts, 20 cents/minute for voice calls, data at the same rate as the US). That's pretty cool. I was very impressed. And again, even in that vacation situation, we still paid the $56 for the month.

I have hit some spots that weren't super strong for cellular signal, but they were rural places where no network is great. When we were on the far side of the dunes at the Canaveral National Seashore, it was tough to get a signal, but it's unsurprising because of how far "out there" you are. Everywhere else, like downtown Orlando, Delray or even The Villages has been fine. WDW is covered pretty well too, though they have free WiFi everywhere.

Overall, we've been really happy with the service. I like the little widget their app comes with too, with a circular data usage meter. Almost a week into this month and we've only used .18 gigs. I realize for big data users, this is likely totally inadequate, at $10/gig, but this suits us fine. I think competition is finally driving prices down, though I wonder how that will go during the 5G rollouts a few years from now.

Revisiting the politics of fear and the common enemy

posted by Jeff | Saturday, February 18, 2017, 7:32 PM | comments: 0

I've written before about how fear seems to be at the core of American politics in recent years. As I've said, this is not something that is the exclusive domain of either side. While the focus now is on the right's desire to make sure you're scared of brown people and the extraordinary threat they pose to you, the left wants you to be scared of rich people and your own inevitable financial ruin. Scared people have a strong tendency to get beyond people that say they can protect you from the threats, but beyond the fear, what they're really doing is gathering support to confront a common enemy, real or not.

Donald Trump has managed to turn this into an art form, and takes it one step beyond the common enemy. He has learned to identify the enemy, and then blame that enemy for his own failures. This isn't a new tactic, certainly, as taking responsibility for anything isn't really his thing. It's awfully convenient now that the new enemy to unite against is the press, because in his mind, they are the reason there's a perception that he's not doing particularly well. I thought that participation trophies were the exclusive domain of bed-wetting liberals, but apparently not.

This isn't the end of the scapegoating, however. Even Fox "News" is starting to turn on Trump. Congress, even the GOP side of the aisle, will not be far behind. At that point, it won't just be the press, it will be Congress that is the enemy. The judiciary is already the enemy.

We have to do better than this. The right will have us believe that we're more likely to be killed by a terrorist than win the lottery, when the reverse is true. The response is not logical. We can't let the other side have us believe that financial success is the result of nefarious intent either. We get the government we deserve when we allow these ridiculous fear-based policies dominate our politics. Identifying an enemy is not the thing that makes us better. Identifying a problem and objectively looking for solutions is what makes us better.

A new found love for American history

posted by Jeff | Thursday, February 16, 2017, 4:30 PM | comments: 0

I read an interview recently with some prominent anthropologist and historian who explained why humanity has managed to keep a pretty consistent cycle of destroying itself periodically. He was basically validating the theory that history tends to repeat itself, and he explained why. Generally, the worst of human action is spaced out by several generations, and he suggested that this is why the "war to end all wars" was not, in fact, the last world war, or any war for that matter. He said that as the reality of human suffering becomes less distributed and separated by more generations, we simply forget about it and do dumb things, oblivious to history. Another story I read made the point that the Internet may have changed that, but it's hard to say if it makes things deteriorate or get better faster. On on hand, information is freer than ever, but on the other hand, humans have a strange desire to live in willful ignorance.

Bright and cheery thoughts, right? Regardless, this fascinates me in part because one could argue that history can serve as a way to both predict a possible future and absorb some serious knowledge. Of course, there's a certain historical musical that no one has ever head of (wink, nudge) that obviously has sparked a great interest in American history. I've been reading the Chernow biography of Alexander Hamilton, and I can't wait to read his George Washington book as well. Going deeper than the superficial stuff that you might get to learn in high school (if you got anything out of it at all) has been extraordinary. The United States almost never came to be, and if we're being honest, the founding fathers were kind of a bunch of dicks. They were brilliant, well-intentioned people, certainly, but they weren't people I'd go get a beer with. They kind of gloss over in school that Washington was a slave owner, you know? The self-evident truths were a lot of talk that didn't extend far beyond white men who didn't want to be accountable to the king, unfortunately.

Despite the character issues, they got it more right than wrong, and it took a fair amount of humility to leave space for the Constitution to be changed and improved. There's no question that the gears of progress have been painfully slow, and even after the abolishment of slavery and granting women the right to vote, filling in the blanks took entirely too long, and it's not finished. It's staggering to think that Jim Crow laws were still a thing until a few years before I was born. That's nuts. Still, when I read some of the theory behind the structure of the US government, I can see how things moving faster could have disastrous consequences. Washington may have had slaves, but the humility he exhibited in his farewell address is brilliant:

"Though, in reviewing the incidents of my administration, I am unconscious of intentional error, I am nevertheless too sensible of my defects not to think it probable that I may have committed many errors. Whatever they may be, I fervently beseech the Almighty to avert or mitigate the evils to which they may tend. I shall also carry with me the hope that my country will never cease to view them with indulgence; and that, after forty five years of my life dedicated to its service with an upright zeal, the faults of incompetent abilities will be consigned to oblivion, as myself must soon be to the mansions of rest."

Which leads to the present. Equality for the LGBT community was a slow-moving train as well, then, in the span of a few years, the marriage issue was settled. We've gone from an arbitrary war on drugs to the legalization of weed in a few years. I'm not particularly interested in it, but I've been swayed and understand now how destructive the fake war was. Now I see a slow awakening around carbon and energy policy, and I think that's going to blow up next. Information, history, knowledge can drive people forward if they choose to see it.

American history, and really world history, has been pretty much on the better side of what humans are capable of, and the cycles of suck do seem to get shorter over time. In a bizarre time when indifference and apathy has led us to the hottest mess of government I've seen in my lifetime, it's that historical context that I lean on. The American way has been one of persistence, and I hope we can keep that up.

Packages, libraries and frameworks, oh my!

posted by Jeff | Tuesday, February 14, 2017, 8:12 PM | comments: 0

Last night I wrapped up about 16-ish development hours rewriting and refactoring some code used to integrate with a third-party service. (Actually, I spent double that time, but the other half was spent on a lot of peripheral refactoring and unit testing, as well as significant changes to the feature set.) The TL;DR version is that the previous integration work used an open source library that didn't quite do things right in wrapping a REST service, so a lot of the normal kinds of failures you expect to get were difficult to get instrumentation around. I completely dropped the dependency on that library. Now it works, works fast and fails in a predictable and observable way. Hopefully my team and customers will be happier for it.

Interestingly, the dev team of the product we're integrating with once wrote a blog post suggesting that you really don't need a library, SDK or whatever wrapped around their API, because REST is pretty simple. There was a time when I might have said that I also wasn't interested in reinventing stuff, but I've eventually come around to see their point. In fact, as much as I've embraced the open source world and taken shortcuts to reach my destination faster, I've come to realize that this conflicts to some degree with my hiring philosophy.

I can't stand the developer types that think that quizzing people on encyclopedic knowledge of algorithms and design patterns is a good use of time. Sure, you should have a good understanding of how HTTP works, but I don't care if you remember what SOLID stands for as long as you practice it. I'm absolutely in the column of putting a candidate through a coding exercise, and I don't care what they need to do to arrive at the end product, because it's that journey that I'm most interested in. The most valuable developers, in a world of managed code and countless open source projects, are the ones that can skillfully compose solutions in a way that makes the product maintainable, extensible and scaleable. If they have to get all over StackOverflow to do that, I don't care, so long as they thoughtfully compose and don't just cut-and-paste.

That brings me back to my point about dependencies. Packages, libraries and frameworks definitely have their place in your project, but taking those dependencies should never be taken lightly. Should you endeavor to write your own front-end UI framework or a back-end dependency injection container? No, that's a waste of time, and you probably won't be good at it. Should you take a dependency on some package that you could write yourself in 17 lines of code? No, because those kinds of trivial dependencies can "break the Internet." The reality is that you need to look at the cost-benefit ratio of taking these dependencies, because sometimes the shortcuts don't save as much time as you'll use later on supporting something you don't own.

Remote work works

posted by Jeff | Monday, February 13, 2017, 11:00 AM | comments: 0

Facebook kindly reminded me recently of my start for my first 100% remote gig, and it occurs to me now that I've been doing it for four of the last five years. The break occurred during my contract year at SeaWorld corporate. That was a fun year, and while I didn't mind the commute, there's no reason I could not have done the same job remotely.

I've had teams composed of people from Seattle to Tampa. The distance has never been a deterrent to getting work done. The technology to collaborate and make things happen is pretty mature, and it has been for a long time. I see my coworkers every single day, even though my current team is spread out all over Florida (plus Atlanta and soon, Oklahoma City). Despite the distance, I feel like I know them pretty well. Colocation may have some benefits, but honestly, they're limited to being able to go out for lunch together.

I still found it weird a couple of years ago when Yahoo decided to end remote work. Think about what that means: Everyone had to live in a more expensive place, Yahoo had to pay for real estate in an expensive market, people who bailed had to be replaced at enormous cost, morale took a hit. The company line was that they wanted higher levels of collaboration, but as someone who has delivered outstanding work with distributed teams, I call nonsense on that one. I think it was based on the desire to command and control. The problem is that there's no truth to that scenario. Physically seeing someone in a seat is not indicative of their ability to do the job. In fact, the thing I've been saying about remote work for years is the opposite: When you're remote, the only thing you really have to show for your work is results (or lack thereof). That's a pretty powerful motivator to do your job well.

There are benefits for the worker that go beyond the basic flexibility of time management. You don't lose literally weeks of your life to time spent commuting. (A half-hour each way commute sucks 7.5 weeks of your year away from you.) Heck, that's good for your employer too, because I think generally one agrees that time not spent commuting ends up being time spent working. You're not using energy to move your car. Even with Diana working part-time and me occasionally going to the office, we scarcely drive 600 miles per month. We could probably get away with one car about 95% of the time.

I'm not opposed to commuting, but remote work makes so much sense.

Now, it's not all perfect. I have two related challenges. First, I don't always respect boundaries in terms of time. I've been that crappy dad who has asked my kid to not bother me at 6, 90 minutes before his bedtime, and I don't like myself for that. Second, I don't move around enough, and I'm making a lot of poor decisions about exercise. Sure, I could go walk a few miles in the morning, but I talk myself into knocking out some email as soon as I get up. That's dumb.

The people in your path that make you want to be more

posted by Jeff | Friday, February 10, 2017, 1:00 PM | comments: 0

As my friends all know, I have a Hamilton problem. I'm not listening to it as much now, but as one of the more exceptional pieces of art created in my lifetime (I don't think I'm overselling it), it sure has opened up a lot of things to think about in terms of history, finding our place in the world, the way our government works, the way we as humans affect each other. So I was struck by an interview that 60 Minutes re-aired and updated a bit with Lin-Manuel Miranda, when he mentioned that it's often the crossing of other people in our lives, in his case Alexander Hamilton, centuries after he died, that inspire us to be more. That's really profound.

Indeed, it's easy for most of us to encounter people and wonder, "What am I really doing with my life?" I've written countless times before that scope doesn't matter that much. I think that frankly if you can raise a child and not screw them up too much, you've already achieved one of the hardest things ever regardless of whether or not anyone recognizes you for it. But sometimes people still challenge you, whether it's in person, in books, in the past or the present. Sometimes the people may not even be real, as a work of fiction.

Like a lot of things in life, I don't believe that this is simply the result of randomness (though it may help). You can make this situation happen for yourself if you choose. I live by the idea that you're only as good as the people you surround yourself, so that's part of it. Beyond that, you seek out others who make things happen. You read books, especially more non-fiction. You study history and its most interesting people. There is a lot to draw on out there, but you have to want to see it.

If the world can get through the next decade or so, beyond all of the willful ignorance, the optimist in me sees a renaissance. Creative, driven people can and will solve problems. Knowledge, learning, science will be celebrated. I think our humanity depends on it, and we can be motivated to do it.

Disney Wonder, February 2-5, 2017

posted by Jeff | Sunday, February 5, 2017, 10:21 PM | comments: 0

Given the frequency of our cruising the last few years, I suppose I make these little trip reports mostly for my own reference, so I can look back at the way things changed, to catalog the moments so I understand the sequence. The truth is, I think I appreciate the opportunity for these vacations more as time goes on. My child is growing up fast, and as I close in on mid-life, I'm highly aware of how brief these moments are, and how fortunate I am to have them.

The Disney Wonder had an extensive dry dock rehab in October, some months after we sailed on it in Alaska. As the second-oldest ship in the fleet, some 17 years and change, certainly it had been well maintained, but it was looking a little dated in places, tired in others. What I noticed in particular included restrooms with broken tile, a buffet that looked old and was laid-out inefficient, an insufficient kids pool area, and aging restaurants. Of course, using the improvements to the Magic, the year-older ship, as a blueprint, they brought the Wonder up to date and nailed it almost every way. There are no signs showing that this ship is the age that it is. I was talking to an officer that mentioned the exterior in particular, using modern paint, is much easier to maintain, much shinier, much less prone to fading. It's really a beautiful ship, and when you're in port with some of the hideous ships of other cruise lines, you have to appreciate Disney's desire to build something classic in appearance.

This was a 3-night cruise, but because of the off-season placement of the ship (it spends much of the year on the west coast), it departed on a Thursday and did not stop at Nassau. The Bahamas are a little crowded this time of year, I imagine, which is good because the fares are all lower. So the second day was spent at sea, the next at Castaway Cay. As it turned out, our day at sea included turning around and getting close to Freeport on Grand Bahama to transfer off a passenger for a medical emergency, but otherwise the ship was in no hurry until the return trip to Canaveral. We never get off the ship in Nassau anyway, and there's plenty to do onboard.

From a food standpoint, there have been some tweaks to the menus in Triton's and Animator's Palate, but they're about the same. Animator's Palate has upgraded video screens (and probably audio) for the animation show, but the teases they made showing kids drawings animated on screen were not there. The big dining story is the creation of Tiana's Place, and it's amazing. It's a new menu, and there is live music. My only criticism is that the staff does a parade around the restaurant, and it gets loud, and in our case it came at the expense of getting our desserts in a timely fashion. When you have a kid having long, busy days, drawing out dinner time is not ideal.

Also, minor complaint, the Wonder has soft pretzels, but they insist that they only offer them when they're at sea, and that sucks. They said this in Alaska as well, even though it didn't seem to be true. Major complaint: They made the one bar a "proper English pub," and removed Strongbow (the dry stuff from the UK) and replaced it with... wait for it... Angry Orchard. Gross. Having "real" Strongbow has been one of my favorite things about DCL beverages.

The Oceaneer's Club and Lab kids areas were completely rebuilt, which is good because they were tired and dated. However, aside from programmed activities, it didn't seem like there was that much for an enterprising kid to just pick up and do. To make matters worse, the new Slinky Dog slide, Simon's incentive to enter the club, was almost never open because apparently they have to staff it. That meant we couldn't unload the kid for an hour or so. Finally, on the last night, they opened it right before dinner, and he went in. Then, unexpectedly, they served macaroni and cheese for dinner in the club, and Simon made friends and stayed there.

The live entertainment on our July sailing was a little mediocre, in part because the old Toy Story musical was not very good, and also the other shows have tracked chorus parts. That's still true, unfortunately, but they ditched Toy Story for a very ambitious adaptation of Frozen. I love the movie, but I try to keep my expectations reasonable. I've seen a lot of high quality, union theater lately, so I guess I'm more critical than I used to be. Disney has a lot of great art to work from, and we've seen great stage adaptations of other films. I'm happy to report that they almost completely nailed it. You wouldn't know that it was the same company doing the other two revue-style shows.

In terms of technical execution, this was the best design we've seen from any onboard show. It was a skillful mix of scenery, video projections and puppetry, carrying on the traditions of The Lion King and Finding Nemo: The Musical at Animal Kingdom. The choreography was great to watch. Vocally, the chorus was live, addressing my biggest complaint. Most importantly, the actresses playing Anna and Elsa were not directed to emulate Kristen and Idina. In fact, I would even say that the performances they gave were outstanding, but played to their strengths. Elsa's "Let It Go" had different "wow" moments, and it was great. It's everything that you want theater at sea to be, but almost never is. I think they deserve a lot of credit.

It wasn't just the theatrical shows, however, that were fun. As I said, the live musicians in Tiana's Place were above average. The lobby and bar singers were all much better than I've seen on previous sailings. Heck, even the bingo crew was pretty entertaining. I finally saw Rogue One (whoa, that was dark) and Moana (Lin-Manuel can do no wrong).

We had a perfect day at Castaway Cay. Well, the water was too cold for my soft Florida body, but we had a cloudless blue sky, 75 degrees and a light breeze. That's not a bad way to spend a day at the beach.

There were a few challenges we had with Simon, but a lot of that is rooted in the fact that Diana and I really want to do a cruise without him. I love him dearly, but he's been very challenging lately (that's a post all to itself). Fortunately, we had my dad aboard this time, so we did get a few hours to enjoy a couples' massage, something we haven't done in years.

Another successful trip in the books, for sure, even with a few relatively minor hiccups. DCL does an amazing job.