Commit 3ff9199e authored by Nicolas Lenz's avatar Nicolas Lenz
Browse files

Update homepage and templates for new Nebelhorn

parent 20499546
Pipeline #1314 failed with stage
in 6 seconds
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/c/bytegeschichten
thumb:
link: /res/thumb/bytegeschichten.png
alt: TThe cover image of Bytegeschichten.
abstract: "I make a German-speaking podcast about computer science named \"Bytegeschichten\"."
description: "I make a German-speaking podcast about computer science named \"Bytegeschichten\"."
---
![The cover image of Bytegeschichten.](/res/article/bytegeschichten.png)
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/c/systemproblem
thumb:
link: /res/thumb/systemproblem.png
alt: The cover image of our podcast.
abstract: "My friend Jonas and I are now making a German-speaking podcast named \"Das System ist das Problem\"."
description: "My friend Jonas and I are now making a German-speaking podcast named \"Das System ist das Problem\"."
---
![The cover image of our podcast.](/res/article/systemproblem.png)
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/routing-specific-docker-containers-thro
thumb:
link: /res/thumb/metro-tunnel.jpg
alt: A motion blurred subway tunnel.
abstract: A simple solution for routing specific docker containers through a WireGuard VPN using only two simple systemd-networkd files, no cumbersome `wg` or `ip` calls.
description: A simple solution for routing specific docker containers through a WireGuard VPN using only two simple systemd-networkd files, no cumbersome `wg` or `ip` calls.
---
![I heard that dramatic article images heavy with meaning are a meme, so here you have a picture of a subway tunnel because VPNs are network tunnels. [^i]](/res/article/metro-tunnel.jpg)
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/e-scooters
thumb:
link: /res/thumb/e-scooters.jpg
alt: E-scooters lying on a sidewalk.
abstract: Electrical kick scooters are conquering cities around the globe. They are fun, practical and environmentally friendly – allegedly, that is.
description: Electrical kick scooters are conquering cities around the globe. They are fun, practical and environmentally friendly – allegedly, that is.
---
![E-scooters littering a sidewalk.[^i]](/res/article/e-scooters.jpg)
......
......@@ -7,7 +7,6 @@ thumb:
link: /res/article/wall-street.jpg
alt: The New York Stock Exchange as seen from Wall Street, a well-known symbol of capitalism.
description: In this essay I put the gist of my political ideas regarding economics in writing.
abstract: In this essay I put the gist of my political ideas regarding economics in writing.
noIndex: true
---
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/frankfurt-am-main
thumb:
link: /res/thumb/frankfurt-am-main.jpg
alt: The "Alte Oper" (old opera) in Frankfurt am Main.
abstract: Over the weekend I went on a trip to Frankfurt am Main. For the first time in a while, I took some time to take some photos with my camera and some turned out quite well.
description: Over the weekend I went on a trip to Frankfurt am Main. For the first time in a while, I took some time to take some photos with my camera and some turned out quite well.
---
![The "Alte Oper" (old opera).](/res/article/frankfurt/alte-oper.jpg)
......
......@@ -3,7 +3,7 @@ title: "Language Design: Machine or Human?"
date: 2021-02-11
tags: [Computer Science, Programming Languages, Language Design]
discussion: https://forum.eisfunke.com/t/language-design-machine-or-human
abstract: When designing a computer language, be it for programming, data exchange, document markup or configuration, the first thing you should do is decide as to whether your language is meant for use by humans or by machines. Well, obviously, every language will be used by both, but still, who is your main target audience?
description: When designing a computer language, be it for programming, data exchange, document markup or configuration, the first thing you should do is decide as to whether your language is meant for use by humans or by machines. Well, obviously, every language will be used by both, but still, who is your main target audience?
---
This question is important because depending on your answer there are a few specific contradicting design principles that you should follow.
......
......@@ -5,7 +5,7 @@ tags: [Personal, Computer Science, Programming Languages, Haskell, Functional Pr
thumb:
link: /res/thumb/bachelor.png
alt: A fractal snowflake from the title page of my bachelor thesis.
abstract: I recently turned in my bachelor thesis. I don't have the results yet, but still, that's a lot of pressure gone now. I hope that I'll be able to use the free time until my first master semester starts to get some of my personal projects done.
description: I recently turned in my bachelor thesis. I don't have the results yet, but still, that's a lot of pressure gone now. I hope that I'll be able to use the free time until my first master semester starts to get some of my personal projects done.
---
![The snowflake from the title page of my bachelor thesis. It is generated using a lindenmayer system fractal, which is a context-free grammar. That somewhat fits the topic, but it's mostly pretty and I like both snowflakes and fractals. [^snowflake]](/res/article/bachelor.png)
......
......@@ -2,6 +2,7 @@
title: My New Blog
date: 2019-09-26
tags: [Meta]
description: The first version of my new website is online.
---
It took quite some time and tinkering, but now the first version of my new blog is ready. It's far from finished at this point, but it works well enough. I'm looking forward to writing down my thoughts about politics, science and more here. We'll see whether I'll be able to keep up regular posts.
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/speed-limits-on-autobahns
thumb:
link: /res/thumb/a45-oespel.jpg
alt: The autobahn A45 in Dortmund-Oespel and the road sign for "all restrictions lifted".
abstract: In Germany the discussion about an introduction of a general speed limit on freeways has rekindled. Again. Should it be introduced or not?
description: In Germany the discussion about an introduction of a general speed limit on freeways has rekindled. Again. Should it be introduced or not?
---
![The autobahn A45 in [Dortmund-Oespel](https://www.openstreetmap.org/#map=18/51.48262/7.39151) and the road sign for "all restrictions lifted".](/res/article/a45-oespel.jpg)
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/svg-the-good-the-bad-and-the-ugly
thumb:
link: res/article/svg-logo.svg
alt: The SVG logo.
abstract: SVG, short for *"scalable vector graphics"* is a format for, well, scalable vector graphics. In this article I summarize my opinion of the format, what its problems are and suggest what could be done to improve things.
description: SVG, short for *"scalable vector graphics"* is a format for, well, scalable vector graphics. In this article I summarize my opinion of the format, what its problems are and suggest what could be done to improve things.
---
![The SVG logo.[^i]](/res/article/svg-logo.svg)
......
......@@ -6,7 +6,7 @@ discussion: https://forum.eisfunke.com/t/the-eus-first-dictatorship
thumb:
link: res/thumb/orban-epp.jpg
alt: Viktor Orbán speaking for the EPP in 2014.
abstract: Hungary is now the EU's first dictatorship. And the EU is doing – nothing.
description: Hungary is now the EU's first dictatorship. And the EU is doing – nothing.
---
![Viktor Orbán speaking for the EPP in 2014. [^i]](/res/article/orban-epp.jpg)
......
......@@ -6,7 +6,7 @@ tags: [Politics, Germany, Traffic, Liberty]
#thumb:
# link: res/thumb/a45-oespel.jpg
# alt: The autobahn A45 in Dortmund-Oespel and the road sign for "all restrictions lifted".
#abstract: In Germany the discussion about an introduction of a general speed limits on freeways has rekindled. Again. Should it be introduced or not?
description: A small update on speed limits on expressways.
---
Just a small update on [speed limits on expressways](https://www.eisfunke.com/article/speed-limit-on-autobahns.html): While in Germany a general speed limit of 130 km/h has been rejected in parliament[^fail], the Netherlands now have passed a law setting a general speed limit *of 100 km/h* during the day to combat too high nitrogen oxide emissions.[^pass] (note that that's no climate gas, but harmful for people, animals and plants). The prime minister called it a "rotten measure" but necessary.
......
---
title: Home
description: Thoughts on Computer Science, Politics, Philosophy and More
---
::: box
I am Nicolas, also known as Eisfunke. I'm a computer science student from Germany. I like learning & teaching stuff, functional programming, type systems, politics and more.
If you'd like to find out more about me or if you want to contact me, take a look at the about page.
Occasionally I write blog articles about various things that interest or bother me. You can find these articles below.
:::
<!DOCTYPE html>
${head()}
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>$pagetitle$ | Eisfunke</title>
<meta name="author" content="Nicolas Lenz (Eisfunke)"/>
<meta name="description" content="$abstract$"/>
<meta property="og:title" content="$pagetitle$ | Eisfunke"/>
<meta property="og:site_name" content="EisfunkeBlog"/>
<meta property="og:description" content="$abstract$"/>
<meta property="og:image" content="https://www.eisfunke.com$thumb.link$"/> <!-- TODO base url -->
<meta name="twitter:image:alt" content="$thumb.alt$"/>
<meta property="og:image:alt" content="$thumb.alt$"/>
<meta property="og:url" content="https://www.eisfunke.com$link$"/> <!-- TODO base url -->
<link rel="canonical" href="https://www.eisfunke.com$link$"/>
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:site" content="@Eisfunke"/>
<meta name="generator" content="nebelhorn"/>
<link rel="stylesheet" type="text/css" href="/style/stylesheet.css"/>
<link rel="icon" type="image/png" href="/res/favicon.png"/>
<meta name="viewport" content="width=device-width, initial-scale=0.8"/>
$if(date-meta)$
<meta name="dcterms.date" content="$date-meta$"/>
$endif$
<!-- This is bad, css should only be linked, find out how to inject it into CSS file directly -->
<style>
$if(highlighting-css)$
$highlighting-css$
<main>
<div class="box meta">
<p>
$if(date)$
<span><b>Date:</b> $date$</span>
$endif$
</style>
</head>
<body>
<header>
<img id="header-logo" src="/res/logo.png" alt="Eisfunke logo"/>
<p id="page-title"><a href="/">Eisfunke</a></p>
<p id="page-subtitle">Thoughts on Computer Science, Politics and Philosophy</p>
</header>
<div id="bar">
<nav>
$for(navbar)$
<a href="$navbar.link$" class="$if(navbar.active)$active$endif$">$navbar.name$</a>
$endfor$
</nav>
<div id="title">
$if(title)$
<p>$title$</p>
$endif$
</div>
</div>
<main>
<div class="box meta">
<p>
$if(date)$
<span><b>Date:</b> $date$</span>
$endif$
$if(tags)$
<span><b>Tags:</b> $for(tags)$$tags$$sep$, $endfor$</span>
$endif$
</p>
<p>
<a class="button high" $if(prev)$href="$prev$"$endif$>Prev</a>
<a class="button low" $if(discussion)$href="$discussion$"$endif$>To Discussion</a>
<a class="button high" $if(next)$href="$next$"$endif$>Next</a>
</p>
</div>
$if(abstract)$
<div id="abstract">
<p>
$abstract$
</p>
</div>
$if(tags)$
<span><b>Tags:</b> $for(tags)$$tags$$sep$, $endfor$</span>
$endif$
</p>
<p>
<a class="button high" $if(prev)$href="$prev$"$endif$>Prev</a>
<a class="button low" $if(discussion)$href="$discussion$"$endif$>To Discussion</a>
<a class="button high" $if(next)$href="$next$"$endif$>Next</a>
</p>
</div>
$if(description)$
<div id="abstract">
<p>
$description$
</p>
</div>
$endif$
<div id="article">
<!-- Body -->
<div id="article">
$body$
<!-- /Body -->
</div>
<div class="box meta">
<p>
<a class="button high" $if(prev)$href="$prev$"$endif$>Prev</a>
<a class="button low" $if(discussion)$href="$discussion$"$endif$>To Discussion</a>
<a class="button high" $if(next)$href="$next$"$endif$>Next</a>
</p>
</div>
</main>
<footer>
<p>2020 – Nicolas Lenz</p>
<p><a href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="CC-BY-SA-4.0" src="/res/cc-by-sa.png"/></a></p>
<p><small>
<a href="https://git.eisfunke.com/document/eisfunke.com" class="button high">Source</a>
<a href="/imprint.html" class="button low">Imprint</a>
<a href="/privacy.html" class="button low">Privacy</a>
</small></p>
</footer>
</body>
</html>
</div>
<div class="box meta">
<p>
<a class="button high" $if(prev)$href="$prev$"$endif$>Prev</a>
<a class="button low" $if(discussion)$href="$discussion$"$endif$>To Discussion</a>
<a class="button high" $if(next)$href="$next$"$endif$>Next</a>
</p>
</div>
</main>
${foot()}
<footer>
<p>2021 – Nicolas Lenz</p>
<p><a href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="CC-BY-SA-4.0" src="/res/cc-by-sa.png"/></a></p>
<p>
<small>
<a href="https://git.eisfunke.com/document/eisfunke.com" class="button high">Source</a>
<a href="/imprint.html" class="button low">Imprint</a>
<a href="/privacy.html" class="button low">Privacy</a>
</small>
</p>
</footer>
</body>
</html>
<!--
TODO:
- use dynamic base URLs
- canonical link on /index.html?
-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>$title$ | Eisfunke</title>
<meta name="author" content="Nicolas Lenz (Eisfunke)"/>
<meta property="og:title" content="$title$ | Eisfunke"/>
<meta property="og:site_name" content="Eisfunke"/>
${if(description)}
<meta name="description" content="$description$"/>
<meta property="og:description" content="$description$"/>
${endif}
<!-- TODO base url -->
${if(thumb)}
<meta property="og:image" content="https://www.eisfunke.com$thumb.link$"/>
<meta name="twitter:image:alt" content="$thumb.alt$"/>
<meta property="og:image:alt" content="$thumb.alt$"/>
${else}
<meta property="og:image" content="https://www.eisfunke.com/res/logo-eis.png"/>
<meta name="twitter:image:alt" content="Eisfunke Logo"/>
<meta property="og:image:alt" content="Eisfunke Logo"/>
${endif}
<!-- TODO base url -->
<meta property="og:url" content="https://www.eisfunke.com$link$"/>
<!-- TODO nothing on /index.html -->
<link rel="canonical" href="https://www.eisfunke.com$link$"/>
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:site" content="@Eisfunke"/>
<meta name="generator" content="nebelhorn"/>
<link rel="stylesheet" type="text/css" href="/style/stylesheet.css"/>
<link rel="icon" type="image/png" href="/res/favicon.png"/>
<meta name="viewport" content="width=device-width, initial-scale=0.8"/>
$if(date-meta)$
<meta name="dcterms.date" content="$date-meta$"/>
$endif$
<!-- This is bad, css should only be linked, find out how to inject it into CSS file directly -->
${if(highlighting-css)}
<style>
${highlighting-css}
</style>
${endif}
</head>
<body>
<header>
<img id="header-logo" src="/res/logo.png" alt="Eisfunke logo"/>
<p id="page-title"><a href="/">Eisfunke</a></p>
<p id="page-subtitle">Thoughts on Computer Science, Politics and Philosophy</p>
</header>
<div id="bar">
<nav>
$for(navbar)$
<a href="$navbar.link$" class="$if(navbar.active)$active$endif$">$navbar.name$</a>
$endfor$
</nav>
<div id="title">
$if(title)$
<p>$title$</p>
$endif$
</div>
</div>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>$pagetitle$ | Eisfunke</title>
<meta name="author" content="Nicolas Lenz (Eisfunke)"/>
<meta name="description" content="EisfunkeBlog – Thoughts on Computer Science, Politics, Philosophy and More"/>
<meta property="og:title" content="$pagetitle$ | Eisfunke"/>
<meta property="og:site_name" content="EisfunkeBlog"/>
<meta property="og:description" content="EisfunkeBlog – Thoughts on Computer Science, Politics, Philosophy and More"/>
<meta property="og:image" content="https://www.eisfunke.com/res/logo-eis.png"/> <!-- TODO base url -->
<meta name="twitter:image:alt" content="Eisfunke Logo"/>
<meta property="og:image:alt" content="Eisfunke Logo"/>
<meta property="og:url" content="https://www.eisfunke.com"/> <!-- TODO base url -->
<link rel="canonical" href="https://www.eisfunke.com"/>
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:site" content="@Eisfunke"/>
<meta name="generator" content="nebelhorn"/>
<link rel="stylesheet" type="text/css" href="/style/stylesheet.css"/>
<link rel="icon" type="image/png" href="/res/favicon.png"/>
<meta name="viewport" content="width=device-width, initial-scale=0.8"/>
</head>
<body>
<header>
<img id="header-logo" src="/res/logo.png" alt="Eisfunke logo"/>
<p id="page-title"><a href="/">Eisfunke</a></p>
<p id="page-subtitle">Thoughts on Computer Science, Politics and Philosophy</p>
</header>
<div id="bar">
<nav>
$for(navbar)$
<a href="$navbar.link$" class="$if(navbar.active)$active$endif$">$navbar.name$</a>
$endfor$
</nav>
<div id="title">
<p>Articles</p>
</div>
</div>
<main><div id="articles">
$for(articles)$
<div class="index-article">
<h1><a href="$articles.link$">$articles.title$</a></h1>
<p class="index-meta">
$if(articles.date)$
<span><b>Date:</b> $articles.date$</span>
$endif$
$if(articles.tags)$
<span><b>Tags:</b> $for(articles.tags)$$articles.tags$$sep$, $endfor$</span>
$endif$
</p>
<div class="index-summary">
$if(articles.thumb)$<img class="index-thumbnail" alt="$articles.thumb.alt$" src="$articles.thumb.link$"/>$endif$
$if(articles.abstract)$
<p>$articles.abstract$</p>
$else$
$articles.body$
$endif$
$if(articles.abstract)$
<p class="index-link">
<a href="$articles.link$" class="button high">Full Article</a>
</p>
$else$
$endif$
</div>
</div>
$endfor$
</div></main>
<footer>
<p>2020 – Nicolas Lenz</p>
<p><a href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="CC-BY-SA-4.0" src="/res/cc-by-sa.png"/></a></p>
<p><small>
<a href="https://git.eisfunke.com/document/eisfunke.com" class="button high">Source</a>
<a href="/imprint.html" class="button low">Imprint</a>
<a href="/privacy.html" class="button low">Privacy</a>
</small></p>
</footer>
</body>
</html>
${head()}
<main>
$body$
<div id="articles">
$for(articles)$
<div class="index-article">
<h1><a href="$articles.link$">$articles.title$</a></h1>
<p class="index-meta">
$if(articles.date)$
<span><b>Date:</b> $articles.date$</span>
$endif$
$if(articles.tags)$
<span><b>Tags:</b> $for(articles.tags)$$articles.tags$$sep$, $endfor$</span>
$endif$
</p>
<div class="index-summary">
$if(articles.thumb)$<img class="index-thumbnail" alt="$articles.thumb.alt$" src="$articles.thumb.link$"/>$endif$
$if(articles.description)$
<p>$articles.description$</p>
$else$
<p>No description.</p>
$endif$
$if(articles.description)$
<p class="index-link">
<a href="$articles.link$" class="button high">Full Article</a>
</p>
$endif$
</div>
</div>
$endfor$
</div>
</main>
${foot()}
<!DOCTYPE html>
${head()}
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>$pagetitle$ | Eisfunke</title>
<meta name="author" content="Nicolas Lenz (Eisfunke)"/>
<meta name="description" content="EisfunkeBlog – Thoughts on Computer Science, Politics, Philosophy and More"/>
<meta property="og:title" content="$pagetitle$ | Eisfunke"/>
<meta property="og:site_name" content="EisfunkeBlog"/>
<meta property="og:description" content="EisfunkeBlog – Thoughts on Computer Science, Politics, Philosophy and More"/>
<meta property="og:image" content="https://www.eisfunke.com/res/logo-eis.png"/> <!-- TODO base url -->
<meta name="twitter:image:alt" content="Eisfunke Logo"/>
<meta property="og:image:alt" content="Eisfunke Logo"/>
<meta property="og:url" content="https://www.eisfunke.com$link$"/> <!-- TODO base url -->
<link rel="canonical" href="https://www.eisfunke.com$link$"/>
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:site" content="@Eisfunke"/>
<meta name="generator" content="nebelhorn"/>
<link rel="stylesheet" type="text/css" href="/style/stylesheet.css"/>
<link rel="icon" type="image/png" href="/res/favicon.png"/>
<meta name="viewport" content="width=device-width, initial-scale=0.8"/>
</head>
<body>
<header>
<img id="header-logo" src="/res/logo.png" alt="Eisfunke logo"/>
<p id="page-title"><a href="/">Eisfunke</a></p>
<p id="page-subtitle">Thoughts on Computer Science, Politics and Philosophy</p>
</header>
<div id="bar">
<nav>
$for(navbar)$
<a href="$navbar.link$" class="$if(navbar.active)$active$endif$">$navbar.name$</a>
$endfor$
</nav>
<div id="title">
$if(title)$
<p>$title$</p>
$endif$
</div>
</div>
<main>
<div id="page">
<!-- Body -->
<main>
$body$
<!-- /Body -->
</div>
</main>
</main>
<footer>
<p>2020 – Nicolas Lenz</p>
<p><a href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="CC-BY-SA-4.0" src="/res/cc-by-sa.png"/></a></p>
<p><small>
<a href="https://git.eisfunke.com/document/eisfunke.com" class="button high">Source</a>
<a href="/imprint.html" class="button low">Imprint</a>
<a href="/privacy.html" class="button low">Privacy</a>
</small></p>
</footer>
</body>
</html>
${foot()}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment