aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--404.html8
-rw-r--r--Makefile60
-rw-r--r--README.md2
-rw-r--r--_config.yml6
-rw-r--r--_includes/header.html51
-rw-r--r--_includes/main.html19
-rw-r--r--_layouts/empty.html4
-rw-r--r--_layouts/page.html4
-rw-r--r--_layouts/post.html4
-rw-r--r--_posts/2015-04-09-hello-world.md6
-rw-r--r--_projects/2010-sims.md7
-rw-r--r--_projects/2011-vhc.md7
-rw-r--r--_projects/2012-k8055.md6
-rw-r--r--_projects/2013-akka-serial.md6
-rw-r--r--_projects/2014-condor.md7
-rw-r--r--blog/index.html12
-rw-r--r--cv.pdf (renamed from assets/cv.pdf)bin154565 -> 154565 bytes
-rw-r--r--index.html13
-rw-r--r--layout.pandoc.html65
-rw-r--r--projects.md68
-rw-r--r--projects/condor.png (renamed from assets/images/condor.png)bin35706 -> 35706 bytes
-rw-r--r--projects/index.html34
-rw-r--r--projects/main.css4
-rw-r--r--projects/sims.jpg (renamed from assets/images/sims.jpg)bin6456 -> 6456 bytes
-rw-r--r--projects/vhc.png (renamed from assets/images/vhc.png)bin21423 -> 21423 bytes
-rw-r--r--talks.html (renamed from talks/index.md)6
26 files changed, 209 insertions, 190 deletions
diff --git a/404.html b/404.html
index 6dddaa6..e58c220 100644
--- a/404.html
+++ b/404.html
@@ -1,9 +1,7 @@
---
-layout: empty
title: 404 - Not Found
-permalink: /404.html
---
<div class="text-center">
- <h1>404</h1>
- <p>The requested page does not exist. Return to <a href="/">main site</a>.</p>
-<div>
+ <h1>404</h1>
+ <p>The requested page does not exist.</p>
+</div>
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..b7a839d
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,60 @@
+target=_site
+
+target_files=\
+ $(patsubst %,$(target)/%, $(shell find assets -type f)) \
+ $(patsubst %,$(target)/%, $(shell find projects -type f)) \
+ $(patsubst %,$(target)/%, $(shell find talks -type f)) \
+ $(target)/404.html \
+ $(target)/CNAME \
+ $(target)/cv.pdf \
+ $(target)/index.html \
+ $(target)/keybase.txt \
+ $(target)/projects.html \
+ $(target)/talks.html
+
+all: $(target_files)
+
+publish: $(target_files)
+ git -C $(target) init
+ git -C $(target) add .
+ git -C $(target) commit -m "Publish website" || true
+ git -C $(target) push -f git@github.com:jodersky/website master:gh-pages
+
+clean:
+ rm -rf $(target)
+
+$(target)/assets/%: assets/%
+ @mkdir -p $(@D)
+ cp $< $@
+
+$(target)/%.html: %.html layout.pandoc.html
+ @mkdir -p $(@D)
+ pandoc \
+ --standalone \
+ --template=layout.pandoc.html \
+ --from=markdown+yaml_metadata_block-native_divs-native_spans \
+ --to=html5 \
+ --variable=base_path:$(shell realpath --relative-to=$(shell dirname $<) .) \
+ --variable=navbar_$(patsubst %.html,%,$<):true \
+ --out=$@ $<
+
+$(target)/%.html: %.md layout.pandoc.html
+ @mkdir -p $(@D)
+ pandoc \
+ --standalone \
+ --template=layout.pandoc.html \
+ --from=markdown \
+ --to=html5 \
+ --variable=base_path:$(shell realpath --relative-to=$(shell dirname $<) .) \
+ --variable=navbar_$(patsubst %.md,%,$<):true \
+ --out=$@ $<
+
+$(target)/%: %
+ @mkdir -p $(@D)
+ cp $< $@
+
+$(target)/talks/scala-channels.html: talks/scala-channels.html
+ @mkdir -p $(@D)
+ cp $< $@
+
+.PHONY: all clean publish
diff --git a/README.md b/README.md
index b342f49..7b0f29a 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,2 @@
# My Homepage
-Available at http://www.jodersky.ch. Generated with jekyll.
+Available at https://jakob.odersky.com. Generated with pandoc and make.
diff --git a/_config.yml b/_config.yml
deleted file mode 100644
index f63ca86..0000000
--- a/_config.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-collections:
- projects:
- output: false
-
-# posts
-permalink: /blog/:year/:month/:day/:title/
diff --git a/_includes/header.html b/_includes/header.html
deleted file mode 100644
index 4e2243e..0000000
--- a/_includes/header.html
+++ /dev/null
@@ -1,51 +0,0 @@
-{% capture content %}
-<header>
- <nav class="navbar navbar-expand-sm navbar-dark bg-dark">
- <div class="container">
- <button class="navbar-toggler navbar-toggler-right" type="button"
- data-toggle="collapse" data-target="#navbar-content">
- <span class="navbar-toggler-icon"></span>
- </button>
- <a class="navbar-brand" href="/">Jakob Odersky</a>
- <div class="collapse navbar-collapse" id="navbar-content">
- <ul class="navbar-nav mr-auto">
- <li class="nav-item{% if page.id == "about" %} active{% endif %}">
- <a class="nav-link" href="/">About Me</a>
- </li>
- <li class="nav-item{% if page.id == "projects" %} active{% endif %}">
- <a class="nav-link" href="/projects/">Projects</a>
- </li>
- <li class="nav-item{% if page.id == "talks" %} active{% endif %}">
- <a class="nav-link" href="/talks/">Talks</a>
- </li>
- <!--<li class="nav-item{% if page.id == "blog" %} active{% endif %}">
- <a class="nav-link" href="/blog">Blog</a>
- </li>-->
- </ul>
- <ul class="navbar-nav ml-auto">
- <li class="nav-item">
- <a class="nav-link" href="/" title="Contact"><i class="fa fa-inverse fa-lg fa-envelope"></i></a>
- </li>
- <li class="nav-item">
- <a class="nav-link" href="https://www.github.com/jodersky" title="GitHub"><i class="fa fa-inverse fa-lg fa-github"></i></a>
- </li>
- <li class="nav-item">
- <a class="nav-link" href="https://twitter.com/jodersky" title="Twitter"><i class="fa fa-inverse fa-lg fa-twitter"></i></a>
- </li>
- <li class="nav-item">
- <a class="nav-link" href="https://www.linkedin.com/in/jodersky" title="LinkedIn"><i class="fa fa-inverse fa-lg fa-linkedin-square"></i></a>
- </li>
- <li class="nav-item">
- <a class="nav-link" href="https://keybase.io/jodersky" title="Keybase"><i class="fa fa-inverse fa-lg fa-key"></i></a>
- </li>
- </ul>
-
- </div>
- </div>
- </nav>
-</header>
-<main class="container">
- {{ content }}
-</main>
-{% endcapture %}
-{% include main.html %}
diff --git a/_includes/main.html b/_includes/main.html
deleted file mode 100644
index 7245362..0000000
--- a/_includes/main.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html>
-
-<html lang="en">
- <head>
- <meta charset="utf-8">
- <title>{{ page.title }}</title>
- <link rel="shortcut icon" type="image/png" href="/assets/images/jo.png"/>
- <link rel="stylesheet" href="/assets/lib/bootstrap/css/bootstrap-reboot.min.css">
- <link rel="stylesheet" href="/assets/lib/bootstrap/css/bootstrap-grid.min.css">
- <link rel="stylesheet" href="/assets/lib/bootstrap/css/bootstrap.min.css">
- <link rel="stylesheet" href="/assets/lib/fontawesome/css/font-awesome.min.css">
- <script src="/assets/lib/jquery/js/jquery-3.2.1.min.js"></script>
- <script src="/assets/lib/bootstrap/js/bootstrap.bundle.min.js"></script>
- <script src="/assets/lib/bootstrap/js/bootstrap.min.js"></script>
- </head>
- <body>
- {{ content }}
- </body>
-</html>
diff --git a/_layouts/empty.html b/_layouts/empty.html
deleted file mode 100644
index baf32d7..0000000
--- a/_layouts/empty.html
+++ /dev/null
@@ -1,4 +0,0 @@
-{% capture content %}
-{{ content }}
-{% endcapture %}
-{% include main.html %} \ No newline at end of file
diff --git a/_layouts/page.html b/_layouts/page.html
deleted file mode 100644
index 4cae8bb..0000000
--- a/_layouts/page.html
+++ /dev/null
@@ -1,4 +0,0 @@
-{% capture content %}
-{{ content }}
-{% endcapture %}
-{% include header.html %} \ No newline at end of file
diff --git a/_layouts/post.html b/_layouts/post.html
deleted file mode 100644
index 4cae8bb..0000000
--- a/_layouts/post.html
+++ /dev/null
@@ -1,4 +0,0 @@
-{% capture content %}
-{{ content }}
-{% endcapture %}
-{% include header.html %} \ No newline at end of file
diff --git a/_posts/2015-04-09-hello-world.md b/_posts/2015-04-09-hello-world.md
deleted file mode 100644
index 4da967c..0000000
--- a/_posts/2015-04-09-hello-world.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-layout: post
-title: Hello World
----
-# Hello World
-This is a test post. \ No newline at end of file
diff --git a/_projects/2010-sims.md b/_projects/2010-sims.md
deleted file mode 100644
index 247f7a0..0000000
--- a/_projects/2010-sims.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-title: A Simple Mechanics Simulator (SiMS)
-site: https://github.com/jodersky/sims
-description: A real-time mechanics simulator, my final year school project.
-year: 2010
-logo: sims.jpg
----
diff --git a/_projects/2011-vhc.md b/_projects/2011-vhc.md
deleted file mode 100644
index af7a835..0000000
--- a/_projects/2011-vhc.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-title: Virtual Hadron Collider
-site: https://github.com/jodersky/vhc
-description: A particle simulator with 3D visualization, 1st year project in physics CS course.
-year: 2011
-logo: vhc.png
----
diff --git a/_projects/2012-k8055.md b/_projects/2012-k8055.md
deleted file mode 100644
index cecc13a..0000000
--- a/_projects/2012-k8055.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: k8055
-site: https://github.com/jodersky/k8055
-description: A linux compatible interface to the Velleman K8055 development board.
-year: 2012
---- \ No newline at end of file
diff --git a/_projects/2013-akka-serial.md b/_projects/2013-akka-serial.md
deleted file mode 100644
index 291dfe0..0000000
--- a/_projects/2013-akka-serial.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: akka-serial
-site: https://jodersky.github.io/akka-serial
-description: Library for serial communication from Scala, based on the actor model.
-year: 2013
----
diff --git a/_projects/2014-condor.md b/_projects/2014-condor.md
deleted file mode 100644
index 130ce45..0000000
--- a/_projects/2014-condor.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-title: Project Condor
-site: https://project-condor.github.io
-description: Suite of projects related to engineering and navigating a quadrotor.
-year: 2014-2015
-logo: condor.png
----
diff --git a/blog/index.html b/blog/index.html
deleted file mode 100644
index 8cb2359..0000000
--- a/blog/index.html
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: page
-id: blog
----
-<h2>All Posts</h2>
-<ul>
-{% for post in site.posts %}
- <li>
- <a href="{{ post.url }}">{{ post.title }}</a>
- </li>
-{% endfor %}
-</ul> \ No newline at end of file
diff --git a/assets/cv.pdf b/cv.pdf
index 14d5154..14d5154 100644
--- a/assets/cv.pdf
+++ b/cv.pdf
Binary files differ
diff --git a/index.html b/index.html
index af77a7a..3a933df 100644
--- a/index.html
+++ b/index.html
@@ -1,17 +1,16 @@
---
-layout: page
title: Jakob Odersky
-id: about
---
+
<div class="row">
- <div class="my-3 col-md-6 col-lg-5">
- <img class="img-fluid" src="/assets/images/jakob.jpg" alt="Jakob Odersky">
+ <div class="col-md-6 col-lg-5">
+ <img class="img-fluid" src="assets/images/jakob.jpg" alt="Jakob Odersky">
</div>
- <div class="my-3 col-md-6 col-lg-7">
+ <div class="col-md-6 col-lg-7">
<h2>Hi,</h2>
<p>I'm Jakob Odersky.</p>
- <p>I'm building a treatment access platform for cancer patients at <a href="https://driver.xyz/">Driver</a>. In my free time I like working on various technology-related <a href="/projects/">projects</a>.</p>
+ <p>In my free time I like working on various technology-related <a href="projects.html">projects</a>.</p>
<p>The best way to contact me is by email, [first name]@[last name].com. I'm also active on <a href="https://www.github.com/jodersky">GitHub</a> and occasionally on <a href="https://twitter.com/jodersky">Twitter</a> and <a href="https://www.linkedin.com/in/jodersky">LinkedIn</a>.</p>
- <p><i class="fa fa-hand-o-right"></i> <a href="/assets/cv.pdf">Resume</a></p>
+ <p><i class="fa fa-hand-o-right"></i> <a href="cv.pdf">Resume</a></p>
</div>
</div>
diff --git a/layout.pandoc.html b/layout.pandoc.html
new file mode 100644
index 0000000..a210827
--- /dev/null
+++ b/layout.pandoc.html
@@ -0,0 +1,65 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>$if(title-prefix)$$title-prefix$ – $endif$$pagetitle$</title>
+ <link rel="shortcut icon" type="image/png" href="$base_path$/assets/images/jo.png"/>
+ <link rel="stylesheet" href="$base_path$/assets/lib/bootstrap/css/bootstrap-reboot.min.css">
+ <link rel="stylesheet" href="$base_path$/assets/lib/bootstrap/css/bootstrap-grid.min.css">
+ <link rel="stylesheet" href="$base_path$/assets/lib/bootstrap/css/bootstrap.min.css">
+ <link rel="stylesheet" href="$base_path$/assets/lib/fontawesome/css/font-awesome.min.css">
+ $for(css)$
+ <link rel="stylesheet" href="$css$"/>
+ $endfor$
+ <script src="$base_path$/assets/lib/jquery/js/jquery-3.2.1.min.js"></script>
+ <script src="$base_path$/assets/lib/bootstrap/js/bootstrap.bundle.min.js"></script>
+ <script src="$base_path$/assets/lib/bootstrap/js/bootstrap.min.js"></script>
+ </head>
+ <body>
+ <header class="mb-3">
+ <nav class="navbar navbar-expand-sm navbar-dark bg-dark">
+ <div class="container">
+ <button class="navbar-toggler navbar-toggler-right" type="button"
+ data-toggle="collapse" data-target="#navbar-content">
+ <span class="navbar-toggler-icon"></span>
+ </button>
+ <a class="navbar-brand" href="$base_path$/index.html">Jakob Odersky</a>
+ <div class="collapse navbar-collapse" id="navbar-content">
+ <ul class="navbar-nav mr-auto">
+ <li class="nav-item $if(navbar_index)$active$endif$">
+ <a class="nav-link" href="$base_path$/index.html">About Me</a>
+ </li>
+ <li class="nav-item $if(navbar_projects)$active$endif$">
+ <a class="nav-link" href="$base_path$/projects.html">Projects</a>
+ </li>
+ <li class="nav-item $if(navbar_talks)$active$endif$">
+ <a class="nav-link" href="$base_path$/talks.html">Talks</a>
+ </li>
+ </ul>
+ <ul class="navbar-nav ml-auto">
+ <li class="nav-item">
+ <a class="nav-link" href="$base_path$/index.html" title="Contact"><i class="fa fa-inverse fa-lg fa-envelope"></i></a>
+ </li>
+ <li class="nav-item">
+ <a class="nav-link" href="https://www.github.com/jodersky" title="GitHub"><i class="fa fa-inverse fa-lg fa-github"></i></a>
+ </li>
+ <li class="nav-item">
+ <a class="nav-link" href="https://twitter.com/jodersky" title="Twitter"><i class="fa fa-inverse fa-lg fa-twitter"></i></a>
+ </li>
+ <li class="nav-item">
+ <a class="nav-link" href="https://www.linkedin.com/in/jodersky" title="LinkedIn"><i class="fa fa-inverse fa-lg fa-linkedin-square"></i></a>
+ </li>
+ <li class="nav-item">
+ <a class="nav-link" href="https://keybase.io/jodersky" title="Keybase"><i class="fa fa-inverse fa-lg fa-key"></i></a>
+ </li>
+ </ul>
+
+ </div>
+ </div>
+ </nav>
+ </header>
+ <main class="container">
+ $body$
+ </main>
+ </body>
+</html>
diff --git a/projects.md b/projects.md
new file mode 100644
index 0000000..3bc6b67
--- /dev/null
+++ b/projects.md
@@ -0,0 +1,68 @@
+---
+title: Projects
+css: projects/main.css
+---
+
+I'm an enthusiast of free and open source software. Here is a list of select side projects I've been working on. Check out my [GitHub repositories](https://github.com/jodersky?tab=repositories) for a more extensive list of open source contributions.
+
+### Project Condor
+
+*2014-2015*
+
+![logo](projects/condor.png)\
+
+Suite of projects related to engineering and navigating a quadrotor.
+
+[project website](https://project-condor.github.io)
+
+---
+
+### akka-serial
+
+*2013*
+
+Library for serial communication from Scala, based on the actor model.
+
+[project website](https://jodersky.github.io/akka-serial)
+
+---
+
+### k8055
+
+*2012*
+
+A linux compatible interface to the Velleman K8055 development board.
+
+[project website](https://github.com/jodersky/k8055)
+
+---
+
+### Virtual Hadron Collider
+
+*2011*
+
+![logo](projects/vhc.png)\
+
+A particle simulator with 3D visualization, 1st year project in physics CS course.
+
+[project website](https://github.com/jodersky/vhc)
+
+---
+
+### A Simple Mechanics Simulator (SiMS)
+
+*2010*
+
+![logo](projects/sims.jpg)\
+
+A real-time mechanics simulator, my final year school project.
+
+[project website](https://github.com/jodersky/sims)
+
+---
+
+## Signature
+My public key's fingerprint is: `4E7D A7B5 A0F8 6992 D6EB 3F51 4601 8786 62E3 3372`
+
+<i class="fa fa-hand-o-right"></i> Check identity on [keybase.io](https://keybase.io/jodersky)
+
diff --git a/assets/images/condor.png b/projects/condor.png
index 2bc68ee..2bc68ee 100644
--- a/assets/images/condor.png
+++ b/projects/condor.png
Binary files differ
diff --git a/projects/index.html b/projects/index.html
deleted file mode 100644
index c3a14d2..0000000
--- a/projects/index.html
+++ /dev/null
@@ -1,34 +0,0 @@
----
-layout: page
-title: Projects
-id: projects
----
-<div class="mt-3">
- I'm an enthusiast of free and open source software. Here is a list of side projects I've been working on.
- <h2 class="mt-3">Select Projects</h2>
- <p>These are the projects that are more involved and presentable.</p>
-
- <div class="card-columns">
- {% for project in site.projects reversed %}
- <div class="card" >
- {% if project.logo %}
- <img class="img-fluid mx-auto d-block" src="/assets/images/{{project.logo}}" alt="Project logo">
- {% endif %}
-
- <div class="card-body">
- <h4 class="card-title">{{ project.title }}</h4>
- <h6 class="card-subtitle mb-2 text-muted">{{ project.year }}</h6>
- <p class="card-text">{{ project.description }}</p>
- <a class="card-link" href="{{ project.site }}">project website</a>
- </div>
- </div>
- {% endfor %}
- </div>
-
- <h2>Other Projects</h2>
- <p>Check out <a href="https://github.com/jodersky?tab=repositories">GitHub repositories</a> for a more extensive list of open source contributions.</p>
-
- <h2 class="mt-3">Signature</h2>
- <p>My public key's fingerprint is: <code>4E7D A7B5 A0F8 6992 D6EB 3F51 4601 8786 62E3 3372</code></p>
- <p><i class="fa fa-hand-o-right"></i> Check identity on <a href="https://keybase.io/jodersky">keybase.io</a></p>
-</div>
diff --git a/projects/main.css b/projects/main.css
new file mode 100644
index 0000000..a216387
--- /dev/null
+++ b/projects/main.css
@@ -0,0 +1,4 @@
+img {
+ float: right;
+ max-width: 20rem;
+}
diff --git a/assets/images/sims.jpg b/projects/sims.jpg
index 68e66cd..68e66cd 100644
--- a/assets/images/sims.jpg
+++ b/projects/sims.jpg
Binary files differ
diff --git a/assets/images/vhc.png b/projects/vhc.png
index c192668..c192668 100644
--- a/assets/images/vhc.png
+++ b/projects/vhc.png
Binary files differ
diff --git a/talks/index.md b/talks.html
index 52b1804..d7a7439 100644
--- a/talks/index.md
+++ b/talks.html
@@ -1,7 +1,5 @@
---
-layout: page
title: Talks
-id: talks
---
### Channeling the Inner Complexity
@@ -12,8 +10,8 @@ efficient manner. This talk presents an overview of various such
models available in Scala, and their impact on program structure and
complexity. It then explores a way to model concurrency with less
complexity with an implementation of Communicating Sequential
-Processes (CSP), heavily inspired by Goroutines, scala-async and
+Processes (CSP), heavily inspired by goroutines, scala-async and
Clojure's core.async.
-[slides [pdf]](scala-channels.pdf) [[html]](scala-channels.html)
+[slides [pdf]](talks/scala-channels.pdf) [[html]](talks/scala-channels.html)
[project escale](https://github.com/jodersky/escale)