Site Update

If you have visited thoughtasylum.com much in the past, you may have noticed a change recently. The site has been rebuilt. It isn’t just a makeover, it’s actually a rebuild from the ground-up. In this post I’m going to give a little bit of background to the what, why and how.

What has changed?

While the content is the same as it was before at the level it is shown to you the reader, pretty much everything else has changed.

  1. The content was previously being hosted on a Squarespace system. The site is now being hosted on GitHub Pages.
  2. The content was originally written in HTML, but is now predominantly converted to Markdown, HTML only being utilised where Markdown has proven insufficient.
  3. The format of the site has changed to make it responsive, so that it is now much easier to use on mobile devices.
  4. The look and feel of the site has been refreshed.
  5. The search is now utilising an external search engine rather than something on the platform.
  6. There are no more comments on blog posts.
  7. There’s no option for scheduling blog posts.
  8. There’s no e-mail contact form.

I’ll come back to discuss many of these points in detail below.

Why has it changed?

There are many reasons for updating the site, but they probably break down into a couple of main categories.

1. Squarespace was no longer fit for purpose

This area actually covers a multitude of things, but previously this site was to an extent ‘stuck’ on an old version of the Squarespace content management system (CMS. Version 5 to be specific.

Squarespace had a migration path to upgrade sites from version 5 to version 6, and beyond, but they were suitable only for simple sites. ThoughtAsylum was far from being a simple site in Squarespace migration terms. This meant it would have been a lot of effort to migrate. Nowhere near as much effort as this migration took, but certainly more than I felt was acceptable.

Squarespace 5 supported XMLRPC which allowed me to utilise the excellent Mac blogging application MarsEdit. Unfortunately Squarespace removed this functionality in later versions of their platform citing that their own apps were better for maintaining the site. I looked. I disagreed.

The web interface for Squarespace 5 was unsurprisingly outdated being over 10 years old. Before the updates to mobile Safari a few months ago, it was incredibly difficult to try and maintain the site via the Apple mobile devices. Squarespace 5 didn’t offer native HTTPS, and while I could have used CloudFlare as an intermediary, that was just another reason to look at the alternatives. In the same vein, the lack of responsive design templates on this old platform was not helping readers.

Overall, Squarespace has a high level of lock-in. It is relatively easy to get content into the system, but much harder to get data out in any usable format. No (S)FTP, limited backups. You name it, they’ve constrained (or removed) it. I don’t like the ethics of that level of lock-in.

Don’t get me wrong though. At the time I moved to Squarespace, it was the best solution for this site. But that is certainly no longer the case for the needs around this site.

2. Automation & Control

When I started writing web pages back in the early 1990’s I wrote the HTML from scratch. I’ve coded in COBOL on mainframes and taught myself BASIC at the command line as a young child. I’ve even had a couple of brief dalliances with assembler. While I very much appreciate and am thankful for the many things that work well and that I don’t need to tinker with, I like being able to get in and change things to work how I want them to if the need arises. I missed having the same sort of control I used to back in the early days.

I also now have access to sophisticated automation tools on my desktop/laptop machines, my mobile devices, and via web services. Automation and re-tooling have been significant drivers for the desire to re-work the site.

What was the migration process?

The process was a rather protracted one. There were hundreds of pages of content to migrate and several platforms to review and learn about. Overall it took me between two and half and three years to do the work. When you work hard, volunteer several evenings a week, have young kids and occasionally want to fit in other hobbies, these things can take a while to deliver against.

The rough order has been much like many IT-based projects.

  1. Researching options.
    1. Exporting, scraping and caching of Squarespace data.
    2. Alternative platform features and capabilities, including import options.
  2. Up-skilling in selected platform.
  3. Prototyping.
    1. Data export approaches.
    2. Data conversion.
    3. Importing.
    4. New site.
  4. Design/Plan/Re-Plan
    1. Migration approach.
    2. New site.
  5. Develop
    1. Migration processes
    2. Migration tools
  6. Content Set-up
    1. Migration of content.
      • Including revisions and standardisation.
    2. Creation of content
  7. Commissioning
    1. Testing.
    2. iterative revisions.

What platform/host software did you choose?

In the end I went with a static site generator known as Jekyll. This is the site generator used for GitHub, specifically on GitHub Pages, and is the hosting provider currently being used; though with Jekyll, there are many site hosts available, and for a static web page site (i.e. one that does not dynamically serve pages), the hosting options are even broader.

Jekyll is a mature tool and there’s lots of information out there about it. Given I get to work with HTML, CSS, JavaScript, Markdown, Liquid, git and can get for all intents, direct file access (with version control) from practically anywhere, that gives me a lot of scope around automation and flexibility in the future, as well as access to the vast sets of resources out there. Given GitHub is a developer community in the main, that gives me access to lots of documentation and tools that can also gve me a step up if not a solution for many of the sorts of things I might wish to consider doing.

What tools did you use?

Over the years this took, I’ve used a lot of tools across several platforms. In alphabetic order, here are the ones I remember making use of and the sorts of things I did with them.

  • AutoHotKey (Windows) - content transformation and updates.
  • Automator (Mac) - content transformation and site management.
  • Drafts (i*OS/Mac) - editing and planning.
  • Fork (Mac) - source control.
  • Image2Icon (Mac) - content transformation.
  • ImageOptim (Mac) - content optimisation.
  • Integrity (Mac) - link checking.
  • Keyboard Maestro (Mac) - site management.
  • Marked 2 (Mac) - content review.
  • MarsEdit (Mac) - content extraction.
  • OmniFocus (i*OS/Mac/Web) - for planning and task tracking.
  • Paint.Net (Windows) - content creation and transformation.
  • Pandoc (Mac/Windows) - content transformation.
  • PathFinder (Mac) - structural management and content transformation.
  • Pixelmator Pro (Windows) - content creation and transformation.
  • Quiver (Mac) - site documentation.
  • Shell scripts (Mac) - content transformation and updates.
  • Shortcuts (iOS) - context extraction and transformation.
  • Site Sucker (Mac) - content extraction.
  • Sublime Text 3 (Mac/Windows) - for editing, planning and running a static site generator.
  • TaskPaper (Mac) - for planning and task tracking.
  • TextExpander (Mac/Windows/i*OS) - content templating standardisation.
  • TextSoap (Mac) - content transformation and updates.
  • VBScript/Windows Script Host (Windows) - content transformation and updates.
  • XYplorer (Windows) - structural management and content transformation.

I consider myself platform agnostic, and will typically just use whatever tools and platforms I have available that I think will be the most efficient for me to get the job at hand completed with. The downside is perhaps it leads to quite an array of tools in my toolbox for any project.

But some of the changes are for the worse…

At first read, several of the changes I highlighted in the first section will appear to be for the worse. The benefits outweighing these aside, here’s my thoughts on them.

No more post scheduling

This one is the one I will miss. But then again, I didn’t always have the greatest luck with the Squarespace scheduler. More a user interface confusion and inconsistency thing I suspect, but it is something I will miss. I could probably apply something if I wasn’t hosting the site on GitHub, but for now this is something I am going to live with. I suspect t will cause me some irritation at times having to manually post rather than queue things up, but it may be something I return to in the future.

No more post comments

This one is actually on purpose. Admin of the comments system against spam and then trying to manage responses and the like was definitely overwhelming at times. The addition of GDPR and other legal requirements has also muddied the waters somewhat and it really isn’t what the site is currently about.

Like many other sites I’ve decided therefore that we’ll forego the supporting of comments. There are plenty of other platforms where discussions of a particular post can be picked up further.

No more e-mail contact form

I get a lot of e-mail. I have had huge quantities of e-mail from people submitting requests via the site contact form. Many have been requests for me to add cross-links to ancient blog posts to products and services that I have no reason to endorse above others. Some have been sponsorship requests for things which have been nothing to do with the sort of content covered on the site.

Many more have been requests for personal assistance from me to help people with their IT issues; essentially freelancing for free. While I did try to help people where I could, the volumes became unwieldy after about five years.

The upshot is that there is now no e-mail form. There is still a contact page, and for anyone who wants to get in touch, it is actually relatively easy to do. But I’m hoping that moving away from e-mail, which I’m trying to do in general anyway, and towards opening up more public or professional communications through other channels will enable me to be more responsive an provide a higher quality of engagement such that I’m not as overloaded as I have been in the past.

What’s next?

This is in effect a refresh. A major one, but a refresh nonetheless. Over the coming months I expect/hope that the following will occur.

  1. More content is the obvious one. I have quite a few ideas that have been on the back burner or progressing very slowly in parallel for the last few years, so there is certainly lots of new content in the works.
  2. I might further revise the styling of the site. It’s working at the moment, but I know there are some CSS revisions that will probably improve things further. This is my first time working with a responsive site layout and I’m far from being an aesthetic or usability-focused designer; but I’ll be trying to improve things here and there when I can.
  3. the site may be live, but I have a lot of work to do now around automation and streamlining publishing and revision processes. I have working processes, but I am aware of bottlenecks for ongoing publishing an maintenance and plan to develop things to help me both on laptop/desktop, and mobile.
  4. I’m not 100% sold on using Duck Duck Go for the site search long term. Certainly at the point of switching, it has not indexed the new site structure and revised content. Going forward, there’s going to be a delay in it indexing new content. I did look at an included lunar-based search, but in my admittedly brief experimentation, it didn’t play so well with the site. It turned out the content size and breadth just stopped the indexer dead in its tracks about 30% through. But if I can find an alternative that will work with GitHub, is not potentially expensive to run, and is ideally locally hosted, then I’ll certainly look into it.

Conclusion

It has been a longer road than I’d hoped to get to this point, but overall I’m at least content, maybe even happy, with where things stand. It could always be better, and there will always be the “what if” nag in the back of my head that will offer up potentially better ways of doing things; but they may even come to be one day. The important things are that the site is now in a better position for the reader with a responsive design and served with HTTPS, and in a better position for me to be able to author in any platform and with the flexibility to go anywhere and do anything.

I hope you like the update as it currently stands and that you’ll come back for future updates.

Author: Stephen Millard
Tags: | thoughtasylum | web | jekyll |

Buy me a coffeeBuy me a coffee



Related posts that you may also like to read