diff --git a/content/personal/2010/09/weather-station.mkdn b/content/personal/2010/09/weather-station.mkdn
index e0cb8e9..902957b 100644
--- a/content/personal/2010/09/weather-station.mkdn
+++ b/content/personal/2010/09/weather-station.mkdn
@@ -56,10 +56,10 @@ what I'm most interested in.
The Finished Installation
-To log and upload the weather readings to [http://weather.wezm.net/][weather]
-I'm using the [wview][wview] weather station software. wview is running on the
-Mac mini connected to our TV. The site layout is pretty basic so I hope to come
-up with a cleaner design in the coming weeks.
+To log and upload the [weather readings][weather] I'm using the [wview][wview]
+weather station software. wview is running on the Mac mini connected to our TV.
+The site layout is pretty basic so I hope to come up with a cleaner design in
+the coming weeks.
**Update:** I built a custom logging and charting solution. See the post,
[Weather Station Software][software].
@@ -67,4 +67,4 @@ up with a cleaner design in the coming weeks.
[software]: /technical/2010/09/weather-station-software/
[WS2355]: http://www.lacrossetechnology.com.au/shop2/product_info.php?cPath=21&products_id=93
[wview]: http://www.wviewweather.com/
-[weather]: http://weather.wezm.net/
+[weather]: /weather/
diff --git a/content/projects.html b/content/projects.html
index 07b2660..2b394c0 100644
--- a/content/projects.html
+++ b/content/projects.html
@@ -24,11 +24,20 @@ A couple of other websites I maintain are:
publically in the hope it may be useful to others as well. The code ([pkb])
is open source.
-[readrust]: http://readrust.net/
+[readrust]: https://readrust.net/
[Rust]: https://www.rust-lang.org/
[bitcannon]: http://bitcannon.net/
[hugo]: http://gohugo.io/
+BSD CI
+------
+
+[BSD CI] (currently in development) aims to provide a simple way for software
+projects to build and test on [BSD operating systems][run-bsd].
+
+[BSD CI]: http://bsd-ci.com/
+[run-bsd]: http://runbsd.info/
+
Open Source Projects
--------------------
@@ -77,19 +86,6 @@ Compiler][ragel] in the hope that it will help ensure fast and correct parsing.
[mustache]: http://mustache.github.com/
[ragel]: http://www.complang.org/ragel/
-### Monothumb
-
-[monothumb] is the tool that generates the thumbnails on the [home page](/). It
-retrieves thumbnails of my [recent uploads to Flickr][flickr], converts them to
-greyscale and then generates a single output image with both the colour and
-monochrome versions of the thumbnail. There are two version of the tool. The
-original one, written in Objective-C that uses CoreImage and a second version
-written in Lua. The Lua one uses my [lua-imlib2] fork.
-
-[flickr]: http://www.flickr.com/photos/wezm/
-[monothumb]: https://github.com/wezm/monothumb
-[lua-imlib2]: https://github.com/wezm/lua-imlib2
-
### node-genx
[node-genx] is a [node.js][node] binding to the [Genx][genx] XML generation
@@ -114,7 +110,7 @@ produce the [Weather page][weather].
[sqlite]: http://www.sqlite.org/
[open2300]: http://www.lavrsen.dk/foswiki/bin/view/Open2300/WebHome
[open2300fork]: http://github.com/wezm/open2300
-[weather]: http://weather.wezm.net/
+[weather]: /weather/
[json]: http://www.json.org/
[weather-tools]: http://github.com/wezm/weather-tools
diff --git a/content/screen.sass b/content/screen.sass
index a3d6411..cb43438 100644
--- a/content/screen.sass
+++ b/content/screen.sass
@@ -85,15 +85,6 @@ h1 a
color: #111
-body.home h1 > a
- -webkit-transition: border-bottom-color 500ms ease-out
- transition: border-bottom-color 500ms ease-out
- border-bottom: 2px solid rgba(17, 17, 17, 0.0)
-
- &:hover
- border-bottom-color: rgba(17, 17, 17, 1.0)
-
-
sup
vertical-align: super
font-size: 0.8em
@@ -186,22 +177,50 @@ footer
padding-top: 1em
display: block
-.column
- float: left
- width: 50%
- margin: 0
- min-width: 480px
-
.align-top
vertical-align: top
-#personal div
- padding-right: 2em
+.home
+ h1 > a:first-child
+ -webkit-transition: border-bottom-color 500ms ease-out
+ transition: border-bottom-color 500ms ease-out
+ border-bottom: 2px solid rgba(17, 17, 17, 0.0)
-.column div
- padding: 0 0 0 2em
+ &:hover
+ border-bottom-color: rgba(17, 17, 17, 1.0)
+ main
+ display: flex
+ margin: 0 20px
+ margin: 0 auto
+ padding: 0 20px
+ max-width: 1200px
+ min-height: 85vh
+
+#posts
+ width: 100%
+
+#projects
+ width: 250px
+ flex-shrink: 0
+ margin-left: 2em
+
+ul.projects
+ list-style: none
+ margin: 0
+ padding-top: 1em
+
+ li
+ margin: 1em 0
+
+ img, svg
+ width: 32px
+ vertical-align: middle
+ margin-right: 0.5em
+
+ p
+ margin-left: calc(32px + 0.5em)
ul.articles
list-style: none
@@ -260,50 +279,6 @@ a
margin-left: 0
-#flickr
- clear: both
-
- header
- margin-left: 2em
-
- h1
- margin: 0
- padding: 0.6em 0 0 0
-
- ul
- display: block
- height: 75px
- overflow: hidden
- margin-top: 1em
-
- li
- float: left
- overflow: hidden
- margin: 0 0 0 1em
- display: block
- position: relative
- height: 75px
- width: 75px
- border: 1px solid #ccc
- background: url(/images/photos.jpg?20120121) no-repeat 0 -75px
-
- &:first-child
- margin-left: 2em
-
- img
- -webkit-transition: opacity 500ms ease-out
- transition: opacity 500ms ease-out
- position: absolute
- max-width: none
-
- &:hover
- opacity: 0
-
- a.more
- float: right
- margin: 1em 2em 1em 0
-
-
body.articles #content nav
padding-bottom: 1em
@@ -360,7 +335,7 @@ img.alignleft
margin: 5px 10px 5px 0
-img.feed-icon
+.feed-icon
-webkit-transition: opacity 500ms ease-out
transition: opacity 500ms ease-out
opacity: 1.0
@@ -368,6 +343,9 @@ img.feed-icon
&:hover
opacity: 0.75
+.feed-icon-sup
+ vertical-align: super
+
img.comment
padding-top: 1px
@@ -512,19 +490,7 @@ body.weather
margin-top: 1em
color: #999
-@media screen and (max-width: 960px)
-
- .column
- float: none
- width: auto
- min-width: 0
- max-width: 728px
-
-
@media screen and (max-width: 768px)
- #technical div, #personal div
- padding: 0 1em
-
#content
margin: 0 20px
font-size: 20px
@@ -540,6 +506,16 @@ body.weather
#search
float: none
+ .home main
+ flex-direction: column
+
+ #projects
+ width: auto
+ margin-left: 0
+ margin-top: 2em
+
+ ul.projects
+ padding-top: 0
@media screen and (max-width: 515px)
diff --git a/content/technical/2010/09/weather-station-software.html b/content/technical/2010/09/weather-station-software.html
index 8e78b06..82b8ce9 100644
--- a/content/technical/2010/09/weather-station-software.html
+++ b/content/technical/2010/09/weather-station-software.html
@@ -1,13 +1,13 @@
Two weeks ago when I [installed my weather station][install] I setup the wview
software to log the current conditions and generate and upload
-HTML and graphs to [http://weather.wezm.net/][weather]. wview seemed like the
+HTML and graphs to [the weather page][weather]. wview seemed like the
perfect tool for the job but unfortunately it proved unreliable, even with the
built in process monitoring. After a few hours of running fine it appeared the
HTML generation process would hang, preventing any further updates to the
website.
[install]: /personal/2010/09/weather-station/
-[weather]: http://weather.wezm.net/
+[weather]: /weather/
wview has a lot of functionality and thus a lot of code, which turned me
off trying to track down the bug. I looked around for
diff --git a/content/technical/2018/01/goals-directions-rust-2018.md b/content/technical/2018/01/goals-directions-rust-2018.md
index a37e49c..8653940 100644
--- a/content/technical/2018/01/goals-directions-rust-2018.md
+++ b/content/technical/2018/01/goals-directions-rust-2018.md
@@ -170,7 +170,7 @@ _For more great #Rust2018 posts check out [readrust.net][readrust]._
[node]: https://nodejs.org/
[platform-support]: https://forge.rust-lang.org/platform-support.html
[racer]: https://github.com/phildawes/racer
-[readrust]: http://readrust.net/rust2018/
+[readrust]: https://readrust.net/rust-2018/
[resf]: https://twitter.com/rustevangelism
[rust-build-systems]: https://blog.rust-lang.org/2017/12/21/rust-in-2017.html#rust-should-integrate-easily-into-large-build-systems
[rust-cookbook]: https://rust-lang-nursery.github.io/rust-cookbook/
diff --git a/content/technical/2018/02/read-rust.md b/content/technical/2018/02/read-rust.md
index ac4362c..518e022 100644
--- a/content/technical/2018/02/read-rust.md
+++ b/content/technical/2018/02/read-rust.md
@@ -15,16 +15,16 @@ January as a more general Rust content aggregator.
Yesterday I launched the update. A number of new categories join the initial
Rust 2018 category, bringing the list to:
-* [All Posts](http://readrust.net/all/)
-* [Computer Science](http://readrust.net/computer-science/)
-* [Crates](http://readrust.net/crates/)
-* [Embedded](http://readrust.net/embedded/)
-* [Games and Graphics](http://readrust.net/games-and-graphics/)
-* [Operating Systems](http://readrust.net/operating-systems/)
-* [Performance](http://readrust.net/performance/)
-* [Rust 2018](http://readrust.net/rust-2018/)
-* [Tools and Applications](http://readrust.net/tools-and-applications/)
-* [Web and Network Services](http://readrust.net/web-and-network-services/)
+* [All Posts](https://readrust.net/all/)
+* [Computer Science](https://readrust.net/computer-science/)
+* [Crates](https://readrust.net/crates/)
+* [Embedded](https://readrust.net/embedded/)
+* [Games and Graphics](https://readrust.net/games-and-graphics/)
+* [Operating Systems](https://readrust.net/operating-systems/)
+* [Performance](https://readrust.net/performance/)
+* [Rust 2018](https://readrust.net/rust-2018/)
+* [Tools and Applications](https://readrust.net/tools-and-applications/)
+* [Web and Network Services](https://readrust.net/web-and-network-services/)
Each category has its own page and RSS feed in case readers are only interested
in that category. I also set up a Twitter account, [@read_rust], that tweets
@@ -109,6 +109,8 @@ Page load times (fully loaded) reported by [WebPagetest] are:
* 0.948s for Paris, France
* 2.130s for Rose Hill, Mauritius
+**Update:** Read Rust is now hosted on AWS and delivered via CloudFront.
+
## Conclusion
So that is the process that led to making Read Rust the way it is and how the
@@ -125,7 +127,7 @@ to [submit it][submit]!
[issue-template]: https://github.com/wezm/read-rust/blob/master/.github/ISSUE_TEMPLATE/missing_post.md
[JSON Feed]: https://jsonfeed.org/
[Nunito Sans]: https://www.fontsquirrel.com/fonts/nunito-sans
-[Read Rust]: http://readrust.net/
+[Read Rust]: https://readrust.net/
[readrust-github]: https://github.com/wezm/read-rust
[roadmap]: https://github.com/aturon/rfcs/blob/roadmap-2018/text/0000-roadmap-2018.md
[submit]: https://github.com/wezm/read-rust/issues/new?labels=missing-post&title=Add+post&template=missing_post.md
diff --git a/layouts/_listing.html b/layouts/_listing.html
index 1e97b92..b7ab956 100644
--- a/layouts/_listing.html
+++ b/layouts/_listing.html
@@ -10,7 +10,6 @@
-