A new home


<- back | tags: /dev/journal webdev

Welcome. This is the beginning of my new internet home.

The point

This is a little space for me to show the internet that I do things. My intent is to focus predominantly on software engineering, computer science, and related career pursuits. Lots of people have pages like this. Now I also have a page like this. I feel very hip.

Why a static page

The web is a complicated and messy place. With a static page what you see is what you get. There's no magic and the source code is simple and easy to follow - the pages that are delivered are the pages that are stored server-side.

Additionally, there's some added benefit over dynamic pages:

  • Complexity
    • Configuration and production of context required knowledge of python, html, css, and jinja2
  • Security
    • There's nothing dynamic that can be exploited
  • Performance:
    • Simple caching
  • Limited dependencies:
    • Less complex infrastructure to run the site; we just require a web server that can serve static files
    • No modules, libraries, or packages with their own dependency issues

Why pelican

Pelican is a static website generator written in Python. I've written the pages in markdown (Pelican also supports reStructuredText if you're into that instead).

Syntax highlighting

Combined with Pygments it can produce syntax highlighted blocks (in a lot of languages):

fn hello_world() {
    println!("Hello world!");
}

And, of course, inline code like hello_world() as well.

Content generation

Style-wise, it's straight-forward to produce your own templates and styles to get the texture you're looking for. And, once you're up and running, content generation is as simple as writing a new markdown page.