Fundamental SEO Misunderstandings & Tips

Many people wonder why their website doesn’t rank high for a particular keyword. Let’s take cybersecurity as an example because I am familiar with that space. A cybersecurity company usually has products and events, and a need to market them. One type of product is a tool to manage vulnerabilities. The industry refers to the topic as “vulnerability management” or “VM”. Marketers would then often ask, “why isn’t my VM product page showing up at the top of Google when people search for “vulnerability management”. Likewise, if the company has an annual user conference with session talks about cybersecurity, marketers will again often ask why their conference website doesn’t show up for the keyword “cybersecurity”. The main reason lies in search intent.

Search Intent

When people search for “vulnerability management” or “cybersecurity”, they are most likely not searching for a VM product or a cybersecurity conference. These generic terms likely indicate that they are searching for information about them rather than a tool or a conference. Consequently, search results for those terms show informational pages containing content explaining what they are as if a user searched for “what is vulnerability management” or “what is cybersecurity”.

There are 4 types of search intent:

  • Navigational intent: Users want to find a specific page (e.g., “reddit login”)
  • Informational intent: Users want to learn more about something (e.g., “what is seo”)
  • Commercial intent: Users want to do research before making a purchase decision (e.g., “best coffee maker”)
  • Transactional intent: Users want to complete a specific action, usually a purchase (e.g., “buy subaru forester”)

Therefore, for the VM tool and cybersecurity conference examples above, the correct search terms to check would be something like

  • (best) vulnerability management tool
  • cybersecurity conference

The qualifiers “tool” and “conference” make it clear what people’s search intent is so they find content relevant to what they are actually looking for. But how do you know what keywords people are searching for? This is where keyword research tools come in.

Keyword Research

To do keyword research, you can use a free tool like Google Keyword Planner or a paid tool like Semrush. I’ll use Google Keyword Planner. You can use it to

  • discover new keywords and
  • get keyword search volume and forecasts.

Continuing with our example, let’s see how many people search for the following keywords:

  • vulnerability management
  • vulnerability management tool
  • cybersecurity
  • cybersecurity conference

I enter those keywords as shown below…

and Google spits out the following data

The keyword “vulnerability management” gets many more searches per month compared to “vulnerability management tool”. But, since people searching for “vulnerability management” are probably not looking for a tool or software, people will likely ignore your VM product page even if it does show up in the #1 spot. The keyword “vulnerability management tool” gets fewer searches, but ranking for it will at least match your product page with a targeted group of interested people. Therefore, you’ll want to optimize your page for the keyword “vulnerability management tool”, e.g. by adding the word “tool” to your page copy, and monitor your Google page rank for that keyword.

As for the conference example, though the keyword “cybersecurity” gets a huge number of searches per month, it’s such a generic term that most people are probably not looking for a cybersecurity conference when they search for “cybersecurity”. On the contrary, the keyword “cybersecurity conference” is more specific / targeted and gets a decent search volume. Therefore, that is the term you should optimize for and monitor your page rank for.

In addition to the keywords you may already know about, you can using Google Keyword Planner to discover other relevant keywords. For example, if I enter “vulnerability management tool”…

I get the following results.

It looks like some companies like “Qualys” and “Rapid7” are known for having vulnerability management tools, so people looking specifically for their respective product pages just use the company name as a qualifier. However, there are some non-brand keywords that get a decent amount of searches as well, including “vulnerability management program” and “vulnerability management process”. While these keywords can be included in a VM product page, they may deserve to have their own pages.

How Long to Rank High

Now that you know what keywords to target, another misunderstanding people have is that adding keywords to a page will result in a higher page rank in just a matter of weeks. First of all, keywords are just one of many factors that affect page rank. SEO is a long-term strategy. Unless you’re looking to rank high for a long-tail keyword – a keyword so specific that there is very little competition – don’t expect immediate results.

How to Add Lower Thirds Motion Graphics in Adobe Premier Pro

A lower third is a text title or graphic overlay placed in the lower region of the screen. Motion Graphics templates are a file type (.mogrt) that can be created in After Effects or Premiere Pro. Here’s an example of a motion graphic lower third.

There are many motion graphic templates for lower thirds available online, e.g.

In this tutorial, I just get a free one from Mixkit.

Download MOGRT template

Download this free template and unzip it. You’ll get an mogrt file and an mp4 file showing how the animated title looks.

Add a video to your timeline in Premier Pro

Drag a video to the timeline pane.

Open the Essential Graphics pane

Click on Window > Essential Graphics. You’ll see the Essential Graphics pane on the right.

Install the mogrt file

In the Essential Graphics pane, click the “Install Motion Graphics template” button in the bottom right corner. Browse to the mogrt file and click Open. The template will appear at the top of the list of templates in the Essential Graphics pane.

Drag the template to the timeline

I dragged it to the V2 track.

Edit the template

Double-click the motion graphics clip in the timeline (pink bar) to edit the template. Depending on the template, you can edit the text, colors, size, positioning, etc.

Preview the lower thirds title

Click the play to preview the lower thirds animated title. You may find the duration to be too short.

Extend the duration of the lower thirds title

Move the playhead in the timeline to the point where the title text is fully shown and not moving. At that point, right-click on the motion graphic clip in the video track (pink bar) and click on “Insert Frame Hold Segment”.

This will split all clips at that timestamp and the motion graphic clip will be split such that you can extend the middle subclip, which is the clip containing the frame showing the full title text, to increase the duration of the title. You will need to move the right subclip of the animated title to the right to make room to extend the duration of the middle subclip.

For the split video clip, just drag the right clips toward the left clip.

You may end up with something like this.

Preview the animated lower thirds title. If it looks good, export the video. Otherwise, tweak the title further.

Remove an Object, Text or Watermark from a Video Using Adobe After Effects Content-Aware Fill

The video below has some text added to it.

Video with overlaid text / watermark

The video below is the same video but with the text removed.

Same video with text / watermark removed

We can remove objects like text and watermarks from videos using Adobe After Effects (AE) content-aware fill feature. Here’s how I did it for the video above.

1. Open your video in Adobe After Effects

Choose “New Composition From Footage” and select your video.

2. Shorten work area

The content-aware fill takes a long time to process. To speed up testing, shorten the work area to a 2-second section by dragging the blue start and end markers on the timeline.

3. Create a mask

Click a tool like the pen tool and create a mask area around the object (in this case, text) you want to remove.

4. Adjust mask settings

In the video track, expand the Masks and select “Subtract”. For the Mask Feature, choose 20 pixels for the vertical and horizontal feather. For the Mask Expansion, choose 20 pixels as well. Play with these settings until you find values that produce good results.

These changes cause the mask to look like this

5. Adjust content-aware fill settings

If the content-aware fill pane isn’t open, open it by going to Window > Content-Aware Fill.

For the alpha expansion, I set the value to 13. You can experiment with different values.

For the fill method, choose “Object”.

For the range, choose “Work Area” because we only want to apply the fill to the short 2-second work area for now.

Click the “Generate Fill Layer” button. You will be asked to save the project if you haven’t already done so. You will then see AE analyze and generate the fill layer.

You will see the fill layer above the video layer in the list of tracks / layers.

6. Preview the content-aware fill layer

Click the play button in the preview pane to preview the content-aware fill.

This is how it looks for me. I think that looks good. If it doesn’t look good, go back and tweak some of the previous settings and try again.

7. Apply content-aware fill to the entire range containing the text to remove

Move the blue start and end work area markers to the beginning and end where the object / text you want to remove.

Disable the test content-aware fill layer by toggling the eye icon.

In the content-aware fill pane, click “Generate Fill Layer”. AE will create a new content-aware fill layer above our test layer. If the work area duration is long, this will take time to process.

Content-are fill will go through an analyzing phase followed by a rendering phase.

8. Preview complete content-aware fill effect

Click the play button in the preview pane again to see how the fill effect looks in the entire clip. If it looks good, you can export the video.

9. Export the video

Click File > Export > Add to Render Queue.

If the output location is unspecified, choose an Output To location. Then click the Render button.

Update: Use a reference frame for better results. The more reference frames, the better the results.

Create an Animated Travel Map Using Keynote

In this post, I’ll show you how to make an animated travel map like the one below using Apple Keynote.

1. Get an image of a map

I usually just go to Google Maps, zoom in/out to the area I want to show, then take a screenshot. In this example, I took a screenshot of the USA because I want to show an animated flight path from San Francisco to Miami.

2. Crop map and optionally add labels

Open the screenshot in an image editor (I use Photoshop) and crop to your target video resolution. My target resolution is 1920 x 1080 (standard HD). I also added some red dots where the start and end points will be as well as some city labels.

3. Get a transparent image of a plane, car, train, boat, etc

Since I want to show an airplane animate along a path, I looked for an image of one in Google Images. The background should be transparent. In Google Images, you can choose Tools > Color > Transparent to find images on a transparent background.

I chose this image.

4. Create a blank Keynote presentation

Open Apple Keynote and choose the basic white theme.

You will get a single slide. Select and delete everything in the slide.

5. Insert background map

Go to Media > Choose and select the background map.

6. Draw a path

Go to Insert > Line > Draw With Pen and draw your travel path.

Click on the start point then click on the end point. You will get a straight line.

In the middle of the line, there will be a point. Click and drag it up if you want to create a curve. Repeat with other midpoints as necessary.

When you’re done, hit the ESC key. We now have our travel path. Let’s change the style of the path. I’m going to make it red and thick. In the right pane, under Format > Style, you can edit the style of the element (curve). I choose a red color that is 7 pt thick.

7. Animate the path

In the top right corner, choose the Animate tab and then “Add an Effect” > “Line Draw”.

You can then change the default animation from 2 seconds. I changed the duration to 10 seconds so that in my video editor, I can slow it down without it appearing jumpy. I also changed the acceleration to “None”.

Click the “Preview” button to preview the path animation.

8. Add the airplane image

As in step 5, go to Media > Choose and select the airplane image.

Scale the airplane by dragging one of the corners. Drag the airplane to position it at the start point.

Rotate the airplane. In the top right choose Format > Arrange and adjust the rotation value such that the nose of the plane is aligned with the flight path.

9. Animate the airplane

In the top right, click Animate > Action > Add an Effect > Move.

Drag the airplane to the end point. Set the duration and acceleration to match that of the flight path (10 sec, None).

Click Preview to preview the animation. The airplane doesn’t yet follow the flight path. Check the “Align to path” checkbox. A point will appear along the line between the airplane’s start and end points. Drag that middle point to where the flight path is.

Click Preview again. You will see the airplane animate along the flight path.

10. Animate the flight path and airplane at the same time

In the top right, click Animate > Build Out > Build Order.

You will see a list of all animation effects. The first animation is the line (flight path). The second is the plane. Choose te second animation and then under “Start”, select “With Build 1”.

11. Export the animation

Choose File > Export To > Movie.

Since there’s only 1 slide, you can leave “Slides” to “All. The resolution should match that of the background image (1080p).

Home / Garage Gym For Upper-Body Training

Going to the gym is a hassle, and with our busy lives, it’s hard to go routinely to achieve fitness goals. That’s why I decided to just move the gym into my home by creating a home gym in my garage. Of course, space is limited, but I do have enough space for some equipment. Since space is limited, I decided to focus on upper-body workouts. To see the biggest gains, most people would agree that the upper-body muscles to target in descending order as follows: (each muscle’s relative size is also shown based on this article)

  1. Delts / Deltoids (shoulders) – 380 cm3
  2. Tri’s (triceps) – 370 cm3
  3. Pecs / Pectoralis Major (chest) – 290 cm3
  4. Lats / Latissimus Dorsi – 262 cm3
  5. Traps / Trapezius
  6. Bi’s (biceps) – 143 cm3

Dumbbells / Free Weights

Almost all exercises can be done using dumbbells or free weights, which don’t take a lot of space. However, I personally don’t like dumbbells or free weights because

  1. it’s hard to lift heavy weights with them
  2. they are more dangerous than using machines, which makes you opt for lower weights
  3. it’s harder to balance them and use proper form compared to using a machine
  4. they are not as comfortable to use compared to machines
  5. you are limited to maybe 100 lbs per dumbbell


I find resistance machines way more enjoyable and safer to use, but they can take up a lot of space. Fortunately, there are some options that are designed for home gyms. Following are the machines I have and my opinion about them. They all accept 2″ Olympic plates.

Bicep Curl and Tricep Extension Machine

Website (cheaper on

This machine works well for working your biceps. It accepts 2″ Olympic plates. It’s not as comfortable to use as similar machines that use stacked plates. However, those machines are much more expensive.

Learn more about the muscles worked

This machine can also be used to work your triceps, but it’s uncomfortable to use it for that.

Learn more about the muscles worked

I use this machine to work my triceps, but I use a dumbbell. I sit backward and do tricep extensions as shown below.

Chest Press Machine

Website (cheaper on

This chest press machine works very well. You can incline the bench to train your upper chest, but it’s a little less comfortable in that position as your lower body is lower to the floor. The manufacturer claims you can use it to also do situps, but it doesn’t work well at all for that purpose.

As this machine is called a chest press machine, it primarily targets the chest. However, it also works the triceps to some extent. However, don’t expect much work on your triceps. A seated dip machine does a much better job for that.

Learn more about the muscles worked

Seated Dip Machine

Website (cheaper on

When the handles are turned in and your back is against the back cushion, this machine primarily targets your chest.

When the handles are turned in and your back is leaning forward parallel to the machine’s arms, it primarily targets your triceps.

Target the chest. Learn more about the muscles worked
Target the triceps. Learn more about the muscles worked

Deltoid and Shoulder Press Machine

Website (cheaper on

This machine works well for training your side and top muscles of your shoulder.

Learn more about the muscles worked
Learn more about the muscles worked

2″ Olympic Barbell with Collars and Stand

Barbell Stand
Clamp collars

Barbells work well for doing shrugs to work your traps. The stand makes it easy to add/remove plates. The clamp collars secure the places well.

Learn more about the muscles worked

Incline Close-Grip Bench Press

Unlike the regular incline bench press, which targets your upper chest, the close-grip version targets your inner chest and triceps. In order to get better efficiency from this exercise, it is recommended to do high repetitions with low weights instead of lifting too much weight.

Learn more about the muscles worked

Rubber Olympic Plates

I bought mine after Black Friday, so I got a deal. 2 x 10 lbs, 2 x 25 lbs, and 2 x 45 lbs for $168.

Training Routine

Since you should work the same muscles on consecutive days, I work each muscle 3 times a week with one rest day. This is the schedule I follow.


Incline Chest Press (4 sets)
Incline Close-Grip Bench Press (4 sets)
Seated Tricep & Chest Dip (4 sets)
Seated Overhead Dumbbell Tricep Extension (4 sets)

Shoulder Press (4 sets)
Shoulder Lateral Raise (4 sets)
Barbell Shrugs (4 sets)

Seated Bicep Curls (4 sets)

Incline Chest Press (4 sets)
Incline Close-Grip Bench Press (4 sets)
Seated Tricep & Chest Dip (4 sets)
Seated Overhead Dumbbell Tricep Extension (4 sets)

Shoulder Press (4 sets)
Shoulder Lateral Raise (4 sets)
Barbell Shrugs (4 sets)

Seated Bicep Curls (4 sets)

Incline Chest Press (4 sets)
Incline Close-Grip Bench Press (4 sets)
Seated Tricep & Chest Dip (4 sets)
Seated Overhead Dumbbell Tricep Extension (4 sets)

Shoulder Press (4 sets)
Shoulder Lateral Raise (4 sets)
Barbell Shrugs (4 sets)

Seated Bicep Curls (4 sets)

For each muscle, I follow this schedule:

Set #1 (warmup)1 minute
Rest2 minutes
Set #21 minute
Rest2 minutes
Set #31 minute
Rest2 minutes
Set #41 minute

Set Up a Static Website Using AWS EC2, Apache and GitHub

Launch an EC2 Instance

  • Log in to AWS and go to EC2 > Instances > Launch an Instance
  • Enter a name. I’m calling mine “My Web Server”.
  • For Application and OS Image, I’ll just choose the default, which is “Amazon Linux 2023”.
  • For Amazon Machine Image (AMI), I’ll choose the default, which is “Amazon Linux 2023 AMI”
  • Under Key Pair, click “Create new key pair”.

Amazon EC2 can easily create a key pair for you. Just enter a key pair name. I chose “aws-ec2”. OpenSSH is available on Linux, Mac, and Windows 10+, so keep the default key format of .pem. On Windows 10+, OpenSSH is an optional feature you must install. Click the “Create Key Pair” button. The private key will be downloaded to your computer. Keep it in a safe place. You will need it to SSH into your EC2 instance.

In the Network Settings section, since we want to SSH into the EC2 instance and we want to be able to browse our website over HTTP and HTTPS, check those checkboxes.

Leave everything else at their defaults. Review the summary and click the “Launch Instance” button.

You will then see your EC2 instance listed. Wait for the “Status check” to change to “2/2 checks passed”.

Once your instance has been set up, click the button to connect to the instance.

SSH into EC2 Instance

You have a few options to connect to the EC2 instance. For simplicity, choose EC2 Instance Connect. This will open a new browser tab with shell access. Leave the default username as “ec2-user”.

You’ll notice the command prompt changes to ec2-user@ip-172-31-47-114 which is my default username (ec2-user) followed by my EC2 instance’s private IP (ip-172-31-47-114).

Install Apache

Since we installed Amazon Linux 2023, follow these instructions to install Apache. Since we don’t need MySql and PHP, ignore the commands and instructions for those. For example, instead of

sudo dnf install -y httpd wget php-fpm php-mysqli php-json php php-devel

just do

sudo dnf install -y httpd

Make sure to follow the instructions to set the file permissions so that Apache can serve the website.

  • The Amazon Linux Apache default document root is /var/www/html
  • The Apache config is at /etc/httpd/conf/httpd.conf
  • The Apache logs are in /var/log/httpd/

To view Apache errors, run the following command

sudo tail -100 /var/log/httpd/error_log 

Test that Apache works by going to the public IP address WITHOUT “https”, e.g.


These instructions show how to create a self-signed certificate and a CA-signed certificate. For a self-signed cert, you don’t need a domain name. You can access your website over https by IP address, e.g.

For a CA-signed cert, you can follow these instructions to automate certificate renewals using Let’s Encrypt with Certbot. You can also use AWS Certificate Manager to manage and automatically renew certs.

Get a Fixed IP Address

The default IP address that AWS gives you is dynamic (will change whenever the server restarts). To get a static (fixed) IP address, get an Elastic IP Address. Once you get one, try to access your website over https, e.g.

Put Your Website in a GitHub Repo

  1. Create your website locally in a folder. If you have an existing website under git version control with a lot of history and you want to remove the history, git clone the repo into a new folder, delete the “git” folder, and then run git init.
  2. Create a new repo in GitHub
  3. Push your local repo to GitHub
git remote add origin [email protected]:...
git push -u origin

Clone the GitHub Repo to Your EC2 Server

  1. In your EC2 CloudShell (web-based terminal), install git (sudo dnf install git -y). Learn more.
  2. Generate a new SSH key and add it to the ssh-agent. Since your EC2 instance is Linux, follow the instructions for Linux.
  3. Add your new SSH key to your GitHub account
  4. Clone your GitHub repo to your EC2 instance. I’m going to clone it to my home folder.
  5. In GitHub, get the SSH URL of your repo.

Then, in your home folder, clone it

You will then see a new folder containing your website files from the GitHub repo.

Since my website document root is at /home/ec2-user/my-website/www, we need to update the Apache default document root (/var/www/html) to reference that path by editing the Apache config.

sudo nano /etc/httpd/conf/httpd.conf 
  • Change all references of /var/www/html to /home/ec2-user/my-website/www 
  • Change all references of /var/www to /home/ec2-user/my-website 
  • Restart Apache (sudo systemctl restart httpd)

Update Folder Permissions

If you try to view your website, e.g. by going to, you will probably get a “Forbidden” error. To better understand this error, view the Apache error log.

sudo tail -100 /var/log/httpd/error_log 

You will probably see an error like this

[Sat Dec 23 01:36:55.545345 2023] [core:error] pid 89394:tid 89446 Permission denied: [client] AH00035: access to / denied (filesystem path '/home/ec2-user/my-website') because search permissions are missing on a component of the path

To fix this, follow these instructions on how to update file permissions

But replace /var/www with your website document root. In my case, I changed it to /home/ec2-user/my-website

According to the Apache docs, you also need to change the file permissions of all parent folders. In my case, the following folders need to be executable

  • /home
  • /home/ec2-user
  • /home/ec2-user/my-website
ls -la 
chmod +x . 
cd .. 
# repeat up to the root

When you’re done, you should be able to view your website in a browser.


How to Create a Concrete Slab / Patio

I recently added a slab of concrete in the backyard of one of my rentals. Unfortunately, I made some mistakes along the way. Specifically,

  • I removed too much dirt from the area where the slab would go
  • I could have paid less for a contractor to do the concrete work
  • I should have verified the quality of the contractor’s work

Preparing the Foundation

We first removed a lot of dirt and gravel by scooping it into some buckets. We did this so the 3.5″-thick concrete slab would be level with the existing concrete slab.

I rented a pick-up truck from U-haul and put tarp on the truck bed to protect it. This also made cleanup easier because I could pull the tarp off the truck along with any remaining dirt on it.

Driving with a full load of dirt made the truck swerve slightly at higher speeds so we took local roads to go to the city dump.

At the dump, we just shoveled the dirt onto the ground. The problem was the cost to dump dirt and gravel. If I had paid by weight, the cost would have been about $500. The clerk instead calculated the cost by volume, which lowered the cost to $372.

After making one trip, I regrettably thought I needed to remove more dirt and gravel. So, we made another trip and I spent another $372. After creating the wood form for the concrete slab, we realized that we had removed too much dirt, which meant I needed 2.5 times the amount of concrete I should have needed.

Getting Quotes

I called around to get quotes from concrete contractors. The slab dimensions would be 9′ x 15.5′ (140 sq ft). The first contractor quoted me $2000, but then lowered it to $1700. He quoted me without seeing the work area.

The second contractor came to see the work area and then quoted me $1500. That meant his rate was $1500/140 = $10.71 / sqft. According to one source, the cost in the California Bay Area to install a concrete slab including materials and delivery is between $8 to $14 / sqft. Therefore, I went and chose the 2nd contractor and paid $10.71 / sq ft.

Creating the Concrete Slab Form

The contractor came and created the wood form. I first compacted the soil using a hand tamper and put down some pond liner where the edge of the concrete would be. Half of the pond liner would be under the concrete. The other half would be under rocks or mulch. The reason for doing this is so that weeds don’t grow along the edge. I left a 30″ gap between the old concrete slab and the new one for rainwater to drain into the ground.

This is when I realized that I had removed too much dirt and gravel. I wanted the top of the new concrete slab to be level with the existing concrete slab in the backyard. Using a level, the contractor drove a wood stake into the ground and marked on it where the top of the 2×4 wood form would go. Screws were screwed through the vertical stakes into the 2x4s. Wood stakes were also used at an angle. This was necessary because without them, the weight of the concrete could push the vertical stakes and cause a deformity in the form. As you can see in the photo below, too much dirt and gravel had been removed, so the contractor had to put another 2×4 below the first set of 2x4s. This resulted in a slab thickness that was approximately 3.5″ x 2 = 7″ (one 2×4 is actually 1.5″ x 3.5″). That’s twice as much as is needed for a standard slab and therefore twice the amount of concrete would be needed.

Furthermore, I wanted the slab to slightly slope towards the long edge so that rainwater could flow into the ground rather than puddle on the slab and weaken it (concrete is porous). To determine the slope, the contractor used a level on the 2×4 and tilted it slightly before screwing it into the wood stakes. Then, he used a red chalk string to snap a line on the wall, marking the desired height of the slab along the wall. Since the red chalk wasn’t clear, he went over parts of it with a black marker as shown below.

Lay Rebar

To reinforce the concrete, the contractor added rebar. He cut the rebar with a reciprocating saw and metal blade.

They then tied the rebar together in what appeared to be plastic-coated wires or electrical (romex) cable.

Pour Concrete

Instead of buying a bunch of bags of concrete and mixing them with water, the contractor ordered a truck to come and deliver premixed concrete.

The premixed concrete flowed down a channel into a wheelbarrow.

One person transferred the concrete to the work area while the other used a trowel to trowel the concrete.

Occasionally, they’d pull the rebar up so that it would settle in the middle of the slab rather than at the bottom.

After pouring all the concrete and moving it into place using a hand trowel, this is how it looked.

The contractor then used a float attached to a pole to create a smooth surface. If necessary, he would spray a mist of water to soften the concrete.

On the truck, the concrete supplier could see how much concrete was supplied. As you can see below, I needed a total volume of 2.66 cubic yards. People in the business would just say “yards”, which makes no sense since that’s a measure of length rather than volume. What they really mean is cubic yards.

The unit cost of concrete is $169 / cu yd (cubic yard). Fortunately, the concrete supplier put down 2.5 cu yds rather than 2.66 cu yds to save me a little money. Had I not removed so much dirt and gravel, I could have only needed 1 cu yd for a 3.5″ thick slab. Instead, the resulting slab is now 6 to 6.5″ thick.

For small loads, the concrete supplier charges an extra $80 for 1 to 2.75 cu yds or $60 for 3 to 4.75 cu yds. Again, the supplier gave me a small discount by only charging me an extra $60 instead of $80. Then, there’s the delivery fee, which costs $80. The total cost for just the concrete was $607.91.

For comparison, if you buy bags of concrete at Home Depot, transport it yourself, and mix it with water, you’d pay $612.80 + 10% tax = $674 for the same 2.66 cu yds (72 cu feet) of concrete.

The concrete supplier cleaned his truck and washed the surrounding area.

The contractor then used an edging trowel to create a rounded edge.

He also used a special tool to create a control joint line.

Once the concrete dries a bit, he’ll give the concrete surface a brushed texture so it’s not slippery smooth. Then, tomorrow, he’ll remove the wood form.

Smoothen Uneven Spots

Unfortunately, the contractor didn’t do a good job. There were some uneven areas that drove me crazy. To fix this, I used a 7″ concrete grinder.

IMPORTANT: concrete dust is very dangerous if inhaled! Always wear protection.

N95 mask
N95 mask with neck gaiter for added protection
N95 face mask and balaclava for even better protection

When grinding concrete, move relatively quickly and in a circular motion to avoid creating uneven spots.

Etch the Surface

Raw concrete doesn’t look that great. To beautify it, I’ll apply some epoxy to it. In order for the epoxy to stick, the smooth surface needs to be etched. The easiest way to do this is by renting a flooring tool with the Diamabrush concrete prep attachment. In my case, the surface wasn’t smooth, so I was able to skip this step.

Apply Epoxy

Since cars will not go on my slab, I’ll apply some 1-part epoxy. I like this one in silver gray:

1 Gal. #PFC-68 Silver Gray Self-Priming 1-Part Epoxy Satin Interior/Exterior Concrete and Garage Floor Paint

It’s very easy to apply. Just roll it on using an epoxy roller. To prevent slipping, add anti-slip floor additive to the epoxy.

Before applying epoxy
After applying epoxy (it was still wet)

Lessons Learned

  1. For some reason, it costs more to dispose of dirt and gravel at the dump than it is to be supplied the same amount of premixed concrete, including delivery.
  2. Before removing dirt, create the wood form first so you’ll know how much dirt to remove. The concrete slab need only be 3.5″ thick.
  3. Since I paid $608 for the concrete, assuming the other materials (2×4 lumber and wood stakes) cost $42 (conservative estimate), then that means I paid the contractors (2 people) $1500 – $608 – $42 = $850 for pretty much one day of actual work. So, each contractor got $425 a day or $425 / 5 hours = $85 an hour. That’s a high hourly rate. However, all concrete contractors charge a high rate even though the number of hours worked is low. Next time I’ll ask for a quote for the labor only since now I know the costs for the materials.
  4. The quality of the contractor’s work was poor. There were uneven spots and the concrete was mostly level rather than slightly sloping in one direction for water runoff. There was also one lower area where water would puddle. Next time, verify the quality of the contractor’s work.

Insta360 X2/X3 Filming Tips

Timelapse Videos

You can create timelapse videos using the Insta360 ONE X2/3. The resulting timelapse will be a 360-degree video that you can edit the same way you can non-timelapse videos. Unfortunately, the interval setting between when a picture is taken to create the timelapse can only be set from your phone. The interval options are 0.5s, 1s, 2s, 4s, 10s, 30s, 1min, 2min. Note that standard video is 29.97s, which is like making a timelapse video where the interval between still images is 1/29.97s or 0.03s. According to this timelapse calculator, if you film for 8 hours straight (event duration) with a shooting interval of 0.5s, then the camera will take 57600 photos. If you want the resulting timelapse video to have a frame rate of 29.97 fps, then the resulting timelapse video duration will be 32m 2s long.

Here are the number of photos and video durations for an 8-hour event duration for the shooting intervals supported by the ONE X2.

IntervalNumber of PhotosVideo Duration
0.5s5760032m 2s
1s2880016m 1s
10s28801m 36s

I wouldn’t choose a timelapse interval greater than 10s since an 8-hour-long filming session would produce a video that’s longer than 1m 36s. If 1m 36s is too long, then in post-production, whether in Insta360 Studio or some other video editing program, you can speed up the timelapse to produce an even shorter video.

The battery that comes with the Insta360 ONE X2 is good for 80 minutes. You can buy additional batteries, but if you’ll be recording a long timelapse video, it would be annoying to have to keep changing the battery every 80 minutes. In this case, you’re better off recording with the USB charging cable plugged in. To prevent overheating, remove the battery. The camera can still operate and record while plugged in.

When taking a 360-degree timelapse video, make sure the following options are set

360-degree mode (not 150-degree mode)

Left to right: 360-degree mode, panorama mode, 150-degree wide-angle mode

Video timelapse mode

Slow Motion Videos

If you want to make a slow-motion video, e.g. a real estate tour video, then you definitely want to record at a high frame rate like 60 fps. Then, in your video editor, slow down the video and export it at 30 or 60 fps. If the original video is recorded at 30 fps, then the slowed-down video will be choppy.

Action Videos

When filming action scenes, it’s better to record at a high frame rate so that playback will be sharp, more fluid, and not blurry.

Low-Light / Night Scenes

When filming in low light like at night, you’ll get much better results if you manually adjust the exposure.


ISO is a camera setting that will brighten or darken a photo.

However, if you increase the ISO too high, you’ll see a lot of grain.

You should only raise your ISO when you are unable to brighten the photo via shutter speed or aperture instead (for example, if using a longer shutter speed would cause your subject to be blurry). The ISO 200 image on the left was brightened with a long shutter speed.

Shutter Speed

Shutter speed is responsible for two particular things:

  • changing the brightness of your photo and
  • creating dramatic effects by either freezing action or blurring motion.

Shutter speed is the length of time in seconds the camera shutter is open, exposing light onto the camera sensor. Essentially, it’s how much time your camera spends taking a photo. When the shutter is open, light passes through the lens and is collected on the camera sensor. The button that fires the camera is also called “shutter” or “shutter button,”

Fast / Short Shutter Speed > Freezes Action

A fast shutter speed is a small fraction of a second, like 1/250th of a second.

Slow / Long Shutter Speed > Motion Blur

A long shutter speed is 1 second or longer. A slow shutter speed is like 1/2 or 1/4 of a second.

Shutter Speed and Exposure (Brightness)

If you use a long shutter speed, your camera sensor gathers a lot of light, and the resulting photo will be quite bright. If you use a quick shutter speed, your camera sensor is only exposed to a small fraction of light, resulting in a darker photo. 

The following flowchart can help you tweak the ISO and shutter speed.

Left: Manual Exposure. Right: Auto Exposure

Learn more

Invisible Selfie Stick

Insta360 offers some selfie sticks that will become invisible in your videos. I have 2 sticks

  1. 2-in-1 invisible selfie stick with tripod (3.4′ long)
  2. Extended edition selfie stick (10′ long)

Following are how some videos look when using each stick.

3.4′-long selfie stick, front, face level
10′-long selfie stick extended to about 5′, front, face level
3.4′-long selfie stick, front, stomach level
3.4′-long selfie stick, 45-degree angle, face level
3.4′-long selfie stick, side, face level
3.4′-long selfie stick, side, face level
3.4′-long selfie stick, front, feet level
3.4′-long selfie stick, straight up
10′-long selfie stick, straight up
10′-long selfie stick, up, back
10′-long selfie stick, up, side

10′-long selfie stick, front spin, face level
10′-long selfie stick, low to high, facing down
10′-long selfie stick, low to high, facing up

Selfie Drone

For comparison, following are some videos taken with the Hover Air X1 selfie drone.

Bird’s Eye, no spin, 10 feet
Bird’s Eye, no spin, 10 feet, return
Bird’s Eye, no spin, 50 feet
Bird’s Eye, no spin, 50 feet, return
Bird’s Eye, fast spin, 50 feet
Bird’s Eye, fast spin, 50 feet, return
Bird’s Eye, slow spin, 50 feet
Bird’s Eye, slow spin, 50 feet, return
Dolly track
Dolly track
Hover with target tracking
Orbit, 5 feet
Orbit, 20′
Zoom out, down
Zoom in, down, return
Zoom out, flat
Zoom in, flat
Zoom out, up
Zoom in, up
Zoom out, up, far
Zoom in, up, far

Lens Care

The Insta360 X2/X3 camera has protruding lenses on two sides. As such, the lenses can easily get scratched, so extreme care must be taken to prevent that from happening. Also, before shooting, you should always clean the lens to remove any dirt or fingerprints. A dirty lens can easily result in a blurry shot. Following are comparisons of image quality when different lens conditions.

Brand New and Clean Lens

The image quality is relatively sharp.

Brand New Lens But Full of Fingerprints

The image is blurry, especially around the lights.

Scratched But Clean Lens

Despite being cleaned with a new cloth, the image is partially blurry due to the scratched part of the lens.

3rd-Person Pan

High-Up Shot



Rise-Up Reveal

Upward Tilt

Various Action Camera Mounts & Accessories

Here’s a collection of mounts for action cameras like the Insta360 X3 that I’ve found useful. These accessories can mostly be used with other cameras as well.

Flat C Clamp

This particular clamp has a 2.36″ max width opening and many 1/4″ screws around it. It’s useful for clamping to a flat surface.

Example Use Cases

  • Clamp to a table
  • Clamp to railing

Buy on Amazon

Curved Clamp

This clamp is lightweight. Since it’s curved, it’s ideal for clamping to cylindrical objects like bike handlebars. You can connect it to a long selfie stick or a 1/4″ rod that accepts a 1/4″ screw.

Example Use Cases

  • Clamp to a bike handlebar with or without a short selfie stick or rod

Buy on Amazon (clamp, rod)

Adjustable-Angle Selfie Stick Clamp

This clamp is designed for fishing poles, but it can be used for selfie sticks because selfie sticks are like fishing poles. You can adjust the angle of the stick.

Example Use Cases

  • Secure to cruise ship railing and insert 10′ selfie stick to get drone-like footage.

Buy on Amazon

Flexible Rod

This flexible rod is 20″ long. One end has a female 1/4″ screw opening and the other has a male 1/4″ screw.

Example Use Cases

  • Wrap around a large or irregular shape like a tree branch, hand rail, or large cylindrical object.

Buy on Amazon

Short (6-8″) Selfie Stick

This short selfie stick is great because it’s small enough to completely fit in some pockets.

Example Use Cases

  • Sliding down waterslides
  • Playing in a swimming pool

Buy on Amazon

Alternative: Insta360 Mini 2-in-1 Tripod for X3 GO 3 ONE RS and ONE R

Medium (3.4′) Invisible Selfie Stick With Tripod and Invisible Quick Release Adapter

This selfie stick is invisible when used with the Insta360 X3 camera. To quickly attach and remove an Insta360 X3 camera, use the invisible quick release adapter designed specifically for the Insta360 X3.

Example Use Cases

  • Walking around
  • Placing it on the floor / ground using the tripod while you perform an activity, e.g. painting a room

When walking, I find it best to keep the camera at face level, unless you want to create some interesting perspectives like positioning the camera near your feet.

Buy on Amazon

Long (10′) Invisible Selfie Stick

This incredibly long selfie stick will make it seem like you’re photos and videos were taken using a drone.

Example Use Cases

  • Whenever you want to simulate taking photos and videos using a drone, e.g.
    • extending it our from the balcony of a cruise ship
    • walking along the beach to get bird’s eye views
    • holding it while being in the water at a beach
    • holding it against your shoulder with it extended behind you

Buy on Amazon

1/4″ camera screw

If you’re worried about dropping your selfie stick and losing it, you can attach a 1/4″ camera screw to the bottom of it and a wrist lanyard to the screw.

Buy on Amazon (1/4″ camera screw, lanyard)

Invisible Quick Release Adapter

To quickly attach and remove an Insta360 X3 camera, use the invisible quick release adapter designed specifically for the Insta360 X3.

Buy on Amazon

Tripod Stand 1/4” Mounting Screw

If you can’t mount the Insta360 camera to something, then you can stand it on the ground by attaching a tripod to a selfie stick.

Buy on Amazon

Forearm Mount

Having a selfie stick extended away from you allows you to get shots that look as if someone is filming you. You can also get more of yourself in the shot. In certain situations, however, you may not be able to hold the stick in your hand. That’s when having a forearm mount comes in handy. Since no one makes these, I had to engineer one myself using a forearm brace and an adjustable clamp.


The brace comes with a thin aluminum bar that is inserted in a pocket at the top of the brace. Using a utility knife, I had to make minor incisions to be able to insert the clamp into and underneath the aluminum bar.

At the front of the brace, I wasn’t able to slide the clamp underneath the bar, so I trimmed the bar to make it a bit narrower.

Like this.

This is the finished product.

The metal bar and clamp can cause discomfort on the top of your hand, especially when the selfie stick is extended and is shaking up and down. To address this, you can simply slide a dishwashing sponge above your hand as shown below to act as a cushion.

Example Use Cases

  • Any time you want to extend the selfie stick and you can’t mount it on something else and you need your hands free, e.g.
    • when you are driving a jet ski

Wrist Mount

If the forearm mount is unavailable or can’t be used, then you can use a wrist mount. This is not as good as the forearm mount because the distance from the camera to your face is just the length of your arm extended.

Example Use Cases

  • when ziplining
  • when you are driving a jet ski
  • sliding down water slides

Buy on Amazon

Chest Mount

This mount is great because it’s hands-free, but you can’t film yourself with it.

If you are afraid of the camera falling despite the strong magnet, you can loop an adjustable neck lanyard to the GoPro mount screw as follows.

Example Use Cases

  • when walking around and you don’t want to make it obvious that you are filming people and/or you want your hands free
  • when boarding an airplane and walking down the aisle

Buy on Amazon

Bicycle / Motorcycle Mount

This mount is very sturdy, but the handlebar clamp opening may be too big for some handlebars. In that situation, you can wrap some rubber around the handlebar, which will also protect it from damage. This mount includes the selfie stick.

Example Use Cases

  • when riding a bicycle or motorcycle

Buy on Amazon (handlebar mount, 2″-wide rubber strip)

Note: when mounting to a bike, I find it better to position the mount such that the camera is at face level.

Glass or Window Mount

This mount can stick to a glass very firmly. You can also rotate the mount in many directions.

Example Use Cases

  • mount to a car windshield or window
  • mount to a bathroom mirror

Buy on Amazon

Magnetic Mount + Rigid 1/4″ Rods

This mount has a small footprint and includes a very strong magnet. You can add one or more 1/4″ rods to it. I find this setup particularly useful when eating at a restaurant. The mount doesn’t take a lot of space and it positions the camera high enough that you can film everyone’s food and their faces.

This mount can also stick to any metal surface like the side of a refrigerator.

Example Use Cases

  • on a table at a restaurant
  • on any magnetic surface

Buy on Amazon (magnetic base, 1/4″ rods)


If you’re out and about and want to stand your selfie stick on the ground, you can easily do that with the 3.4′ stick with built-in tripod. But, if you try that with 10′-long selfie stick extended at max length, then there’s the risk of it falling and destroying your camera. In this case, one thing you can do is strap the stick against an object like a rail. You can also try to use a c-clamp to clamp onto something flat and then strap the selfie stick to the clamp.

There are many adjustable and removable straps you can use, including

MicroSD Card

According to the Insta360 ONE X2 manual, you must use a UHS-I Micro SD card with a V30 or above speed class and exFAT format. UHS-II and UHS-III Micro SD/TF cards are not compatible with ONE X2. You can find V30 cards on Amazon. Note that the U3 symbol in the image below doesn’t mean UHS-III but rather U3. According to Wikipedia, U3 has to do with software rather than speed.

The cards below have been tested to work well with ONE X2 and X3.

SD CardModel NumberCapacitySpeed Class
Sandisk Extreme V30 A1SDSQXVF-032G-GN6MA32GV30
Sandisk Extreme Pro V30 A1SDSQXCG-032G-GN6MA32GV30
Sandisk Extreme Pro V30 A1SDSQXCG-064G-GN6MA64GV30
Sandisk Extreme V30 A1SDSQXAF-128G-GN6MA128GV30
Sandisk Extreme V30 A2SDSQXAF-128G-GN6MA64GV30
Sandisk Extreme V30 A2SDSQXA1-256G-ZN6MA256GV30
Sandisk Extreme Pro V30 A2SDSQXCZ-1T00-ZN6MA1TBV30

The first character of the 3rd part of the model number may differ, e.g. “G” in GN6MA vs “Z” in ZN6MA. According to this forum, that just identifies a different manufacturer.

The last character of the 3rd part of the model number may differ, e.g. “A” in GN6MA vs “N” in GN6MN. “A” means it comes with an adapter and “N” means it doesn’t.

SanDisk MobileMate USB 3.0 microSD Card Reader

Transferring video files from the Insta360 ONE X2 to your computer can be really slow. To speed this up, use a USB 3 card reader. I use this one: SanDisk MobileMate USB 3.0 microSD Card Reader- SDDR-B531-GN6NN. It supports transfer speeds of up to 170 MB/s. With USB 3.0, move content up to 10x faster than USB 2.0 readers.

Extra Batteries + External Charger

The battery that comes with the Insta360 ONE X2 is good for 80 minutes. It may be a good idea to buy additional batteries just in case. I bought a pack of 2 batteries on Amazon. It comes with a charger and the batteries work.

Mount Adapter

For the adapters, this one is better because you can tighten it with the camera facing any direction you want.

Waterproof Pouches

When you’re swimming, having a waterproof pouch to keep your camera dry can give you peace of mind. Though the pouches pictured below are for phones, they fit the Insta360 X2/3 cameras as well.

Buy on Amazon

Itinerary for the Ultimate Miami & Caribbean Cruise Vacay

4-night Royal Caribbean cruise aboard the Freedom of the Seas (Deck Plan) plus a few days in Miami before and after the cruise

February 2024


Packing List

Travel and Health Docs

  • Passport / Green Card
  • ID Card
  • COVID Card
  • Royal Caribbean SetSail Pass

Saturday, February 10, 2024

9:30 AM – 10:00 AMDrive to SF Int’l Airport (SFO)
  • Driving Time: 30 min
10:00 AMCheck in
  • Flight: AA 2045
  • Airline: American
  • Confirmation #: IICJZE
  • Seats: 36E, 36F
  1. Scan boarding pass at the kiosk
  2. Attach Express Bag Tags to bags
  3. Tag bags to Bag Drop
11:00 AMLunch at Airport

There’s no free food on the plane. Eat at the airport. Bring trail mix.

12:00 PMTake off
8:19 PMLand at Miami Int’l Airport (MIA)
  • American Airlines is in the north terminal (D)
8:45 PMGo to rental car center
  1. Use the 3rd-Level Skyride (moving walks) to access the MIA Mover station.
  2. Use the MIA Mover located on the 3rd level between the Dolphin and Flamingo garages to go to the MIA Rental Car Center.
9:00 PMPick up rental car
  • Company: Thrifty
  • Confirmation #: K7583417634
  • Reservation Website:
  • Vehicle: Chevy Malibu
  • Total Cost For 2 Days: $96.46
  • Collision Damage Waiver: Extra (get at counter)
9:30 PMLate Dinner
  • Panda Express is nearby and is open till 1 AM.
  • Driving time: 6 min
10:30 PMDrive to Hotel & Check In
  • Regency Miami Airport by Sonesta
  • Driving time: 8 min
10:00 PMAttach Luggage Tags to Luggage

Sunday, February 11, 2024

8:00 AM – 9:00 AMBreakfast at IHOP
  • 285 NW 42nd Ave, Miami, FL 33126
  • Open 24 hours
  • Drive Time: 5 min
Steak Omelette with Pancakes
9:15 AM – 10:15 AMDrive to Everglades Holiday Park
  • Driving time: 40 mins
10:30 AM – 12:00 PMEverglades Airboat Tour
  • Official website
  • Open: 9:00 a.m. – 4:00 p.m.
  • $39
  • AIRBOAT TOUR: 60 mins
  • Airboat tour tickets are first-come, first-served – no reservations necessary! Tours leave the dock every 20-minutes or less.
12:00 PM – 1:00 PMDrive to Bayside Marketplace
1:00 PM – 2:00 PMWalk to Rolly’s Bistro for Lunch
  • Menu
  • Hours: 10 AM – 10 PM
  • Order:
    • Beef panini
    • Pina Colada
2:00 PM – 4:30 PMWalk to Big Bus Tours and Go on Red Tour
  • Website
  • Hours: 9 am – 4 pm
  • Cheaper to buy online
  • Frequency: Every 30 minutes
  • Duration: 2 hrs 10 min
  • Cost: $86
4:30 PM – 5:30 PMDrive Along Miami Beach
6:00 PMSunset
6:00 PMDrive to Miami Beach Parking Garage
6:00 PM – 8:00 PMWalk Around Espanola Way and Lincoln Shopping District

Española Way


Española Way is a historic street in Miami Beach, Florida. It’s located between 14th and 15th Streets, between Washington Avenue and Pennsylvania Avenue. It’s a pedestrian-only street with shops, galleries, restaurants, and bars. 

Lincoln Road Shopping District


Miami Beach’s Lincoln Road is one of the most unique shopping districts in the world,  full of stunning architecture, world-class culture and destination retail stores spanning 8 blocks.

8:00 PMHave Dinner at The Lincoln Eatery or CGK Miami
  • The Lincoln Eatery
  • Hours: 8 AM – 10 PM
  • CGK (Crazy Good Kitchen) Miami
  • Hours: 11 AM to 10 PM
  • Menu
9:00 PMDrive Back to Hotel
  • Driving Time: 22 min

Monday, February 12, 2024

8:15 AMBreakfast at IHOP
  • Drive Time: 5 min
Spicy Poblano Eggs Benedict
9:15 AMCheck Out of Hotel

9:30 AMDrive Back to Bayside Parking
  • Driving time: 15 mins
10:30 AMWalk to and Check in at Thriller Miami Speedboat Sightseeing Tour
  • 4-minute walk from parking garage
  • Website
  • Open: 11 am – sunset
  • Tours are every 1.5 hours on weekdays
  • Duration: 45 minutes
  • Cost: $45
11:00 AM – 11:45 AMTake Thriller Miami Speedboat Sightseeing Tour
12:00 PMRide Skyviews Miami Observation Wheel
  • Walking time: 3 min
  • Website
  • Open: 12 – 10 pm
  • Duration: 12 min
  • Cost: $20
12:30 PMWalk Around Bayside Marketplace
12:30 PM – 1:00 PMWalk Around Bayside Marketplace
1:00 PM – 1:30 PMDrive to Return Rental Car
1:30 PM – 2:00 PMTake Uber to Cruise Terminal
2:30 PMCheck In For Cruise
  • Cruise Terminal A
  • Check-in time is between 2:30 and 3 PM
  • Must check in no later than 3 PM to board the cruise
3:30 PMBoard Cruise and Go to Stateroom (with Balcony)

Stateroom # 6236

4:30 PMCruise Departs to CocoCay, Bahamas
4:30 PMSailaway Spots

Go to the bow (front) of the ship where the helipad is.

There are 2 ways there:

  1. Go outside on deck 4, walk forward, climb up a set of stairs and continue walking forward until you reach the helicopter pad.
  2. Walk all the way forward on Deck 5, enter the Star Lounge, take an immediate right just past the DJ booth. There’s a set of unmarked doors to the helipad.  
5:00 PMExplore the Ship

Deck 2

  • Middle (Midship): Studio B Ice Rink
  • Rooms: Ocean-View Rooms, Interior Rooms

Deck 3

  • Front (Forward): Royal Theater
  • Middle (Midship): Studio B Ice Rink, Photo Studio, Art Gallery
  • Back (Aft): Main Dining Hall
  • Rooms: Ocean-View Rooms, Interior Rooms

Deck 4

  • Front (Forward): Royal Theater
  • Middle (Midship): Izumi Hibachi & Sushi, Schooner Bar, Casino Royale, Playmakers Sports Bar & Arcade, Boleros, Centrum
  • Back (Aft): Main Dining Hall

Deck 5

  • Front (Forward): Outdoor Deck
  • Middle (Midship): Star Lounge, Library Card Room, Sorrento’s, Bull& Bear Pub, Promenade Shops, Royal Promenade, Ben & Jerry’s Ice Cream, Cafe Promenade, Next Cruise, Shore Excursions, Guest Services, R Bar
  • Back (Aft): Main Dining Hall

Deck 6

  • Rooms: Suites, Balcony Rooms, Ocean-View Rooms, Promenade-View Rooms, Interior Rooms

Deck 7

  • Rooms: Suites, Balcony Rooms, Ocean-View Rooms, Promenade-View Rooms, Interior Rooms

Deck 8

  • Rooms: Suites, Balcony Rooms, Ocean-View Rooms, Promenade-View Rooms, Interior Rooms

Deck 9

  • Rooms: Suites, Balcony Rooms, Ocean-View Rooms, Interior Rooms

Deck 10

  • Rooms: Suites, Balcony Rooms, Ocean-View Rooms, Interior Rooms

Deck 11

  • Front (Forward): Fitness Center
  • Middle (Midship): Solarium, Whirlpool, The Lime & Coconut, Main Pool, Sports Pool, Splashaway Bay, El Loco Fresh, PADI, Chops Grille, Giovanni’s Italian Kitchen
  • Back (Aft): The Plaza Bar, Windjammer Cafe

Deck 12

  • Front (Forward): Spa
  • Middle (Midship): The Lime & Coconut, Running Track, Movie Screen
  • Back (Aft): Nursery, Adventure Ocean, Arcade, Johnny Rockets

Deck 13

  • Front (Forward): Freedom Dunes
  • Back (Aft): Rock Climbing Wall, Sports Court, The Perfect Storm Waterslides, Flowrider

Deck 14

  • Front (Forward): Lounges

Deck 15

5:45 PMDinner at Main Dining Hall [RESERVED]
  • Traditional Dining: 5:45 PM
  • My Time Dining: 7 – 9:30 PM
  • Bottom level = Deck 3
  • Middle level = Deck 4
  • Top level = Deck 5
  • Cruise Dining Options
  • Main Dining Room (Galileo, Isaac & Leonardo) at back of ship. Enter on deck 3.
  • Reservations are required. RSVP through the Royal Caribbean app or call extension 7000.
6:00 PMSunset
7:30 or 9:30 PMWatch a Show
  • Shows are nightly at 7:30 PM and 9:30 PM
  • Arrive 15 mins before the show
  • Royal Theater
  • Decks 3 and 4
10:30 PMPack for Next Day at Cococay
  • Dry bag
  • Snorkel mask
  • Inflatable lounges
  • Sunscreen
  • Cameras and equipment (selfie stick, etc)
  • SeaPass card
  • Cash: Tipping cabana attendants requires cash
  • Beach towels. You can get these from the ship. 
  • Sunglasses
  • Hats

Tuesday, February 13, 2024

6:42 AMSunrise in the Bahamas
7:00 AMArrive at Cococay
9:00 AMLLocker
9:15 – 9:30 AMTTram
10:30 – 11:15 AMZ1Zipline Start – Tower 1
Z2, Z3Zipline Middle – Towers 2 & 3
Z4Zipline Landing
11:30 AMF1Food – Chill Grill
F2Food – Snack Shack
F3Food – Skipper’s Grill
12:30 – 1:45 PMAJet Skis
2:30 PM – 2:45 PMBBalloon
3:00 – 4:00 PMO1Chill Island
O2Harbor Beach
O3Oasis Lagoon
SSnorkel Rental
7:30 AM – 8:30 AMBreakfast at Windjammer Buffet
  • Hours: 7:00 – 11:00 AM

9:00 AMPut stuff in a locker

There are free lockers to use around Perfect Day at CocoCay. Lockers are first come, first serve. Get a locker near the zipline starting area.

9:00 – 9:15 AMTake Tram Around Island
10:30 AM – 11:15 AMZipline
  • Appointment Time: 10:30 AM
  • Hours: 8:00 AM – 3:30 PM
  • Duration: 45 min
  • Cost: $50 pp
11:30 AM – 12:00 PMLunch

Have lunch at Chill Grill (or other places).

Captain Jack’s Bar ($)8:00 AM – 4:30 PM
Oasis Lagoon Bar ($)8:00 AM – 4:30 PM
South Beach Bar ($)8:00 AM – 4:30 PM
Coco Beach Club8:00 AM – 4:30 PM
Chill Grill11:30 AM – 3:00 PM
Skipper’s Grill 11:30 AM – 3:00 PM
Snack Shack Oasis11:00 AM – 3:30 PM
Snack Shack Water Park11:00 AM – 3:30 PM
South Beach Snack Shack11:00 AM – 3:30 PM
12:30 PM – 1:45 PMJet Ski Tour
  • Appointment Time: 12:30 PM
  • Hours: 9:00 AM – 2:00 PM
  • Cost: $65 driver, $25 passenger
  • Duration: 1 hr 15 min
2:30 PM – 2:45 PMHelium Balloon Ride
  • Appointment Time: 2:30 PM
  • Hours: 8:30 AM – 3:30 PM
  • Duration: 10 min
  • Cost: $43 pp
3:00 PM – 4:00 PMBeaches, Pools & Exploration
4:00 PMReturn to Ship
5:00 PMDepart Cococay to Nassau
5:45 PMDinner at Main Dining Hall [RESERVED]
6:00 PMSunset
7:30 or 9:30 PMWatch a Show
  • Shows are nightly at 7:30 PM and 9:30 PM
  • Arrive 15 mins before the show
  • Royal Theater
  • Decks 3 and 4
10:30 PMWatch a Movie Outside

Wednesday, February 14, 2024

8:00 AMBreakfast on Balcony (Room Service)
9:30 AM – 11:30 AMShip Tour
  • Appointment Time: 9:30 AM
  • Duration: 2 hours
  • Cost: $89
11:30 AM – 12:00 PMFitness
  • Hours: 6:00 AM – 9:00 PM
12:00 – 12:30 PMRelax
12:30 – 1:30 PMLunch at Windjammer Buffet
  • Hours:
    • 7:00 – 11:00 AM
    • 12:00 PM – 3:00 PM
    • 6:00 PM – 9:00 PM
1:30 PM – 3:30 PMWaterslides
  • Open: Noon to 6 PM
3:30 PM – 4:30 PMRock Climbing Wall
  • Open: 3:30 – 7:00 PM
  • Deck 13
5:45 PMDinner at Main Dining Hall [RESERVED]
6:00 PMSunset
7:30 or 9:30 PMWatch a Show
  • Shows are nightly at 7:30 PM and 9:30 PM
  • Arrive 15 mins before the show
  • Royal Theater
  • Decks 3 and 4

Dining on Board

Main Dining Room

  • No extra cost
  • Deck 3, 4, 5
  • Ext 7000
  • Breakfast: 8 AM – 9:30 AM
  • Dinner: 7 PM – 9:30 PM

Windjammer Marketplace

  • No extra cost
  • Deck 11
  • Breakfast: 7 AM – 11 AM
  • Lunch: Noon – 3:30 PM
  • Dinner: 6 PM – 9 PM

Cafe Promenade Coffee Station

  • No extra cost
  • Deck 5
  • 24 hours

El Loco Fresh

  • No extra cost
  • Deck 11
  • 3 PM – 6 PM

Sorrento’s Pizza

  • Extra cost $
  • Deck 5
  • 1:30 PM – 3 AM

Cupcake Cupboard

  • No extra cost
  • Deck 11
  • 11 AM – 8 PM

Chef’s Table

  • RSVP required
  • Extra cost $$$$
  • Ext 7000
  • Deck 5
  • 6:30 PM

Chops Grille

  • RSVP required
  • Extra cost $$$
  • Ext 7000
  • Deck 11
  • 5:30 PM – 9:30 PM

Giovanni’s Italian Kitchen

  • RSVP required
  • Extra cost $$$
  • Ext 7000
  • Deck 11
  • 5:30 PM – 9:30 PM

Izumi Hibachi & Sushi

  • RSVP required
  • Extra cost $$
  • Ext 7000
  • Deck 4
  • 5:30 PM – 9:30 PM

Johnny Rockets

  • Extra cost $$
  • Deck 12
  • 2:00 PM – 10:30 PM

Ben & Jerry’s Ice Cream

  • Extra cost $
  • Deck 5
  • 2:00 PM – 11:00 PM

Cafe Promenade Coffee Station

  • No extra cost
  • Deck 5
  • 6:30 AM – 11:00 PM

Room Service

  • Extra cost
  • Ext 7000
  • Deck 5
  • 6:30 AM – 11:00 PM

Thursday, February 15, 2024

6:42 AMSunrise in the Bahamas
7:00 AM – 8:00 AMBreakfast at Windjammer Buffet
  • Hours: 7:00 – 11:00 AM
8:00 AMArrive at Nassau, Bahamas
9:00 AMTake Shuttle to Atlantis
  • Appointment time: 9:00 AM
  • Bring dry bag and camera accessories
9:30 AM – 1:30 PMPlay at Atlantis Waterpark
  • Atlantis Resort Map
  • Atlantis Aquaventure Map
  • Wristbands are required and can be obtained at any towel hut
  • Aquaventure is cashless. Pay by credit card.
  • Lockers are available and subject to availability
  • Towers are provided for day use
  • Complimentary life jackets are provided for day use
  • Wear sandals or water shoes because the pathways can get very hot
  • Shortest wait times for the water slides and the rapids river are when the rides open at 10 AM
  • The center of the action is the Mayan Temple Pool

Action Plan

  1. Get a locker
  2. Go on Mayan Temple water slides (bring short and 3.4″selfie stick)
  3. Go on Power Tower water slides (bring short and 3.4″selfie stick)
  4. Go on river rides (bring short and 3.4″selfie stick)
  5. Have lunch
  6. Go to pools (bring 3.4′ and 10′ selfie stick)
  7. Go to the beaches (bring 3.4′ and 10′ selfie stick)
  8. Take photos at vista points (bring dry bag)
  9. Explore the Royal Towers (bring dry bag)
  10. Visit the Dig

Mayan Temple Water Slides

Leap of Faith: a near 60-foot near-vertical drop propels you through a clear acrylic tunnel into a shark-filled lagoon [video]

Serpent Slide: travel 5-stories down in complete darkness, then emerge and float through an acrylic tunnel in a shark-filled lagoon [video]

Challenger Slide: race down twin high-speed slides with friends, then check your speeds on the time clocks at the bottom to see who won [video]

Jungle Slide: take a thrilling safari slide through the exotic jungle-scape and caves built right into the heart of the Mayan temple [video]

Power Tower Water Slides

The Abyss: Drop into complete darkness with twists and turns and end in an underground cave with alligator gar and tropical fish. [video]

The Surge: Brave a camel back drop into a cavern with quick downward twists and turns into white-water rapids. [video]

The Drop: Drop through darkness, then enjoy open-air twists and turns before splashing down into the Rapids River [video]

The Falls: This slide shoots you 58 feet to ground level, then propels you through a water roller coaster of twisting tubes. [video]

River Rides

The Rapids River: A mile-long river ride with extreme rapid, rolling waves, water escalators and surprises. [video]

Lazy River: A relaxing, scenic, quarter-mile loop guided by a gentle current. [video]


Royal Baths: This low key pool features two sunburst mosaics and soothing music with the iconic Royal Towers as a backdrop.

Mayan Temple Pool: One of the most popular pools at Atlantis, adjacent the slides of the Mayan Temple. A live DJ spins hot beats.

Baths Colonnade Pool: Large columns with hieroglyphs and rockwork structures adorn this free-form pool.

Grotto Pool: A zero-entry pool framed by two cascading waterfalls. Preferred seating with lockable safe and electronics charging station available for a fee.

River Pool: A relaxing zero-entry pool just steps away from Atlantis Beach and removed from the main activity of Aquaventure.

Blu Pool: This pool offers a cool vibe with music from the 80s, 90s, and today’s billboard hits.


Atlantis Beach: An action-packed beach located closest to Beach, Coral and Royal Towers.

Cove Beach: This beach offers a protective cove, good for snorkeling and just soaking up the sun.

Paradise Beach: A tranquil stretch of sand, perfect for relaxing closest to the Reef.

Paradise Lagoon Beaches: Paradise Lagoon offer two beaches for snorkeling, paddle boats, and other water sports, in a protected environment – great for families.


The Dig: Polished marine life & aquarium exhibits in a series of tunnels at the posh Atlantis resort.

2:00 PMTake Shuttle Back to Ship
2:30 PMExplore Downtown – Straw Market
3:00 PMExplore Downtown – Queen’s Staircase
4:00 PMGo Back to Ship
5:00 PMDepart Nassau Back to Miami
5:30 PMPack Bags

Cruise staff will pick up luggage at night. Keep a foldable overnight / duffle bag to store night clothes and toiletries.

5:45 PMDinner at Main Dining Hall [RESERVED]
6:00 PMSunset
7:30 or 9:30 PMWatch a Show
  • Studio B – Ice Rink
  • Deck 3

Friday, February 16, 2024

6:00 AMArrive in Miami
7:30 AMTake Uber From Cruise Terminal to Airport
  • Driving time: 20 min
8:00 AMPick Up Rental Car
Confirmation #K7581590277
SizeChevy Malibu
Total Price For 2 Days$62.08
Collision Damage Waiverextra
9:30 AM – 9:45 AMDrive to Frost Museum of Science
  • Driving Time: 15 min
10:00 AMBuy Planetarium Show Tickets
  • Must buy tickets on site
  • Website
  • Hours: 10:00 am – 6:00 pm
  • Cost: $30
10:20 AMWatch Planetarium Show
11:00 AMWatch Planetarium Show
  • Dynamic Earth
  • Duration: 24 min
  • Showtimes: 11:00 a.m. | 12:20 p.m. | 1:40 p.m. | 3:00 p.m. | 4:20 p.m. | 5:40 p.m.
11:30 AM – 11:45 AMDrive to Wynwood Walls
  • Driving time: 10 min
12:00 PM – 1:00 PMExplore Wynwood Walls
  • Website
  • Hours: 11 am – 7 pm
  • Cost: $12
1:00 PM – 1:15 PMDrive to Lock n Load Museum
  • Driving Time: 10 min
1:15 PM – 2:30 PMVisit Lock n Load Museum
  • Website
  • Hours: 12 – 6 pm
  • Cost: Museum: Free, Shooting Training: $175
2:30 PM – 2:45 PMDrive to Superblue Miami Immersive Art Experience
  • Driving Time: 5 min
2:45 PM – 3:45 PMVisit Superblue Miami Immersive Art Experience
  • Website
  • Hours: 11 am – 7 pm
  • Cost: $39
3:45 PM – 4:45 PMDrive to Hotel & Check In
  • Garden Hotel Miami International Airport
  • Driving time: 30 min
  • Check-in time: 3 PM
4:45 PM – 5:15 PMDrive to ARTECHOUSE Miami
  • Driving Time: 30 min
5:15 PM – 6:00 PMVisit ARTECHOUSE Miami
  • Website
  • Hours: 1 – 8 pm
  • Cost: ?
6:00 PMSunset
6:00 PM – 6:10 PMDrive to Museum Of Illusions
  • Driving Time: 10 min
6:10 PM – 7:00 PMVisit Museum Of Illusions
  • Website
  • Hours: 11 AM to 9 PM
  • Cost: $30
7:00 PM – 7:15 PMDrive to Fogo de Chão Brazilian Steakhouse
  • Driving Time: 10 min
7:30 PM – 8:30 PMDinner at Fogo de Chão Brazilian Steakhouse
  • Website
  • Hours: 12 PM – 10:30 PM

PICANHA – Prime part of the Top Sirloin

FILET MIGNON – Tenderloin

ALCATRA – Top Sirloin

FRALDINHA – Bottom Sirloin

BONE-IN BEEF ANCHO – Bone-in Ribeye

COSTELA – Beef Ribs

CORDEIRO – CLamb Picanha, ChopsZ

FRANGO – Chicken

WARM PÃO de QUEIJO – Cheese Bread


9:00 PMRSVP Online for Segway Tour
  • Website
  • RSVP for 10 AM tour the following day
  • Tours are at 10 AM and 2 PM

Saturday, February 17, 2024

8:00 AM – 9:00 AMBreakfast at IHOP
9:00 AMCheck Out of Hotel
9:00 AM – 9:20 AMDrive to Bike n Roll Miami
  • 210 10th St, Miami Beach, FL 33139
  • Driving Time: 20 min
10:00 AM – 12:00 PMGo on Segway Tour
  • Website
  • RSVP
  • Hours: 9 AM – 6 PM
  • Duration: 2 hours
  • Cost: $75
12:00 PM – 12:15 PMDrive to Bayside Parking
  • Driving Time: 15 min
12:15 PM – 12:20 PMWalk to Millionaire’s Row Tour
  • Walking time: 5 min
1:00 PM – 2:30 PMGo on Millionaire’s Row Tour
  • Website
  • After purchase, you will receive a voucher via email.
  • You must EXCHANGE this voucher at least 45 minutes prior to scheduled departure time at one of our ticket booths at Bayside Marketplace (NOT in the line where you will board) for a physical boarding pass.
  • Duration: 90 min
  • Hours: 11 am – 6 pm
  • Cost: $30
  • Departure Times: 10:30AM, 11AM, 12PM, 1PM, 2PM, 3PM, 4PM, 5PM, 6PM
2:30 PM – 2:45 PMDrive to Bike n Roll Miami

Duration: 15 mins

2:45 PM – 4:30 PMRent e-bike and Ride Along Miami Beach
  • Website
  • Cost: $25 / hour, $85 / day
4:30 PM – 5:30 PMDrive to Airport Rental Car Center & Return Car
  • Driving Time: 30 min
6:30 PMDinner at Airport

There’s no free food on the plane. Eat at the airport. Bring trail mix. American Airlines is in the north terminal (concourse D, 2nd Level Departures).

8:11 PMFly Back to San Francisco
  • Flight: AA 2426
  • Airline: American Airlines
  • Confirmation #: IICJZE
  • Seats: 26E, 26F
11:51 PMLand at SFO