This may be one of the final posts for the 10 Million Dollar Page.
More information and final comments can be seen at https://www.wbca.ca/wbca/worlds-best-clone-attempt
This may be one of the final posts for the 10 Million Dollar Page.
More information and final comments can be seen at https://www.wbca.ca/wbca/worlds-best-clone-attempt
So moving to a new domain was simple, but also tricky.
The easiest way was to create a new subdomain on the new realm, wbca.ca. That way, it was easy to move the whole domain at once and maintain the exact directory structure on my hosting server.
Since I make my websites off of a home-made template, I just had change a couple of general variables, and poof I was pointing to the new domain.
But there were a fair bit of manual changes which still had to be done.
Changes had to be made right down to our logos and favicons.
It is complete. I just have to make some minor adjustments not to the site anymore, but rather to other sites which made references to it, and also to webmaster tools out there (Google, Bing, etc).
Out of all the sites I have ever made, this one was the most effort in terms of labor and money put in. More on that later.
We are going to be giving up the 10milliondollarpage.com and 10mdp.com realms (Not the site, yet?)
We still own the realms for another couple of months. We will re-direct the older realms to 10milliondollarpage.wbca.ca.
We will also be giving up the reference to 10mdp.com as well.
Back in October, 2015, we had attempted to corner the market with any realms which were similar to ours, mainly tenmdp.com and tenmilliondollarpage.com. We have had these realms on the slight chance that they could cause some confusion for our main realms.
However, looking at various tools on the usage of these realms, it did not warrant us to keep them any longer. It also made sense because of the cleanup we were doing as a result of our service provider shutting down parts of their service (see Previous Blog for more information). So effective today, we can only be reached at our primary domains, https://www.10mdp.com or https://10milliondollarpage.wbca.ca.
That's us ! ! !
As a website developer, we have to serve our webpages from somewhere. There are many options available but we went with a VPS solution which stands for Virtual Private Server. We have been very lucky for many years with the provider we had chosen, URPad, at https://urpad.net.
Unfortunately, sometimes good things must come to and end. We received the following email from UrPad.net earlier this week:
Dear Al Paul,
This is a reminder that on Aug 22nd we will no longer be providing hosting or VPS services. If you have not already done so, we advise preparing to move your VPS and/or hosting account away from our network.
As mentioned in our last email, we have set up a migration agreement with Warpline Hosting (https://my.warpline.com/aff.php?aff=96)
This will allow you to sign up for hosting services with them, and allow for the migration of your data to them. Further details on their pricing plans can be found here: https://my.warpline.com/aff.php?aff=96
Once you have signed up for an account with Warpline, please let us know the email address used for signup, and we will ensure your data is transferred to Warpline with minimal interruption of service. This move would require an IP change.
You are of course more than welcome to use any hosting provider you wish; however, we would not be able to facilitate migration of your data or content. We anticipate shutdown of service on or shortly after Aug 22nd.
With thanks,
The Urpad Team
visit our website | log in to your account | get support
Copyright © URPad.net, All rights reserved>
We have had a very good experience with them over the past many years. Great uptime, great website responses, overall great experience.
So there was a slight interruption last night as we migrated our website away from URPad.net. Thanks for all the great years of service URPad.Net, we had a great run together....you will be missed.
Hidden within our main GRID on our main page is a hidden gem. Within the blank squares is one special square. It looks no different than any of the other blank squares. It is our easter egg....a small piece of code (or in our case, a link) pointing to a special page.
Whether you are specifically looking for it or came across it accidently, you will be in for a pleasant surprise once you stumble upon it.
Keep in mind however that hidden square is moving every 5 minutes to a new location (you may need to refresh your page if it hasn't moved). Have fun looking for the square.
Hint: If you look at the page source through your browser, do a search for the word 'waldo'.
It has taken a bit of time, but we finally have a Winner in our monthly Giveaway Contest. A special congratulations to thirstywater.ca for being our first winner! More details about the contest can be found under our Giveaway page. Essentially, entrants have a chance of winning 1 month of free advertising on our main GRID for their website. Free advertising! Doesn't get any better than that. And to boot, your website and link are permanently added to our Past Winners page.
Once a website entry is randomly drawn to appear on our main page, we clear the entries for that month. So don't forget to enter every month! Good luck!
We made a cosmetic change to our GRID image. That is the main page image with all the advertisements. When we first started the site, we had initially had the GRID setup as a GIF image. The reasoning for this was it allowed us the ability to create an animated gif if required. We had plans to have either flashing squares, or holiday themes, all possible with animated gifs. However, we had been noticing that some of the more colorful logos of our partners were not looking as sharp as they could. So, in order to have a cleaner and sharper look of our main page, we changed the background GRID image to a JPEG image. We will keep the other image around still (and update it as frequently as we do the main GRID image), but will be referencing the JPEG image.
You can do a side by side comparison, and you can see the differences:
The GIF image (10-million-dollar-page.gif):
The JPEG image (10-million-dollar-page.jpg):
It took a bit of doing (a couple of hours) but our site is now encrypted. We used https://letsencrypt.org. for our certificate. Nice program they have running there. They provide a certificate for 3 months, and free of charge to boot. After 3 months, a job runs on our server which renews the certificate for another 3 months.
Why did we encrypt? Well, the other day we received a notification for one of our other sites from Google. The notification stated that the next version of Chrome will sound a "warning" if a site has information gathering pages (for example our contact page) and the site is not encrypted. We do not want to alarm any of our visitors with such a warning, so it only made sense to upgrade to an https site.
After we implemented the encryption, we are noticing the occasional exclamation mark showing on our browser when we provided links to client / partner sites which are not encrypted. A bit of growing pains, but we believe we can resolve this issue. We know a couple of our partners offer https type ads, so there will be a bit of a migration strategy to encorporate these secure links of the next couple of days.
One of the added benefits to having our site encrypted is that search engines favor encrypted sites when determining SEO (Search Engine Optimization). Ultimately all browsers will display a warning if a site is not encrypted, so we are keeping up with the latest waves of advancement with our page.
https://10milliondollarpage.wbca.ca. Yeah, we like the look of that!
We are approximately 75% full on our main page. That is about 70 links to affiliates, sample pages and demos. We are maintaining a certain amount of spacing and logo sizing with our advertisers. The more we come close to filling the page, the more time we will spend on optimizing the merging of all the advertisers. It is a bit of an art. We do not know ahead of time the size of our affiliate logos, nor the number of affiliates we will have on our pages. This optimization may involve resizing and/or relocating some of the ads, but ultimately the goal we have is to break the main page into multiple pages based on categories.
Once again, stay tuned. More affiliate additions are happening almost every day. Once our main page is filled, more website redesigning will be underway.
Something we should have added fairly soon in the game but added it today. A collection of "Share" buttons to popular social media sites. We have added social media buttons to other sites before, but this time it was added a bit differently.
We used a technique called "sprites" which has all the icons in 1 file. We had initially set up the icons the old fashioned way as we have always done by having 1 image per icon. After setting up 8 social media sites we noticed 8 additional hits to our site per main page visit.
This is expected, but not acceptable. We need optimization with our site because of the volume of traffic expected. We had heard of the sprite technique before but never had a chance to dive into it. Now it is done.
So, to help our customers / viewers share our site with their friends, we have include easy to click buttons for Facebook, Twitter, Google+, Linkedin, Pinterest, Reddit, Stumbleupon and Digg.
Aside: Not too sure if this should have been under the Marketing Category of our blog because it is also marketing we are doing. Since it turned into an optimization task, it made more sense to add it to Website News.
Back on December 6, 2016, we mentioned we had implemented some additional logging to the website. We had to revert those changes. The premise of those changes was anytime a customer would click on a link, we would perform a double redirect. Firstly to a script which tallied the information on our site, then secondly to the client's destination. It turns out however that some of the affiliate sites we go through do not like this double redirect, and they lose some vital information of where the traffic had originated from. So for the time being, this additional logging has been disabled.
After we added the previous blog comment about our campaign launch, we realized we are in our third year of blogging. So to make things easier to search we added an additional filtering parameter called Yearly Archives, and changed Archives to Monthly Archives. Not much of a change, but you know what they say about websites. They are never truly finished, there is always some room for improvement.
Through our webserver logs, we can tell how may hits our site gets. However, without using external analytic tools, it is difficult to tell how many of our clients ads are clicked.
Our clients have that information from the http_referer information from their logs. They also know how many mouse overs or popups were viewed (depending on the adtype) based by the image or iframe retrieved.
Well, through some creative server side scripting, we are now able to log the clicks as well (not mouseovers however). Should be some interesting statistics coming in now.
When we first started our journey, we chose our own unique size for the popups. It was 350 pixels wide x 100 pixel high. It was like this up until today.
After doing a fair bit of research on advertisement sizes, we decided to go with a more common ad size - 300 x 250. This ad size is very well accepted by advertisers and consumers and would blend well with our site as well.
We initially had the popups being a bit transparent. The reason behind this idea was to allow the consumer to still see the other GRID images at all times. But after mulling it over a bit, we decided to show the ad with no opacity changes. It could have led to some confusion to the consumers if an underlying GRID image bled through a popup. So we have removed the transparent popups.
Final last minute change was to add a throttling mechanism when moving the mouse around on the screen. This is accomplished with use of a piece of javascript code called debounce. This allows us to provide a popup when the consumer has stopped moving their mouse/touch device for a pre-defined period of time. We had played around with this code a while back and were planning on incorporating the changes when the website became busier. Since the feel and reaction is a bit different than not having the code in place we decided to put it in before any major clients came on board. This code also helps prevent unnecessary traffic to our clients, especially if they are running an iframe type of ad.
Almost into the Xmas season. A lot has happened on the back end of the server(s) in preparation for a ton of hits.
Firstly, we split our server, one dedicated to serving webpages, and other to handle emails. We also split based on expansion. We are currently running our webpage on an entry class server. Once the website server start receiving plenty of visits, we now have a clean and quick upgrade path through our service provider to an Enterprise class server.
We also changed out our webserver software. For years, we have been running Apache as the webserver. Why not? It was initially installed on our server instances by default, so it was just a matter of changing some configs, and poof, you were up and running. It integrated smoothly with PHP, our development standard. However, in preparation for the webserver to become extremely busy, we started to look at what was necessary to optimize for high volume traffic. The more we read, the more we realized we were running the wrong webserver.
So, in November, we switched over exclusively to NGINX as our webserver. We have read articles about using NGINX as a load balancer in front of an Apache instance, but doing additional research and experimentation, we figured NGINX would be the best alternative using it solo. Our website, although PHP generated, offers almost all its content statically. The only page which changes is our main page, which changes every hour, and this blog. Once our page is ready to go again, it is again static for the entire hour. NGINX is suited for static delivery and we fit that category.
Converting all our configurations from Apache to NGINX didn't take too long. In fact, it was kind of fun. Tweaking it took a bit of doing, with me setting up caching to make it a true speed demon, or should we say daemon.
We are ready for our site to become busy.
Ironically, the website was fairly simple to put together. The part which took the most time is the purchasing process. This entailed reserving, email validation, xml file generation, xml file emailing and a few other back end processes. We think it was ironic, because the bulk of the work will only be visible while we are selling the pixel blocks. Once all sold, we will be disabling this code.
The recent fine tuning was generating a pdf as part of the email. This way, the customer has something more than a plain email for confirmation of their purchase.
We've changed out the Blog once again. Nothing really wrong with Wordpress (maybe), but going through our logs, we noticed a far number of 'explorers' out there who check for and attempt to log into Wordpress sites. Initially, we had just renamed the admin.php to something else until we needed to use it. We received a notification that a new Wordpress was out and that got us thinking. New versions are released as a result of improvements, but also bug fixes or security vulnerabilities. The last thing we would want is this site to be hacked, so we have limited the use of third party applications. Effective immediately, our blog has a home-grown backend. Bye-bye Wordpress.
Only 2 days of running WordPress, and we are not impressed. The comments - SPAM, SPAM and SPAM. So unfortunately for anyone who wants to leave a valid comment in these posts, we have temporarily (perhaps permanently) removed the comment functionality because of these crazy spam comment "attacks". Over 30 garbage comments in about 48 hours.
However, if someone truly wants to leave a comment, we still have the https://10milliondollarpage.wbca.ca/10-million-dollar-page/contact-us page.
Well, we finally gave in a bit to our purist goal of home-grown website development and are now using WordPress for our Blog. This is actually the second "canned" solution on our website. The first was for the blog as well, which is now being replaced by WordPress. We previously used nibbleblog, which was also a very easy and powerful blog tool.
The reason for the switch? WordPress is an awesome, rapid development tool. For Christmas, I was quite geeky, and gave my 10 year old daughter a geeky gift - her own website! So rather than having her ssh in and edit pages by hand (which we do for the main page, and all other pages other than this blog), we figured she can use a Web driven tool to maintain her site. Stay tuned for her site - not launched yet, but domain is purchased already for her.
So today, we migrated all our previous blog posts to WordPress posts (keeping all the dates as previously, for historic purposes).
Most every popular Browser today has javascript, and most users have that option enabled. But, there is on occasion someone who wants or needs to disable their javascript. Without javascript enabled, our main page would not be clickable, and it would not be a very good end-user experience.
So, to cater these non-javascript browsers, we released a https://10milliondollarpage.wbca.ca/10-million-dollar-page/non-javascript version of our main page. Since it is a page of last resort (that is, you have an option to go there if we detect javascript disabled), it can be visited by either following the link above, or browsing our sitemap at https://10milliondollarpage.wbca.ca/10-million-dollar-page/sitemap page and choosing it from our list of pages.
The 10MDP has been tested on Firefox, IE, Safari, iPad, iphone and Android devices.
We weren't too happy on how it behaved on Android, so it was revamped a bit with touch in mind. It is tricky to have an application which makes use of javascript, and still maintain the proper functionality of a mobile friendly webpage, but we are happy with the overall results.
We are ready for the next phase of our launch. Stay tuned.
Made a small modification to the 3 logos on the page (the home page, the stamp, and the background). Added 10mdp.com to all three logos, and renamed the background.png to 10-million-dollar-page-logo-background.png. Helps with Google image searches. Updated all the apple-touch icons, favicons, etc...funny, a simple task, but a lot of additional things to make it happen.
A Blog has been added to the 10 Million Dollar Page. As a developer, we thought it would be a challenge to create our own blog from scratch. But then we figured, let's Google what was out there. Boy, are we glad we did. Did it not only save us who knows how many hours of additional work, but this is really a very nice Blog. We are using nibbleblog from http://www.nibbleblog.com/ .
On their main page, they hooked us in with 3 words we like ... Easy, Fast, Free. And were they right! It was super easy to install. It is fast (making use of a flatfile system which we are 100% behind). And free!
Kudos to http://www.nibbleblog.com/ for getting this right! Good job.
Well, our site is finally live. We had registered the domains back in June and password protected the site until we were ready to unveil it. On October 1st, 2015, we removed the password. We did some final cleanups (by passing it through https://validator.w3.org/, https://varvy.com/ and Bing SEO tools). Once we were happy with the results, we passed on the information through our webmaster accounts at Google, Bing and Yandex.
Now Step 4 of the plan is complete. It is officially launched, and now to let it soak and let the organic search engines do their thing.