/ Projects / Building this website



Building this website




Last update: April 28, 2024

I wonder what the world would be if the internet had remained a place where people built their own websites themselves. Each person's corner of the internet would be their simple ("ugly") website, rather than a staked-out presence in corporate ready-made megastructures like Facebook and Instagram. Would the content of the internet be different, in such a world? What would people share about themselves, if they didn't have a template?


I wonder if this world could actually be in our future. It seems to me that our society increasingly sees value in teaching children how to code. Maybe we are getting closer to widespread basic coding fluency, and we'll soon see more "do-it-myself" sticklers who aren't intimidated by the task of building a website from scratch. I hope so, not because I necessarily expect a "bottom-up" internet to be better, but moreso out of curiosity. I would like to see what people would say about themselves in a more free-form space. I would like to see another beautiful, ugly internet.


•••

I am definitely a "do-it-myself" stickler, so when I thought about making a personal website, I knew I wanted to make it myself "from scratch". That's what I've done here, though I was inspired by the design of this website, among others. The source code for my website can be found on my Github.


I want to keep this website simple. For this reason, I'm keeping it to pure html and css, with no JavaScript. I'm not quite sure why I have this inclination. I've only done a little bit of JavaScript coding, but something about it is unappealing to me. Of course, my 'pure html and css' restriction doesn't include pages where I've made PyScript-powered widgets (which use Python and JavaScript on the back-end). But the website itself - the layout, the buttons, etc. - uses no JavaScript.


Also along the 'keep it simple' vein, I originally wanted the website to be completely static. However, organizing the static site quickly became beastly. I was copy/pasting things (e.g. my menu pane) everywhere, which was annoying, repetitive, and prone to typos. So, I bit the bullet and decided to use SSI. Now, instead of copy/pasting my html layout every time I make a new page, I have a template page which I programmatically populate. The template is structured like this:


<!--- shtml --->

<html>
    <!--#include virtual="header.html" -->
    <body>
        <!--#include virtual="menu.html" -->
        <section class="rightpane-wrapper">

            <div class="rightpane-head">
                <p>
                <a style="color:currentColor; font-weight:300" href="<!--#echo var="categoryLink"-->"><!--#echo var="categoryName"--></a>
                <!--#echo var="categorySpacer"-->
                <span class="rightpane-head-title"><!--#echo var="pageTitle" --></span>
                </p>
                </div>

            <div class="rightpane-body">
                <hr><br><h1><!--#echo var="pageTitle"--></h1><br>
                <hr><br><span>Last update: <!--#echo var="lastUpdate"--><br></span><br>
                <!--#include virtual="$content"-->
                <br><hr><br><p> © 2021-2024   Megan Cowie <br></p>
            </div>

        </section>
    </body>
</html>


and the variables that go into this template are set in a separate (page-specific) shtml file:


<!--- shtml --->

<!--#set var="categoryName" value="Projects" -->
<!--#set var="categoryLink" value="/projects/projects.shtml" -->
<!--#set var="categoryspacer" value=" /" -->

<!--#set var="pageTitle" value="Building this website" -->
<!--#set var="content" value="projects/content/content_thiswebsite.html"-->

<!--#set var="lastUpdate" value="April 28, 2024" -->

<!--#include virtual="../template_page.shtml" -->


The content of the webpage is written in its own html file. Including SSI meant that I had to set up a local server for testing. I did this with Apache, which was thankfully easy enough to do by following online tutorials.


And that's it! (so far.) I'm surprised by how much I enjoy coding in html and css. It's fun to have so much easy freedom over formatting - it's certainly an avenue to be creative.




© 2021-2024   Megan Cowie