Day 11: Expect the Unexpected
Wasn’t Day 11 supposed to be a post by Slobodan about developing the prototype? Aren’t you guys supposed to be doing all the fun product-building stuff?
Yes and yes. Only in startup world, things often don’t happen the way you want them to. Something that was supposed to be super simple, transferring our website from Webflow to WordPress.com, turned into a massive headache and both of us spent the weekend breaking our heads trying to figure out why things weren’t working.
So today’s story is a reflection of startup reality. You send article links to a bunch of people so they can check them out over the weekend and then your website essentially crashes in the middle of transferring it from one platform to another. Slobodan and I spent a big part of the weekend moving the site back and forth between WordPress and Webflow, and trying to work with WordPress support to figure out why we’re having issues with our domain transfer.
We’ve been doing this type of thing for 15 years so It’s almost embarrassing that something so simple could turn into such a disaster, and over a weekend to top it off.
Let’s see what happened.
Choosing your website platform
First, let me acknowledge again that we made a mistake. And let me take a moment to discuss the choice of website platform when getting started with a new product.
I’m not sure why we went with Webflow to begin with. I guess we were tired from working with WordPress all these years and we wanted to try something new and fancy? In the end, this something new and fancy is gonna cost us over 20 hours of our time, which are precious hours when it comes to a side-hustle.
WordPress is the most popular website platform in the world. Yes, there are a lot of issues with it and it has become very clunky. But nevertheless, it has the most templates, plugins, hosting providers and developers available to help than any other platform, by far. So It’s an obvious choice to start with and we should have started with it, especially because we’ve been working with it for years and we know it very well.
So my recommendation to most people starting out is to start with WordPress for the first year or two and then go from there. Mainly because It’s super easy and inexpensive to find a WordPress developer to help you if you get stuck, and because Youtube is filled with helpful tutorial videos. You may even end up sticking with it. Many huge brands are running their websites on WordPress.
How it all started?
As I mentioned in Day 10, we were just about done fine tuning the WordPress website with our freelance developer. On Friday, Slobodan and I spoke and we agreed to do the actual transfer of websites overnight from Friday to Saturday. The reason being that when you do this type of transfer, you need to change your DNS settings.
Changing your DNS settings is basically telling the entire internet that when someone types www.knowlo.co into their browser, they now need to be sent to address B (where WordPress is) instead of address A (where Webflow is). But one of the problems when you’re doing this is that it takes time for these DNS settings to spread all over the internet. It can take up to 72 hours sometimes, although in our experience it takes a few hours at most. And It’s the reason why we decided to do it overnight on Friday.
This is supposed to be super simple. we’ve done this over 100 times already. I was supremely confident that I was going to log into our Amazon Web Services (AWS) web console, go to Route 53, enter the new WordPress DNS settings, go to sleep and wake up to our website being connected to WordPress. What could go wrong?
The technical details
So right before bedtime on Friday night, I logged into our WordPress admin panel, clicked on Upgrades > Domains and proceeded to connect our own domain to the new website:
After going through a few steps I was told to change the existing Name Servers in our domain registrar to WordPresses Name Servers. Easy enough, I removed the AWS stuff in the existing name servers and replaced it with ns1.wordpress.com, ns2.wordpress.com, and ns3.wordpress.com and saved the Name Server record. I clicked the “Verify” button in WordPress which checks whether I did this correctly and all was good. Wonderful, let’s go to bed and wait for the new DNS settings to take effect.
As a side note: we still had our A record and CNAME from Webflow. Without going into too many technical details, this is another way of pointing your website to a server. There was no mention in the WordPress step-by-step that I had to remove these records. I asked the web-connected version of CofounderGPT whether Name Server records would take precedence over an A record and a CNAME (mistake #1) and it said yes it would. So theoretically, we should be fine.
What is a domain registrar?
I am assuming that some people have no clue what I mean when I say domain registrar so I want to take a moment to explain what that is. Well actually, I’m going to get CofounderGPT to explain it:
A domain registrar is a company that manages the reservation of Internet domain names. When you want to create a website, you need a unique address where people can find it – this address is known as a domain name (like www.example.com).
The registrar is the company that you pay to register this domain name for you. It acts like a kind of digital real estate agent, keeping track of who owns what name and ensuring that no two people can claim the same domain name.CofounderGPTs explanation of a domain registrar
We decided to register Knowlo.co with AWS because that’s where we keep all our domains. This is not the most user-friendly way to register and keep domains so I don’t recommend it for beginners. We used to be with GoDaddy but I find their upselling techniques really annoying! So we moved most of our domains to AWS. But I have to say, GoDaddy’s customer support is stellar and when starting out, it might be an ok choice. There many other choices though including Google Domains, Namecheap and Network Solutions. Even WordPress.com allows you to register your domain though their admin panel, so there is no shortage of options when it comes to domain registration services.
I woke up on Saturday morning, made my coffee and went to check on the Knowlo site. To my surprise, it was still pointing to the old Webflow website. It’s been over 10 hours that I changed the DNS settings. Something is wrong.
At that point, I started to question what CofounderGPT told me the night before about NS records taking precedence over A records and CNAME records. I messaged Slobodan and started Googling. I wasn’t able to get a clear answer but Slobodan got back to me in the afternoon and sent me a link to a DNS Checker. It was showing some weird readings. Clearly having one set of records pointing to Webflow and another set of records pointing to WordPress was a problem.
By Saturday late afternoon, we decided to start over. Slobodan sent me some instructions he found on the web that I followed. I deleted the domain set-up that I did in WordPress the night before and started over. I followed the instructions and set up the Name Server records again and then we decided to delete the records pointing to Webflow to see what happens. At the same time, I noticed that the TTL (timing) setting for our our Name Server records was set to 2 days the first time. I thought this might be a bit too long so I changed it to 300 seconds and updated all the records.
Again, we’ve done this over a 100 times so at this point I’m still assuming we did a stupid little mistake somewhere and redoing it “properly” is going to fix the problem.
We finished setting everything up, I closed my laptop and I forgot about this until Sunday morning.
Sunday morning I wake up to a message from Slobodan that the domain is partially connected, but that the DNS checker was again showing some weird readings. And the SSL certificate didn’t appear to be connected properly on the part of the site that was working. So he put the A record and CNAME back which redirected people back to Webflow temporarily until we figure out the SSL issue.
An SSL certificate is like a digital ID card for a website that also locks the website’s door, so only the right people (with the right key) can access information safely. Every website needs to have one these days if they want to be indexed by Google.CofounderGPTs explanation of an SSL certificate
Slobodan is travelling and not able to deal with this today so I decided to finally message WordPress support and ask them for help. The first thing they told me was to remove the records Slobodan put to redirect back to Webflow. I did what they suggested and it did not resolve the issue.
Then after about 2 hours of slow back and forth with WordPress support, we realized that there is an SOA record in AWS which we all ignored until now. It seems to be creating chaos with the WordPress name servers so they ask me to remove it. But I can’t! AWS doesn’t allow me to remove it. The minimum records you have to have in AWS is an NS record and this SOA record, neither of which you can delete.
WordPress support tells me we’re gonna try it the “other way”. we’ll have to put the WordPress A record and CNAME instead of using the Name Servers. Bingo! After about half an hour the new site is connected, but only partially. And now we see the problem Slobodan was referring to with the SSL certificate.
So Matt from WordPress activates the SSL certificate manually and it seems we’ve finally solved the problem! I message Slobodan to tell him and send him a link to check. He clicks the link and it doesn’t work for him.
WTF we just fixed this?
It turns out that we fixed https://knowlo.co, but that https://www.knowlo.co wasn’t connected properly. In other words, the CNAME record that was given to me was incorrect. So if anyone clicks a link that I shared with the “www” in it (which is most of the links we’ve shared), the website is not going to work for them. Wonderful.
I messaged Matt from WordPress support again. 3 hours pass with no answer so I decide to go back to the instructions that Slobodan sent because I remembered seeing something in them about an alternate method. So I get to this page which talks about the alternate method of transferring your domain (a.k.a. the A record and CNAME way instead of the NS way).
I delete all the WordPress domain settings again and start over following these new instructions. They are slightly different from what Matt told me so I am hopeful it will work this time. I wait a little bit and test and it seems that we’re 75% of the way there. Now the www part of the site works, but It’s telling me the SSL certificate is not working on the www links. It works fine when you remove the www.
Luckily this a problem we’ve experienced when we were hosting our own WordPress websites. So I know this is an issue on WordPress’ side and they need to do something on the server to fix it. I reached out to their support again. Someone else answered and fixed this problem relatively quickly:
And that finally did it, our website is working properly both with www and without www.
It’s time to celebrate by writing an article about this lovely weekend startup experience.
Did we learn something?
As you may have noticed, you are reading this article on our new website. It’s not fancy. In fact in some ways It’s uglier than Webflow. I personally don’t think the readability is great, we need to fix that. We also want to start adding other pages and making the product part of the website. Lots of things to do but we know how to work with WordPress, we have an awesome developer who we’ve worked with for years who’s helping us and It’s actually less expensive than Webflow on a monthly basis.
The major lesson learned here is: when we decide to launch our next product, we’ll most likely start with a WordPress website unless there is a specific reason not to.
Did you notice how CofounderGTP was basically a dictionary today? I can’t wait until AI can shovel this kind of shit instead of us.
We broke through our Webflow billing cycle which means a second monthly payment for Webflow along with all the hours we wasted on this website move instead of building the product.
Time spent today: 8h
Total time spent: 72h
Investment today: $56 (Webflow)
Total investment: $364.54 USD
Slobodan is going to publish his piece on how he worked with CofounderGPT to build the Knowlo prototype and I’ll be starting to work with CofounderGPT on some AI-generated content writing for our blog this week.