See this for more on worklogs.
Web develoment was how I first got into programming, many years ago. My ISP
served every user’s home directory- something like
http://myisp.com/~mylogin/ - and I would FTP files up to it. PHP was my first
“production-grade”1 programming language, after Logo; some of my first
projects were on a LAMP stack.
The Web has changed a lot since those days. Encrypted connections are standard, client-side and server-side dynamic content, and cheap-to-free hosting from all sorts of companies (including my employer). The industry has an increased understanding of how to design for [accessibility], and there’s a plethora of tools for analyzing all sorts of site attributes. Importantly, there’s lots of resources for learning how to build for the modern web - including building outside of any particular platform.
As my career (and interests) have taken me towards the “back end” of computer
systems, my site hasn’t kept up with the modern web. I’ve held on to
cceckman.com as a placeholder - reserving my usual handle in the DNS, but
serving only unstyled, handwritten HTML.2 That’s been mostly fine- the site
has done what I wanted it to do.
But over the last few weeks-to-months, I’ve realized that I want more of a web presence, for a few reasons:
I want to write more.
I used to do a lot of writing - for school, and earlier in my career. I’ve somewhat gotten out of the habit, due to changes in teams, projects, and personalities. Frankly, I’m rusty at communicating ideas in writing, and could use the practice.
Current circumstances aside, written communication is especially important to my personal effectiveness. I have relatively poor memory for audio; doing things like taking minutes and sending follow-ups helps me focus in the moment, and gives me something other than my own head to rely on later.
I want to share.
I learn a lot by [reading][https://cceckman.com/reading]; I owe a lot to those who have taken the time to write up their experiences and discoveries. I’ve not done a good job of paying that forward, sharing how I’ve solved problems I’ve encountered.
Also - more selfishly - it’s hard to improve without some external feedback; and it’s impossible to get feedback without sharing.
I want to own what I create.
There’s plenty of platforms out there; I could eaily toss some words into Blogger, or Wordpress.com, or Facebook, or Twitter, or any number of other sites. Over the years I’ve scattered “content” across many such platforms…that is now hard to find, update, index, share, and/or remove.
I want to keep my own copy, and be able to correct or retract as needed. There’s also the matter of presentation: I feel responsible for the accessiblity and discoverability as well.3
Of course, I’m biased by my existing predelictions and profession. I have fun building things with computers, and ultimately having a site is useful in my industry.
So, with all that said: here’s the worklog for this site.
Platform and tools
Had heard of Hugo; seems to fit the bill:
- Static site builder
- I want to write in Markdown, serve HTML
- Know Go (and Go templates)
- Learning goals are “web technologies”
- Not “particular frameworks”, just enough to move serving forward
- Hugo seems like a good bet; I know Go & some of Go templates.
- Static-serving on platform level
- Mostly avoid dynamic serving; cheaper and more secure to “just” do static-serving
- Do want some dynamic paths, e.g. redirects; but minimal & minimally privileged
- Know a little App Engine; can split by path and serve static, free tier is plenty
- App Engine for Go is “write an HTTP server”; largely still portable
- Single-platform integration w/ Cloud Build
- Eventual / partial unhosted serving?
- Perhaps for some privileged parts, e.g. reading-list admin
- ~Any platform is going to do a better job of HTTP2+, caching and distribution, security than I am.
- Accessibility audit
- Font review
- Publishing my reading list: blogroll and additional articles
- Including Web Share Target support
- Backfilling articles I’ve enjoyed
- Outbound Webmention support
- Inbound Webmention support
- Theme improvements
- Syntax highlighting
In the sense of “used in production” and “not designed for education”. There are plenty of reasons why one might avoid PHP. ↩︎
I won’t claim this site is great on accessibility yet- but I did change the color scheme from the original red on green to this more legible contrast. Please forgive me; I was very young and very foolish. ↩︎
There seems to be more writing on “why and how to make your own website” at IndieWeb. Link is not endorsement; I haven’t been through much of that site, just am aware of its applicability here. ↩︎