Skip to main content

Genesis

·327 words·2 mins
Christopher Howie
Author
Christopher Howie
An aspiring software engineer based in Vancouver, BC

Goals
#

After recently finding inspiration from the following two articles:

I’ve decided to both commit to the practice of writing blog posts, and endeavour to engage in content-driven development.

I’ve found myself meandering around the minutuae of a few personal projects lately, and often found myself more focused and driven when keeping a journal alongside my efforts. Posts in /devlog will simply be these journals prepared for publication.

That being said, I hope to write about a variety of topics, and hope to eventually hit my stride and find a voice I’m comfortable with.

This Blog
#

Is powered by Hugo & Blowfish.

It is served from a DigitalOcean VPS via Nginx.

While we will be diving into my misadventures as an autodidact software engineer, you won’t find the typical waltz down build your own markdown parser avenue or blog generator boulevard. We want to focus our time on writing and other projects.

Writing, Building and Deployment
#

Writing a new devlog is as simple as

hugo new content/devlog/article-name.md

Building the blog is as simple as

hugo

Deployment is as simple as:

rsync -avz -e "ssh -i /home/chowie/.ssh/secure_droplet" public/ chowie@chowie.uk:/srv/blog

We’ve previously used scp for this kind of transfer, but rsync has several features that make it superior for this use case. Primarily it only transfers what’s necessary; while scp simply writes from source to destination, rsync calculates and transfers only the differences between the source and destination.

Flags used:
#

-a for archive; syncs recursively and preserves symbolic links, special and device files, modification times, groups, owners, and permissions.

-v for verbose.

-z for compress.

-e for specifying a shell; we want to choose the correct SSH key for this server.

-n for dry run; not included above but used often.