Experimentations in Grav CMS

In the not-so-distance past, when I was growing up and technology was growing with me, we published content to the web by messing around with free internet services. The “content editor” was a plain text box where you put HTML.

Back then, I made websites using Angelfire and Geocities, those long-deceased vessels of how the web used to be. Much to my surprise, Angelfire still exists, but my memory of it is far removed from its currently reality. I remember spending hours trying to learn HTML by cribbing source code from other websites and customizing it for my own projects. Eventually, MySpace and Blogger and WordPress and LiveJournal came along, and the rest is history. Front-end and back-end web publishing became as easy as sending emails. Web 2.0 made further leaps in user-generated content. You can now make a custom website using Squarespace without knowing a lick of CSS or HTML.

That’s how I remember it, anyway. I’m sure there’s more to the story. As for me, I graduated high school and determined that Computer Science was in my future. My limited grasp on the technology and the languages that made computers work didn’t stop me. I didn’t know enough from dabbling in HTML and CSS to make my time in Computer Science easier. I also discovered that real programming was tedious, difficult, and unrewarding. I couldn’t master it and spent most of my first year frustrated. After failing to learn basic concepts, and deciding that the 4-year grind toward a degree wouldn’t end well, I withdrew.

Thankfully, other classes captured my intellectual curiousity. In particular, I was spellbound by English, where I was compelled by the study of language and literature. My professors discussed stories as vehicles for ideology, but to me it seemed more like magic. I was hooked.

I traded technology and programming for books and writing, and went on to finish an MA in English in 2012. I didn’t abandon technology – that’s impossible in today’s world. But it did recede from focus, as I spent more and more computer time for its most basic uses – word processing, file storage, social media, whatever. I didn’t even have my own blog until I set up Tumblr a few years ago, impressed with how little effort it took. I whittled away my writing time on school and work projects.

That’s still mostly true today. One of the purposes of this blog is to change that. Another is for me to dig into unfamiliar territory: flat-file CMS environments. Enter Grav. It would be easier to use WordPress or a similar service, but the learning opportunities in Grav are expansive. I have to use Markdown. I have to get into Terminal and work from the command line. I have to deal with FTP. For the majority of Grav’s users, most of this is old hat. But not me. I don’t have a GitHub account. I don’t have a background in web development. I’m functionally illiterate when dealing with code.

So why do it this way, then?

My instinct here is to play. I want to learn and I want to fail. I want to learn by failing. More than that, I want to recapture the feeling of getting HTML code to work on Angelfire. Things have come a long way since then, and I want to see what I can learn and do on my own. Facebook, Twitter, and Google makes tools that are easy and convenient, but of late I’ve become uncomfortable with the corporatization of the web. I’m not an expert on this stuff, but data-mining and ads are enough to give me pause and think about how much of my digital identity I’ve handed over without a second thought. I don’t want a templated self. I don’t want my content used to improve ad-targeting, and I don’t want to lock myself into a platform over which I have no control. I want to do my own thing and embrace the Indie Web, even if that means failing at the most basic levels.

This website is a small gesture toward reclaiming my digital identity.

There’s a real possibility that this experiment fizzles and I look for other solutions. But until then, thanks for visiting!

Written on December 12, 2015