Learning Image source: Virtual Learning

Over the past week, I've made more progress in my learning of technical things, relating to servers, databases, security, as well as e-commerce website setup and development, alongside the rules required therein.

I made mistakes

I don't think any of them were particularly serious, as they were mostly setup procedures for new services.

Mistake 1:
This blog. A Small Orange is the hosting provider I use for this blog, as well as my main website. A Small Orange (ASO) provide a Ghost Blog installer, but state it must be installed in a separate location to any other production website. As I already have a website, I was a little paranoid about over-writing it with this blog. I checked with ASO about putting it on a subdomain - would that be ok? - and they said it would be fine. I went ahead, without looking really understanding what was meant by the directory name. I chose "ghostblog", thinking it would just be a naming convention for the server. As anyone visiting this site - maybe there is someone out there reading this? - you'll see that the full URL is blog.gisvold.org/ghost_blog. While I'm sure I could migrate this blog in its entirety (it's only a few blog posts so far), I don't want to risk anything with my n00bish ways. Regardless, I now know about directory names and what it actually means. Although saying that, I still made a booboo while implementing a test site for a friend (adding directory path). C'est la vie.

Mistake 2:
Installing Commerce Guys Drupal instance into ASO - the migration and authentication issue

I'm not sure what I did wrong here to be honest. The install failed twice (didn't progress beyond 80%). On the third attempt, instead of deleting the entire website folder, as soon as the install stopped, I could see that I could access (if not log in to) the Drupal instance. After editing the user details in the DB, the install started (after being stuck for 2 hours). Weird.

Migration of the DB didn't go to plan (as in caused issues during the install), but to be honest, I'd been practicing on the initial, local instance, so a clean start was appreciated.

I had problems I couldn't explain or understand

The most exasperating of which is to do with Ghost and making changes to the files which Ghost references. You need to restart the blog instance, but there are methods online - some even referencing A Small Orange, where this blog is hosted.

I made two changes, one to a theme file and the other the main config.js, neither change materialising.

Theme file
I use the Bhoot theme, paid for from Theme Forest. Whenever I start using a new CMS/online system which uses themes, I find a theme I like, pay for it and then start taking a look at how it's been constructed. It is always much easier to build when you have tinkered with an existing implementation.

To change the floating menu structure or the links within it, you need to edit the default.hbs file. I added a static page through the Ghost admin, referenced it in the default.hbs.

Config.js
I needed to add an email service so that Ghost could send me emails - really I only looked to do this as I get annoyed with the blue pop-up saying "Ghost is trying to send emails". All the documentation was fairly self-explanatory, so implemented and wait.

Nothing happened straight away and that was fine. I left it a day and still nothing had changed. I trawled the internet and found information about including an empty "restart.txt" file in the /tmp/ directory, which would undertake the restart. There was another piece of information about how to undertake this using SSH and terminal - things I've become familiar with - but this seemed to indicate node.js wasn't running anyway - all very bizarre.

In the end, after several hours and roping in pappa (Tor), I was no closure to getting my blog updated, so I contacted A Small Orange support. As always, they were quick to reply and so helpful! I cannot stress enough how good ASO's service is (check out this page for hosting discounts - up to 15% off!). They tried a variety of methods, but no changes occured until I did one thing. I edited the main CSS file for the blog and edited the display for the logo. I dislike square frames for logos, so made it circular. The change was instant and suddenly my menu had an extra link. How bizarre.

Config.js changes still haven't taken affect. I need to figure out what's going on there; maybe I did something wrong. We shall see. Until then, I get the annoying blue box..
blue box of doom

It's been a sometimes painful process, but also good to learn all this stuff!