diff --git a/public/posts/drafts/09c2b186-3ce7-445c-89bf-5d5b7f830cd7.md b/drafts/09c2b186-3ce7-445c-89bf-5d5b7f830cd7.md similarity index 100% rename from public/posts/drafts/09c2b186-3ce7-445c-89bf-5d5b7f830cd7.md rename to drafts/09c2b186-3ce7-445c-89bf-5d5b7f830cd7.md diff --git a/public/posts/drafts/_data.json b/drafts/_data.json similarity index 100% rename from public/posts/drafts/_data.json rename to drafts/_data.json diff --git a/public/posts/drafts/mach-o-symbol-and-relocation-tables.md b/drafts/mach-o-symbol-and-relocation-tables.md similarity index 100% rename from public/posts/drafts/mach-o-symbol-and-relocation-tables.md rename to drafts/mach-o-symbol-and-relocation-tables.md diff --git a/public/posts/drafts/security-through-obscurity-is-still-not-a-best-practice.md b/drafts/security-through-obscurity-is-still-not-a-best-practice.md similarity index 100% rename from public/posts/drafts/security-through-obscurity-is-still-not-a-best-practice.md rename to drafts/security-through-obscurity-is-still-not-a-best-practice.md diff --git a/public/posts/2006/02/_data.json b/posts/2006/02/_data.json similarity index 100% rename from public/posts/2006/02/_data.json rename to posts/2006/02/_data.json diff --git a/public/posts/2006/02/first-post.md b/posts/2006/02/first-post.md similarity index 100% rename from public/posts/2006/02/first-post.md rename to posts/2006/02/first-post.md diff --git a/public/posts/2006/02/girlfriend-x.md b/posts/2006/02/girlfriend-x.md similarity index 100% rename from public/posts/2006/02/girlfriend-x.md rename to posts/2006/02/girlfriend-x.md diff --git a/public/posts/2006/02/index.ejs b/posts/2006/02/index.ejs similarity index 100% rename from public/posts/2006/02/index.ejs rename to posts/2006/02/index.ejs diff --git a/public/posts/2006/02/intelligent-migration-snippets-0_1-for-textmate.md b/posts/2006/02/intelligent-migration-snippets-0_1-for-textmate.md similarity index 100% rename from public/posts/2006/02/intelligent-migration-snippets-0_1-for-textmate.md rename to posts/2006/02/intelligent-migration-snippets-0_1-for-textmate.md diff --git a/public/posts/2006/02/jump-to-viewcontroller-in-textmate.md b/posts/2006/02/jump-to-viewcontroller-in-textmate.md similarity index 100% rename from public/posts/2006/02/jump-to-viewcontroller-in-textmate.md rename to posts/2006/02/jump-to-viewcontroller-in-textmate.md diff --git a/public/posts/2006/02/obligatory-post-about-ruby-on-rails.md b/posts/2006/02/obligatory-post-about-ruby-on-rails.md similarity index 100% rename from public/posts/2006/02/obligatory-post-about-ruby-on-rails.md rename to posts/2006/02/obligatory-post-about-ruby-on-rails.md diff --git a/public/posts/2006/02/sjs-rails-bundle-0_2-for-textmate.md b/posts/2006/02/sjs-rails-bundle-0_2-for-textmate.md similarity index 100% rename from public/posts/2006/02/sjs-rails-bundle-0_2-for-textmate.md rename to posts/2006/02/sjs-rails-bundle-0_2-for-textmate.md diff --git a/public/posts/2006/02/some-textmate-snippets-for-rails-migrations.md b/posts/2006/02/some-textmate-snippets-for-rails-migrations.md similarity index 100% rename from public/posts/2006/02/some-textmate-snippets-for-rails-migrations.md rename to posts/2006/02/some-textmate-snippets-for-rails-migrations.md diff --git a/public/posts/2006/02/textmate-insert-text-into-self-down.md b/posts/2006/02/textmate-insert-text-into-self-down.md similarity index 100% rename from public/posts/2006/02/textmate-insert-text-into-self-down.md rename to posts/2006/02/textmate-insert-text-into-self-down.md diff --git a/public/posts/2006/02/textmate-move-selection-to-self-down.md b/posts/2006/02/textmate-move-selection-to-self-down.md similarity index 100% rename from public/posts/2006/02/textmate-move-selection-to-self-down.md rename to posts/2006/02/textmate-move-selection-to-self-down.md diff --git a/public/posts/2006/02/textmate-snippets-for-rails-assertions.md b/posts/2006/02/textmate-snippets-for-rails-assertions.md similarity index 100% rename from public/posts/2006/02/textmate-snippets-for-rails-assertions.md rename to posts/2006/02/textmate-snippets-for-rails-assertions.md diff --git a/public/posts/2006/02/touch-screen-on-steroids.md b/posts/2006/02/touch-screen-on-steroids.md similarity index 100% rename from public/posts/2006/02/touch-screen-on-steroids.md rename to posts/2006/02/touch-screen-on-steroids.md diff --git a/public/posts/2006/02/urban-extreme-gymnastics.md b/posts/2006/02/urban-extreme-gymnastics.md similarity index 100% rename from public/posts/2006/02/urban-extreme-gymnastics.md rename to posts/2006/02/urban-extreme-gymnastics.md diff --git a/public/posts/2006/03/_data.json b/posts/2006/03/_data.json similarity index 100% rename from public/posts/2006/03/_data.json rename to posts/2006/03/_data.json diff --git a/public/posts/2006/03/generate-selfdown-in-your-rails-migrations.md b/posts/2006/03/generate-selfdown-in-your-rails-migrations.md similarity index 100% rename from public/posts/2006/03/generate-selfdown-in-your-rails-migrations.md rename to posts/2006/03/generate-selfdown-in-your-rails-migrations.md diff --git a/public/posts/2006/03/i-dont-mind-fairplay-either.md b/posts/2006/03/i-dont-mind-fairplay-either.md similarity index 100% rename from public/posts/2006/03/i-dont-mind-fairplay-either.md rename to posts/2006/03/i-dont-mind-fairplay-either.md diff --git a/public/posts/2006/03/index.ejs b/posts/2006/03/index.ejs similarity index 100% rename from public/posts/2006/03/index.ejs rename to posts/2006/03/index.ejs diff --git a/public/posts/2006/03/spore.md b/posts/2006/03/spore.md similarity index 100% rename from public/posts/2006/03/spore.md rename to posts/2006/03/spore.md diff --git a/public/posts/2006/04/_data.json b/posts/2006/04/_data.json similarity index 100% rename from public/posts/2006/04/_data.json rename to posts/2006/04/_data.json diff --git a/public/posts/2006/04/index.ejs b/posts/2006/04/index.ejs similarity index 100% rename from public/posts/2006/04/index.ejs rename to posts/2006/04/index.ejs diff --git a/public/posts/2006/04/zsh-terminal-goodness-on-os-x.md b/posts/2006/04/zsh-terminal-goodness-on-os-x.md similarity index 100% rename from public/posts/2006/04/zsh-terminal-goodness-on-os-x.md rename to posts/2006/04/zsh-terminal-goodness-on-os-x.md diff --git a/public/posts/2006/05/_data.json b/posts/2006/05/_data.json similarity index 100% rename from public/posts/2006/05/_data.json rename to posts/2006/05/_data.json diff --git a/public/posts/2006/05/index.ejs b/posts/2006/05/index.ejs similarity index 100% rename from public/posts/2006/05/index.ejs rename to posts/2006/05/index.ejs diff --git a/public/posts/2006/05/os-x-and-fitts-law.md b/posts/2006/05/os-x-and-fitts-law.md similarity index 100% rename from public/posts/2006/05/os-x-and-fitts-law.md rename to posts/2006/05/os-x-and-fitts-law.md diff --git a/public/posts/2006/05/wikipediafs-on-linux-in-python.md b/posts/2006/05/wikipediafs-on-linux-in-python.md similarity index 100% rename from public/posts/2006/05/wikipediafs-on-linux-in-python.md rename to posts/2006/05/wikipediafs-on-linux-in-python.md diff --git a/public/posts/2006/06/_data.json b/posts/2006/06/_data.json similarity index 100% rename from public/posts/2006/06/_data.json rename to posts/2006/06/_data.json diff --git a/public/posts/2006/06/apple-pays-attention-to-detail.md b/posts/2006/06/apple-pays-attention-to-detail.md similarity index 100% rename from public/posts/2006/06/apple-pays-attention-to-detail.md rename to posts/2006/06/apple-pays-attention-to-detail.md diff --git a/public/posts/2006/06/ich-bin-auslnder-und-spreche-nicht-gut-deutsch.md b/posts/2006/06/ich-bin-auslnder-und-spreche-nicht-gut-deutsch.md similarity index 100% rename from public/posts/2006/06/ich-bin-auslnder-und-spreche-nicht-gut-deutsch.md rename to posts/2006/06/ich-bin-auslnder-und-spreche-nicht-gut-deutsch.md diff --git a/public/posts/2006/06/index.ejs b/posts/2006/06/index.ejs similarity index 100% rename from public/posts/2006/06/index.ejs rename to posts/2006/06/index.ejs diff --git a/public/posts/2006/06/never-buy-a-german-keyboard.md b/posts/2006/06/never-buy-a-german-keyboard.md similarity index 100% rename from public/posts/2006/06/never-buy-a-german-keyboard.md rename to posts/2006/06/never-buy-a-german-keyboard.md diff --git a/public/posts/2006/06/theres-nothing-regular-about-regular-expressions.md b/posts/2006/06/theres-nothing-regular-about-regular-expressions.md similarity index 100% rename from public/posts/2006/06/theres-nothing-regular-about-regular-expressions.md rename to posts/2006/06/theres-nothing-regular-about-regular-expressions.md diff --git a/public/posts/2006/07/_data.json b/posts/2006/07/_data.json similarity index 100% rename from public/posts/2006/07/_data.json rename to posts/2006/07/_data.json diff --git a/public/posts/2006/07/class-method-instance-method-it-doesnt-matter-to-php.md b/posts/2006/07/class-method-instance-method-it-doesnt-matter-to-php.md similarity index 100% rename from public/posts/2006/07/class-method-instance-method-it-doesnt-matter-to-php.md rename to posts/2006/07/class-method-instance-method-it-doesnt-matter-to-php.md diff --git a/public/posts/2006/07/index.ejs b/posts/2006/07/index.ejs similarity index 100% rename from public/posts/2006/07/index.ejs rename to posts/2006/07/index.ejs diff --git a/public/posts/2006/07/late-static-binding.md b/posts/2006/07/late-static-binding.md similarity index 100% rename from public/posts/2006/07/late-static-binding.md rename to posts/2006/07/late-static-binding.md diff --git a/public/posts/2006/07/ruby-and-rails-have-spoiled-me-rotten.md b/posts/2006/07/ruby-and-rails-have-spoiled-me-rotten.md similarity index 100% rename from public/posts/2006/07/ruby-and-rails-have-spoiled-me-rotten.md rename to posts/2006/07/ruby-and-rails-have-spoiled-me-rotten.md diff --git a/public/posts/2006/07/ubuntu-linux-for-linux-users-please.md b/posts/2006/07/ubuntu-linux-for-linux-users-please.md similarity index 100% rename from public/posts/2006/07/ubuntu-linux-for-linux-users-please.md rename to posts/2006/07/ubuntu-linux-for-linux-users-please.md diff --git a/public/posts/2006/07/working-with-the-zend-framework.md b/posts/2006/07/working-with-the-zend-framework.md similarity index 100% rename from public/posts/2006/07/working-with-the-zend-framework.md rename to posts/2006/07/working-with-the-zend-framework.md diff --git a/public/posts/2006/08/_data.json b/posts/2006/08/_data.json similarity index 100% rename from public/posts/2006/08/_data.json rename to posts/2006/08/_data.json diff --git a/public/posts/2006/08/index.ejs b/posts/2006/08/index.ejs similarity index 100% rename from public/posts/2006/08/index.ejs rename to posts/2006/08/index.ejs diff --git a/public/posts/2006/08/where-are-my-headphones.md b/posts/2006/08/where-are-my-headphones.md similarity index 100% rename from public/posts/2006/08/where-are-my-headphones.md rename to posts/2006/08/where-are-my-headphones.md diff --git a/public/posts/2006/09/_data.json b/posts/2006/09/_data.json similarity index 100% rename from public/posts/2006/09/_data.json rename to posts/2006/09/_data.json diff --git a/public/posts/2006/09/buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo.md b/posts/2006/09/buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo.md similarity index 100% rename from public/posts/2006/09/buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo.md rename to posts/2006/09/buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo-buffalo.md diff --git a/public/posts/2006/09/index.ejs b/posts/2006/09/index.ejs similarity index 100% rename from public/posts/2006/09/index.ejs rename to posts/2006/09/index.ejs diff --git a/public/posts/2006/09/some-features-you-might-have-missed-in-itunes-7.md b/posts/2006/09/some-features-you-might-have-missed-in-itunes-7.md similarity index 100% rename from public/posts/2006/09/some-features-you-might-have-missed-in-itunes-7.md rename to posts/2006/09/some-features-you-might-have-missed-in-itunes-7.md diff --git a/public/posts/2006/12/_data.json b/posts/2006/12/_data.json similarity index 100% rename from public/posts/2006/12/_data.json rename to posts/2006/12/_data.json diff --git a/public/posts/2006/12/coping-with-windows-xp-activiation-on-a-mac.md b/posts/2006/12/coping-with-windows-xp-activiation-on-a-mac.md similarity index 100% rename from public/posts/2006/12/coping-with-windows-xp-activiation-on-a-mac.md rename to posts/2006/12/coping-with-windows-xp-activiation-on-a-mac.md diff --git a/public/posts/2006/12/index.ejs b/posts/2006/12/index.ejs similarity index 100% rename from public/posts/2006/12/index.ejs rename to posts/2006/12/index.ejs diff --git a/public/posts/2006/index.ejs b/posts/2006/index.ejs similarity index 100% rename from public/posts/2006/index.ejs rename to posts/2006/index.ejs diff --git a/public/posts/2007/03/_data.json b/posts/2007/03/_data.json similarity index 100% rename from public/posts/2007/03/_data.json rename to posts/2007/03/_data.json diff --git a/public/posts/2007/03/digg-v4-reply-to-replies-greasemonkey-script.md b/posts/2007/03/digg-v4-reply-to-replies-greasemonkey-script.md similarity index 100% rename from public/posts/2007/03/digg-v4-reply-to-replies-greasemonkey-script.md rename to posts/2007/03/digg-v4-reply-to-replies-greasemonkey-script.md diff --git a/public/posts/2007/03/diggscuss-0_9.md b/posts/2007/03/diggscuss-0_9.md similarity index 100% rename from public/posts/2007/03/diggscuss-0_9.md rename to posts/2007/03/diggscuss-0_9.md diff --git a/public/posts/2007/03/full-screen-cover-flow.md b/posts/2007/03/full-screen-cover-flow.md similarity index 100% rename from public/posts/2007/03/full-screen-cover-flow.md rename to posts/2007/03/full-screen-cover-flow.md diff --git a/public/posts/2007/03/index.ejs b/posts/2007/03/index.ejs similarity index 100% rename from public/posts/2007/03/index.ejs rename to posts/2007/03/index.ejs diff --git a/public/posts/2007/04/_data.json b/posts/2007/04/_data.json similarity index 100% rename from public/posts/2007/04/_data.json rename to posts/2007/04/_data.json diff --git a/public/posts/2007/04/a-triple-booting-schizophrenic-macbook.md b/posts/2007/04/a-triple-booting-schizophrenic-macbook.md similarity index 100% rename from public/posts/2007/04/a-triple-booting-schizophrenic-macbook.md rename to posts/2007/04/a-triple-booting-schizophrenic-macbook.md diff --git a/public/posts/2007/04/activerecord-base_find_or_create-and-find_or_initialize.md b/posts/2007/04/activerecord-base_find_or_create-and-find_or_initialize.md similarity index 100% rename from public/posts/2007/04/activerecord-base_find_or_create-and-find_or_initialize.md rename to posts/2007/04/activerecord-base_find_or_create-and-find_or_initialize.md diff --git a/public/posts/2007/04/funny-how-code-can-be-beautiful.md b/posts/2007/04/funny-how-code-can-be-beautiful.md similarity index 100% rename from public/posts/2007/04/funny-how-code-can-be-beautiful.md rename to posts/2007/04/funny-how-code-can-be-beautiful.md diff --git a/public/posts/2007/04/getting-to-know-vista.md b/posts/2007/04/getting-to-know-vista.md similarity index 100% rename from public/posts/2007/04/getting-to-know-vista.md rename to posts/2007/04/getting-to-know-vista.md diff --git a/public/posts/2007/04/index.ejs b/posts/2007/04/index.ejs similarity index 100% rename from public/posts/2007/04/index.ejs rename to posts/2007/04/index.ejs diff --git a/public/posts/2007/04/quickly-inserting-millions-of-rows-with-mysql-innodb.md b/posts/2007/04/quickly-inserting-millions-of-rows-with-mysql-innodb.md similarity index 100% rename from public/posts/2007/04/quickly-inserting-millions-of-rows-with-mysql-innodb.md rename to posts/2007/04/quickly-inserting-millions-of-rows-with-mysql-innodb.md diff --git a/public/posts/2007/05/_data.json b/posts/2007/05/_data.json similarity index 100% rename from public/posts/2007/05/_data.json rename to posts/2007/05/_data.json diff --git a/public/posts/2007/05/a-new-way-to-look-at-networking.md b/posts/2007/05/a-new-way-to-look-at-networking.md similarity index 100% rename from public/posts/2007/05/a-new-way-to-look-at-networking.md rename to posts/2007/05/a-new-way-to-look-at-networking.md diff --git a/public/posts/2007/05/a-scheme-parser-in-haskell-part-1.md b/posts/2007/05/a-scheme-parser-in-haskell-part-1.md similarity index 100% rename from public/posts/2007/05/a-scheme-parser-in-haskell-part-1.md rename to posts/2007/05/a-scheme-parser-in-haskell-part-1.md diff --git a/public/posts/2007/05/cheating-at-life-in-general.md b/posts/2007/05/cheating-at-life-in-general.md similarity index 100% rename from public/posts/2007/05/cheating-at-life-in-general.md rename to posts/2007/05/cheating-at-life-in-general.md diff --git a/public/posts/2007/05/dtrace-ruby-goodness-for-sun.md b/posts/2007/05/dtrace-ruby-goodness-for-sun.md similarity index 100% rename from public/posts/2007/05/dtrace-ruby-goodness-for-sun.md rename to posts/2007/05/dtrace-ruby-goodness-for-sun.md diff --git a/public/posts/2007/05/dumping-objects-to-the-browser-in-rails.md b/posts/2007/05/dumping-objects-to-the-browser-in-rails.md similarity index 100% rename from public/posts/2007/05/dumping-objects-to-the-browser-in-rails.md rename to posts/2007/05/dumping-objects-to-the-browser-in-rails.md diff --git a/public/posts/2007/05/enumerable-pluck-and-string-to_proc-for-ruby.md b/posts/2007/05/enumerable-pluck-and-string-to_proc-for-ruby.md similarity index 100% rename from public/posts/2007/05/enumerable-pluck-and-string-to_proc-for-ruby.md rename to posts/2007/05/enumerable-pluck-and-string-to_proc-for-ruby.md diff --git a/public/posts/2007/05/finnish-court-rules-css-ineffective-at-protecting-dvds.md b/posts/2007/05/finnish-court-rules-css-ineffective-at-protecting-dvds.md similarity index 100% rename from public/posts/2007/05/finnish-court-rules-css-ineffective-at-protecting-dvds.md rename to posts/2007/05/finnish-court-rules-css-ineffective-at-protecting-dvds.md diff --git a/public/posts/2007/05/gotta-love-the-ferry-ride.md b/posts/2007/05/gotta-love-the-ferry-ride.md similarity index 100% rename from public/posts/2007/05/gotta-love-the-ferry-ride.md rename to posts/2007/05/gotta-love-the-ferry-ride.md diff --git a/public/posts/2007/05/i-cant-wait-to-see-what-matt-stone-trey-parker-do-with-this.md b/posts/2007/05/i-cant-wait-to-see-what-matt-stone-trey-parker-do-with-this.md similarity index 100% rename from public/posts/2007/05/i-cant-wait-to-see-what-matt-stone-trey-parker-do-with-this.md rename to posts/2007/05/i-cant-wait-to-see-what-matt-stone-trey-parker-do-with-this.md diff --git a/public/posts/2007/05/index.ejs b/posts/2007/05/index.ejs similarity index 100% rename from public/posts/2007/05/index.ejs rename to posts/2007/05/index.ejs diff --git a/public/posts/2007/05/inspirado.md b/posts/2007/05/inspirado.md similarity index 100% rename from public/posts/2007/05/inspirado.md rename to posts/2007/05/inspirado.md diff --git a/public/posts/2007/05/iphone-humour.md b/posts/2007/05/iphone-humour.md similarity index 100% rename from public/posts/2007/05/iphone-humour.md rename to posts/2007/05/iphone-humour.md diff --git a/public/posts/2007/05/rails-plugins-link-dump.md b/posts/2007/05/rails-plugins-link-dump.md similarity index 100% rename from public/posts/2007/05/rails-plugins-link-dump.md rename to posts/2007/05/rails-plugins-link-dump.md diff --git a/public/posts/2007/05/typo-and-i-are-friends-again.md b/posts/2007/05/typo-and-i-are-friends-again.md similarity index 100% rename from public/posts/2007/05/typo-and-i-are-friends-again.md rename to posts/2007/05/typo-and-i-are-friends-again.md diff --git a/public/posts/2007/06/301-moved-permanently.md b/posts/2007/06/301-moved-permanently.md similarity index 100% rename from public/posts/2007/06/301-moved-permanently.md rename to posts/2007/06/301-moved-permanently.md diff --git a/public/posts/2007/06/_data.json b/posts/2007/06/_data.json similarity index 100% rename from public/posts/2007/06/_data.json rename to posts/2007/06/_data.json diff --git a/public/posts/2007/06/back-on-gentoo-trying-new-things.md b/posts/2007/06/back-on-gentoo-trying-new-things.md similarity index 100% rename from public/posts/2007/06/back-on-gentoo-trying-new-things.md rename to posts/2007/06/back-on-gentoo-trying-new-things.md diff --git a/public/posts/2007/06/begging-the-question.md b/posts/2007/06/begging-the-question.md similarity index 100% rename from public/posts/2007/06/begging-the-question.md rename to posts/2007/06/begging-the-question.md diff --git a/public/posts/2007/06/controlling-volume-via-the-keyboard-on-linux.md b/posts/2007/06/controlling-volume-via-the-keyboard-on-linux.md similarity index 100% rename from public/posts/2007/06/controlling-volume-via-the-keyboard-on-linux.md rename to posts/2007/06/controlling-volume-via-the-keyboard-on-linux.md diff --git a/public/posts/2007/06/emacs-for-textmate-junkies.md b/posts/2007/06/emacs-for-textmate-junkies.md similarity index 100% rename from public/posts/2007/06/emacs-for-textmate-junkies.md rename to posts/2007/06/emacs-for-textmate-junkies.md diff --git a/public/posts/2007/06/emacs-tagify-region-or-insert-tag.md b/posts/2007/06/emacs-tagify-region-or-insert-tag.md similarity index 100% rename from public/posts/2007/06/emacs-tagify-region-or-insert-tag.md rename to posts/2007/06/emacs-tagify-region-or-insert-tag.md diff --git a/public/posts/2007/06/embrace-the-database.md b/posts/2007/06/embrace-the-database.md similarity index 100% rename from public/posts/2007/06/embrace-the-database.md rename to posts/2007/06/embrace-the-database.md diff --git a/public/posts/2007/06/floating-point-in-elschemo.md b/posts/2007/06/floating-point-in-elschemo.md similarity index 100% rename from public/posts/2007/06/floating-point-in-elschemo.md rename to posts/2007/06/floating-point-in-elschemo.md diff --git a/public/posts/2007/06/index.ejs b/posts/2007/06/index.ejs similarity index 100% rename from public/posts/2007/06/index.ejs rename to posts/2007/06/index.ejs diff --git a/public/posts/2007/06/more-scheming-with-haskell.md b/posts/2007/06/more-scheming-with-haskell.md similarity index 100% rename from public/posts/2007/06/more-scheming-with-haskell.md rename to posts/2007/06/more-scheming-with-haskell.md diff --git a/public/posts/2007/06/propaganda-makes-me-sick.md b/posts/2007/06/propaganda-makes-me-sick.md similarity index 100% rename from public/posts/2007/06/propaganda-makes-me-sick.md rename to posts/2007/06/propaganda-makes-me-sick.md diff --git a/public/posts/2007/06/recent-ruby-and-rails-regales.md b/posts/2007/06/recent-ruby-and-rails-regales.md similarity index 100% rename from public/posts/2007/06/recent-ruby-and-rails-regales.md rename to posts/2007/06/recent-ruby-and-rails-regales.md diff --git a/public/posts/2007/06/reinventing-the-wheel.md b/posts/2007/06/reinventing-the-wheel.md similarity index 100% rename from public/posts/2007/06/reinventing-the-wheel.md rename to posts/2007/06/reinventing-the-wheel.md diff --git a/public/posts/2007/06/rtfm.md b/posts/2007/06/rtfm.md similarity index 100% rename from public/posts/2007/06/rtfm.md rename to posts/2007/06/rtfm.md diff --git a/public/posts/2007/06/so-long-typo-and-thanks-for-all-the-timeouts.md b/posts/2007/06/so-long-typo-and-thanks-for-all-the-timeouts.md similarity index 100% rename from public/posts/2007/06/so-long-typo-and-thanks-for-all-the-timeouts.md rename to posts/2007/06/so-long-typo-and-thanks-for-all-the-timeouts.md diff --git a/public/posts/2007/06/testspec-on-rails-declared-awesome-just-one-catch.md b/posts/2007/06/testspec-on-rails-declared-awesome-just-one-catch.md similarity index 100% rename from public/posts/2007/06/testspec-on-rails-declared-awesome-just-one-catch.md rename to posts/2007/06/testspec-on-rails-declared-awesome-just-one-catch.md diff --git a/public/posts/2007/07/_data.json b/posts/2007/07/_data.json similarity index 100% rename from public/posts/2007/07/_data.json rename to posts/2007/07/_data.json diff --git a/public/posts/2007/07/a-textmate-tip-for-emacs-users.md b/posts/2007/07/a-textmate-tip-for-emacs-users.md similarity index 100% rename from public/posts/2007/07/a-textmate-tip-for-emacs-users.md rename to posts/2007/07/a-textmate-tip-for-emacs-users.md diff --git a/public/posts/2007/07/index.ejs b/posts/2007/07/index.ejs similarity index 100% rename from public/posts/2007/07/index.ejs rename to posts/2007/07/index.ejs diff --git a/public/posts/2007/07/people.md b/posts/2007/07/people.md similarity index 100% rename from public/posts/2007/07/people.md rename to posts/2007/07/people.md diff --git a/public/posts/2007/07/rushcheck-quickcheck-for-ruby.md b/posts/2007/07/rushcheck-quickcheck-for-ruby.md similarity index 100% rename from public/posts/2007/07/rushcheck-quickcheck-for-ruby.md rename to posts/2007/07/rushcheck-quickcheck-for-ruby.md diff --git a/public/posts/2007/07/see-your-regular-expressions-in-emacs.md b/posts/2007/07/see-your-regular-expressions-in-emacs.md similarity index 100% rename from public/posts/2007/07/see-your-regular-expressions-in-emacs.md rename to posts/2007/07/see-your-regular-expressions-in-emacs.md diff --git a/public/posts/2007/08/5-ways-to-avoid-looking-like-a-jerk-on-the-internet.md b/posts/2007/08/5-ways-to-avoid-looking-like-a-jerk-on-the-internet.md similarity index 100% rename from public/posts/2007/08/5-ways-to-avoid-looking-like-a-jerk-on-the-internet.md rename to posts/2007/08/5-ways-to-avoid-looking-like-a-jerk-on-the-internet.md diff --git a/public/posts/2007/08/_data.json b/posts/2007/08/_data.json similarity index 100% rename from public/posts/2007/08/_data.json rename to posts/2007/08/_data.json diff --git a/public/posts/2007/08/captivating-little-creatures.md b/posts/2007/08/captivating-little-creatures.md similarity index 100% rename from public/posts/2007/08/captivating-little-creatures.md rename to posts/2007/08/captivating-little-creatures.md diff --git a/public/posts/2007/08/catch-compiler-errors-at-runtime.md b/posts/2007/08/catch-compiler-errors-at-runtime.md similarity index 100% rename from public/posts/2007/08/catch-compiler-errors-at-runtime.md rename to posts/2007/08/catch-compiler-errors-at-runtime.md diff --git a/public/posts/2007/08/cheat-from-emacs.md b/posts/2007/08/cheat-from-emacs.md similarity index 100% rename from public/posts/2007/08/cheat-from-emacs.md rename to posts/2007/08/cheat-from-emacs.md diff --git a/public/posts/2007/08/cheat-productively-in-emacs.md b/posts/2007/08/cheat-productively-in-emacs.md similarity index 100% rename from public/posts/2007/08/cheat-productively-in-emacs.md rename to posts/2007/08/cheat-productively-in-emacs.md diff --git a/public/posts/2007/08/elschemo-boolean-logic-and-branching.md b/posts/2007/08/elschemo-boolean-logic-and-branching.md similarity index 100% rename from public/posts/2007/08/elschemo-boolean-logic-and-branching.md rename to posts/2007/08/elschemo-boolean-logic-and-branching.md diff --git a/public/posts/2007/08/index.ejs b/posts/2007/08/index.ejs similarity index 100% rename from public/posts/2007/08/index.ejs rename to posts/2007/08/index.ejs diff --git a/public/posts/2007/08/opera-is-pretty-slick.md b/posts/2007/08/opera-is-pretty-slick.md similarity index 100% rename from public/posts/2007/08/opera-is-pretty-slick.md rename to posts/2007/08/opera-is-pretty-slick.md diff --git a/public/posts/2007/08/snap-crunchle-pop.md b/posts/2007/08/snap-crunchle-pop.md similarity index 100% rename from public/posts/2007/08/snap-crunchle-pop.md rename to posts/2007/08/snap-crunchle-pop.md diff --git a/public/posts/2007/09/_data.json b/posts/2007/09/_data.json similarity index 100% rename from public/posts/2007/09/_data.json rename to posts/2007/09/_data.json diff --git a/public/posts/2007/09/index.ejs b/posts/2007/09/index.ejs similarity index 100% rename from public/posts/2007/09/index.ejs rename to posts/2007/09/index.ejs diff --git a/public/posts/2007/09/learning-lisp-read-pcl.md b/posts/2007/09/learning-lisp-read-pcl.md similarity index 100% rename from public/posts/2007/09/learning-lisp-read-pcl.md rename to posts/2007/09/learning-lisp-read-pcl.md diff --git a/public/posts/2007/09/python-and-ruby-brain-dump.md b/posts/2007/09/python-and-ruby-brain-dump.md similarity index 100% rename from public/posts/2007/09/python-and-ruby-brain-dump.md rename to posts/2007/09/python-and-ruby-brain-dump.md diff --git a/public/posts/2007/10/_data.json b/posts/2007/10/_data.json similarity index 100% rename from public/posts/2007/10/_data.json rename to posts/2007/10/_data.json diff --git a/public/posts/2007/10/gtkpod-in-gutsy-got-you-groaning.md b/posts/2007/10/gtkpod-in-gutsy-got-you-groaning.md similarity index 100% rename from public/posts/2007/10/gtkpod-in-gutsy-got-you-groaning.md rename to posts/2007/10/gtkpod-in-gutsy-got-you-groaning.md diff --git a/public/posts/2007/10/index.ejs b/posts/2007/10/index.ejs similarity index 100% rename from public/posts/2007/10/index.ejs rename to posts/2007/10/index.ejs diff --git a/public/posts/2007/index.ejs b/posts/2007/index.ejs similarity index 100% rename from public/posts/2007/index.ejs rename to posts/2007/index.ejs diff --git a/public/posts/2008/01/_data.json b/posts/2008/01/_data.json similarity index 100% rename from public/posts/2008/01/_data.json rename to posts/2008/01/_data.json diff --git a/public/posts/2008/01/index.ejs b/posts/2008/01/index.ejs similarity index 100% rename from public/posts/2008/01/index.ejs rename to posts/2008/01/index.ejs diff --git a/public/posts/2008/01/random-pet-peeve-of-the-day.md b/posts/2008/01/random-pet-peeve-of-the-day.md similarity index 100% rename from public/posts/2008/01/random-pet-peeve-of-the-day.md rename to posts/2008/01/random-pet-peeve-of-the-day.md diff --git a/public/posts/2008/02/_data.json b/posts/2008/02/_data.json similarity index 100% rename from public/posts/2008/02/_data.json rename to posts/2008/02/_data.json diff --git a/public/posts/2008/02/index.ejs b/posts/2008/02/index.ejs similarity index 100% rename from public/posts/2008/02/index.ejs rename to posts/2008/02/index.ejs diff --git a/public/posts/2008/02/thoughts-on-arc.md b/posts/2008/02/thoughts-on-arc.md similarity index 100% rename from public/posts/2008/02/thoughts-on-arc.md rename to posts/2008/02/thoughts-on-arc.md diff --git a/public/posts/2008/03/_data.json b/posts/2008/03/_data.json similarity index 100% rename from public/posts/2008/03/_data.json rename to posts/2008/03/_data.json diff --git a/public/posts/2008/03/index.ejs b/posts/2008/03/index.ejs similarity index 100% rename from public/posts/2008/03/index.ejs rename to posts/2008/03/index.ejs diff --git a/public/posts/2008/03/project-euler-code-repo-in-arc.md b/posts/2008/03/project-euler-code-repo-in-arc.md similarity index 100% rename from public/posts/2008/03/project-euler-code-repo-in-arc.md rename to posts/2008/03/project-euler-code-repo-in-arc.md diff --git a/public/posts/2008/index.ejs b/posts/2008/index.ejs similarity index 100% rename from public/posts/2008/index.ejs rename to posts/2008/index.ejs diff --git a/public/posts/2009/11/_data.json b/posts/2009/11/_data.json similarity index 100% rename from public/posts/2009/11/_data.json rename to posts/2009/11/_data.json diff --git a/public/posts/2009/11/index.ejs b/posts/2009/11/index.ejs similarity index 100% rename from public/posts/2009/11/index.ejs rename to posts/2009/11/index.ejs diff --git a/public/posts/2009/11/using-emacs-to-develop-mojo-apps-for-webos.md b/posts/2009/11/using-emacs-to-develop-mojo-apps-for-webos.md similarity index 100% rename from public/posts/2009/11/using-emacs-to-develop-mojo-apps-for-webos.md rename to posts/2009/11/using-emacs-to-develop-mojo-apps-for-webos.md diff --git a/public/posts/2009/index.ejs b/posts/2009/index.ejs similarity index 100% rename from public/posts/2009/index.ejs rename to posts/2009/index.ejs diff --git a/public/posts/2010/01/_data.json b/posts/2010/01/_data.json similarity index 100% rename from public/posts/2010/01/_data.json rename to posts/2010/01/_data.json diff --git a/public/posts/2010/01/a-preview-of-mach-o-file-generation.md b/posts/2010/01/a-preview-of-mach-o-file-generation.md similarity index 100% rename from public/posts/2010/01/a-preview-of-mach-o-file-generation.md rename to posts/2010/01/a-preview-of-mach-o-file-generation.md diff --git a/public/posts/2010/01/basics-of-the-mach-o-file-format.md b/posts/2010/01/basics-of-the-mach-o-file-format.md similarity index 100% rename from public/posts/2010/01/basics-of-the-mach-o-file-format.md rename to posts/2010/01/basics-of-the-mach-o-file-format.md diff --git a/public/posts/2010/01/index.ejs b/posts/2010/01/index.ejs similarity index 100% rename from public/posts/2010/01/index.ejs rename to posts/2010/01/index.ejs diff --git a/public/posts/2010/01/working-with-c-style-structs-in-ruby.md b/posts/2010/01/working-with-c-style-structs-in-ruby.md similarity index 100% rename from public/posts/2010/01/working-with-c-style-structs-in-ruby.md rename to posts/2010/01/working-with-c-style-structs-in-ruby.md diff --git a/public/posts/2010/11/37signals-chalk-dissected.md b/posts/2010/11/37signals-chalk-dissected.md similarity index 100% rename from public/posts/2010/11/37signals-chalk-dissected.md rename to posts/2010/11/37signals-chalk-dissected.md diff --git a/public/posts/2010/11/_data.json b/posts/2010/11/_data.json similarity index 100% rename from public/posts/2010/11/_data.json rename to posts/2010/11/_data.json diff --git a/public/posts/2010/11/index.ejs b/posts/2010/11/index.ejs similarity index 100% rename from public/posts/2010/11/index.ejs rename to posts/2010/11/index.ejs diff --git a/public/posts/2010/index.ejs b/posts/2010/index.ejs similarity index 100% rename from public/posts/2010/index.ejs rename to posts/2010/index.ejs diff --git a/public/posts/2011/11/_data.json b/posts/2011/11/_data.json similarity index 100% rename from public/posts/2011/11/_data.json rename to posts/2011/11/_data.json diff --git a/public/posts/2011/11/index.ejs b/posts/2011/11/index.ejs similarity index 100% rename from public/posts/2011/11/index.ejs rename to posts/2011/11/index.ejs diff --git a/public/posts/2011/11/lights.md b/posts/2011/11/lights.md similarity index 100% rename from public/posts/2011/11/lights.md rename to posts/2011/11/lights.md diff --git a/public/posts/2011/11/recovering-old-posts.md b/posts/2011/11/recovering-old-posts.md similarity index 100% rename from public/posts/2011/11/recovering-old-posts.md rename to posts/2011/11/recovering-old-posts.md diff --git a/public/posts/2011/12/_data.json b/posts/2011/12/_data.json similarity index 100% rename from public/posts/2011/12/_data.json rename to posts/2011/12/_data.json diff --git a/public/posts/2011/12/i-see-http.md b/posts/2011/12/i-see-http.md similarity index 100% rename from public/posts/2011/12/i-see-http.md rename to posts/2011/12/i-see-http.md diff --git a/public/posts/2011/12/index.ejs b/posts/2011/12/index.ejs similarity index 100% rename from public/posts/2011/12/index.ejs rename to posts/2011/12/index.ejs diff --git a/public/posts/2011/12/my-kind-of-feature-checklist.md b/posts/2011/12/my-kind-of-feature-checklist.md similarity index 100% rename from public/posts/2011/12/my-kind-of-feature-checklist.md rename to posts/2011/12/my-kind-of-feature-checklist.md diff --git a/public/posts/2011/12/new-release-of-firefox-for-android-optimized-for-tablets.md b/posts/2011/12/new-release-of-firefox-for-android-optimized-for-tablets.md similarity index 100% rename from public/posts/2011/12/new-release-of-firefox-for-android-optimized-for-tablets.md rename to posts/2011/12/new-release-of-firefox-for-android-optimized-for-tablets.md diff --git a/public/posts/2011/12/pure-css3-images-hmm-maybe-later.md b/posts/2011/12/pure-css3-images-hmm-maybe-later.md similarity index 100% rename from public/posts/2011/12/pure-css3-images-hmm-maybe-later.md rename to posts/2011/12/pure-css3-images-hmm-maybe-later.md diff --git a/public/posts/2011/12/static-url-shortener-using-htaccess.md b/posts/2011/12/static-url-shortener-using-htaccess.md similarity index 100% rename from public/posts/2011/12/static-url-shortener-using-htaccess.md rename to posts/2011/12/static-url-shortener-using-htaccess.md diff --git a/public/posts/2011/12/the-broken-pixel-theory.md b/posts/2011/12/the-broken-pixel-theory.md similarity index 100% rename from public/posts/2011/12/the-broken-pixel-theory.md rename to posts/2011/12/the-broken-pixel-theory.md diff --git a/public/posts/2011/index.ejs b/posts/2011/index.ejs similarity index 100% rename from public/posts/2011/index.ejs rename to posts/2011/index.ejs diff --git a/public/posts/2012/01/_data.json b/posts/2012/01/_data.json similarity index 100% rename from public/posts/2012/01/_data.json rename to posts/2012/01/_data.json diff --git a/public/posts/2012/01/fujitsu-has-lost-their-mind.md b/posts/2012/01/fujitsu-has-lost-their-mind.md similarity index 100% rename from public/posts/2012/01/fujitsu-has-lost-their-mind.md rename to posts/2012/01/fujitsu-has-lost-their-mind.md diff --git a/public/posts/2012/01/index.ejs b/posts/2012/01/index.ejs similarity index 100% rename from public/posts/2012/01/index.ejs rename to posts/2012/01/index.ejs diff --git a/public/posts/2012/01/recovering-from-a-computer-science-education.md b/posts/2012/01/recovering-from-a-computer-science-education.md similarity index 100% rename from public/posts/2012/01/recovering-from-a-computer-science-education.md rename to posts/2012/01/recovering-from-a-computer-science-education.md diff --git a/public/posts/2012/01/sopa-lives-and-mpaa-calls-protests-an-abuse-of-power.md b/posts/2012/01/sopa-lives-and-mpaa-calls-protests-an-abuse-of-power.md similarity index 100% rename from public/posts/2012/01/sopa-lives-and-mpaa-calls-protests-an-abuse-of-power.md rename to posts/2012/01/sopa-lives-and-mpaa-calls-protests-an-abuse-of-power.md diff --git a/public/posts/2012/01/the-40-standup-desk.md b/posts/2012/01/the-40-standup-desk.md similarity index 100% rename from public/posts/2012/01/the-40-standup-desk.md rename to posts/2012/01/the-40-standup-desk.md diff --git a/public/posts/2012/01/yak-shaving.md b/posts/2012/01/yak-shaving.md similarity index 100% rename from public/posts/2012/01/yak-shaving.md rename to posts/2012/01/yak-shaving.md diff --git a/public/posts/2012/index.ejs b/posts/2012/index.ejs similarity index 100% rename from public/posts/2012/index.ejs rename to posts/2012/index.ejs diff --git a/public/posts/2013/03/_data.json b/posts/2013/03/_data.json similarity index 100% rename from public/posts/2013/03/_data.json rename to posts/2013/03/_data.json diff --git a/public/posts/2013/03/index.ejs b/posts/2013/03/index.ejs similarity index 100% rename from public/posts/2013/03/index.ejs rename to posts/2013/03/index.ejs diff --git a/public/posts/2013/03/zelda-tones-for-ios.md b/posts/2013/03/zelda-tones-for-ios.md similarity index 100% rename from public/posts/2013/03/zelda-tones-for-ios.md rename to posts/2013/03/zelda-tones-for-ios.md diff --git a/public/posts/2013/09/_data.json b/posts/2013/09/_data.json similarity index 100% rename from public/posts/2013/09/_data.json rename to posts/2013/09/_data.json diff --git a/public/posts/2013/09/index.ejs b/posts/2013/09/index.ejs similarity index 100% rename from public/posts/2013/09/index.ejs rename to posts/2013/09/index.ejs diff --git a/public/posts/2013/09/linky.md b/posts/2013/09/linky.md similarity index 100% rename from public/posts/2013/09/linky.md rename to posts/2013/09/linky.md diff --git a/public/posts/2013/index.ejs b/posts/2013/index.ejs similarity index 100% rename from public/posts/2013/index.ejs rename to posts/2013/index.ejs diff --git a/public/posts/2014/02/_data.json b/posts/2014/02/_data.json similarity index 100% rename from public/posts/2014/02/_data.json rename to posts/2014/02/_data.json diff --git a/public/posts/2014/02/ember-structure.md b/posts/2014/02/ember-structure.md similarity index 100% rename from public/posts/2014/02/ember-structure.md rename to posts/2014/02/ember-structure.md diff --git a/public/posts/2014/02/index.ejs b/posts/2014/02/index.ejs similarity index 100% rename from public/posts/2014/02/index.ejs rename to posts/2014/02/index.ejs diff --git a/public/posts/2014/index.ejs b/posts/2014/index.ejs similarity index 100% rename from public/posts/2014/index.ejs rename to posts/2014/index.ejs diff --git a/public/posts/2015/05/_data.json b/posts/2015/05/_data.json similarity index 100% rename from public/posts/2015/05/_data.json rename to posts/2015/05/_data.json diff --git a/public/posts/2015/05/a-bitcoin-miner-in-every-device-and-in-every-hand.md b/posts/2015/05/a-bitcoin-miner-in-every-device-and-in-every-hand.md similarity index 100% rename from public/posts/2015/05/a-bitcoin-miner-in-every-device-and-in-every-hand.md rename to posts/2015/05/a-bitcoin-miner-in-every-device-and-in-every-hand.md diff --git a/public/posts/2015/05/apple-watch-human-interface-guidelines.md b/posts/2015/05/apple-watch-human-interface-guidelines.md similarity index 100% rename from public/posts/2015/05/apple-watch-human-interface-guidelines.md rename to posts/2015/05/apple-watch-human-interface-guidelines.md diff --git a/public/posts/2015/05/constraints-and-transforms-in-ios-8.md b/posts/2015/05/constraints-and-transforms-in-ios-8.md similarity index 100% rename from public/posts/2015/05/constraints-and-transforms-in-ios-8.md rename to posts/2015/05/constraints-and-transforms-in-ios-8.md diff --git a/public/posts/2015/05/github-flow-like-a-pro.md b/posts/2015/05/github-flow-like-a-pro.md similarity index 100% rename from public/posts/2015/05/github-flow-like-a-pro.md rename to posts/2015/05/github-flow-like-a-pro.md diff --git a/public/posts/2015/05/importing-modules-in-lldb.md b/posts/2015/05/importing-modules-in-lldb.md similarity index 100% rename from public/posts/2015/05/importing-modules-in-lldb.md rename to posts/2015/05/importing-modules-in-lldb.md diff --git a/public/posts/2015/05/index.ejs b/posts/2015/05/index.ejs similarity index 100% rename from public/posts/2015/05/index.ejs rename to posts/2015/05/index.ejs diff --git a/public/posts/2015/05/lenovo-thinkpad-x1-carbon.md b/posts/2015/05/lenovo-thinkpad-x1-carbon.md similarity index 100% rename from public/posts/2015/05/lenovo-thinkpad-x1-carbon.md rename to posts/2015/05/lenovo-thinkpad-x1-carbon.md diff --git a/public/posts/2015/05/magical-wristband.md b/posts/2015/05/magical-wristband.md similarity index 100% rename from public/posts/2015/05/magical-wristband.md rename to posts/2015/05/magical-wristband.md diff --git a/public/posts/2015/05/undocumented-corestorage-commands.md b/posts/2015/05/undocumented-corestorage-commands.md similarity index 100% rename from public/posts/2015/05/undocumented-corestorage-commands.md rename to posts/2015/05/undocumented-corestorage-commands.md diff --git a/public/posts/2015/06/_data.json b/posts/2015/06/_data.json similarity index 100% rename from public/posts/2015/06/_data.json rename to posts/2015/06/_data.json diff --git a/public/posts/2015/06/debugging-layouts-with-recursive-view-descriptions-in-xcode.md b/posts/2015/06/debugging-layouts-with-recursive-view-descriptions-in-xcode.md similarity index 100% rename from public/posts/2015/06/debugging-layouts-with-recursive-view-descriptions-in-xcode.md rename to posts/2015/06/debugging-layouts-with-recursive-view-descriptions-in-xcode.md diff --git a/public/posts/2015/06/index.ejs b/posts/2015/06/index.ejs similarity index 100% rename from public/posts/2015/06/index.ejs rename to posts/2015/06/index.ejs diff --git a/public/posts/2015/06/the-unofficial-guide-to-xcconfig-files.md b/posts/2015/06/the-unofficial-guide-to-xcconfig-files.md similarity index 100% rename from public/posts/2015/06/the-unofficial-guide-to-xcconfig-files.md rename to posts/2015/06/the-unofficial-guide-to-xcconfig-files.md diff --git a/public/posts/2015/07/_data.json b/posts/2015/07/_data.json similarity index 100% rename from public/posts/2015/07/_data.json rename to posts/2015/07/_data.json diff --git a/public/posts/2015/07/index.ejs b/posts/2015/07/index.ejs similarity index 100% rename from public/posts/2015/07/index.ejs rename to posts/2015/07/index.ejs diff --git a/public/posts/2015/07/scripts-to-rule-them-all.md b/posts/2015/07/scripts-to-rule-them-all.md similarity index 100% rename from public/posts/2015/07/scripts-to-rule-them-all.md rename to posts/2015/07/scripts-to-rule-them-all.md diff --git a/public/posts/2015/07/swift-new-stuff-in-xcode-7-beta-3.md b/posts/2015/07/swift-new-stuff-in-xcode-7-beta-3.md similarity index 100% rename from public/posts/2015/07/swift-new-stuff-in-xcode-7-beta-3.md rename to posts/2015/07/swift-new-stuff-in-xcode-7-beta-3.md diff --git a/public/posts/2015/08/_data.json b/posts/2015/08/_data.json similarity index 100% rename from public/posts/2015/08/_data.json rename to posts/2015/08/_data.json diff --git a/public/posts/2015/08/acorn-5s-live-help-search.md b/posts/2015/08/acorn-5s-live-help-search.md similarity index 100% rename from public/posts/2015/08/acorn-5s-live-help-search.md rename to posts/2015/08/acorn-5s-live-help-search.md diff --git a/public/posts/2015/08/cloaks-updated-privacy-policy.md b/posts/2015/08/cloaks-updated-privacy-policy.md similarity index 100% rename from public/posts/2015/08/cloaks-updated-privacy-policy.md rename to posts/2015/08/cloaks-updated-privacy-policy.md diff --git a/public/posts/2015/08/index.ejs b/posts/2015/08/index.ejs similarity index 100% rename from public/posts/2015/08/index.ejs rename to posts/2015/08/index.ejs diff --git a/public/posts/2015/index.ejs b/posts/2015/index.ejs similarity index 100% rename from public/posts/2015/index.ejs rename to posts/2015/index.ejs diff --git a/public/posts/2016/03/_data.json b/posts/2016/03/_data.json similarity index 100% rename from public/posts/2016/03/_data.json rename to posts/2016/03/_data.json diff --git a/public/posts/2016/03/index.ejs b/posts/2016/03/index.ejs similarity index 100% rename from public/posts/2016/03/index.ejs rename to posts/2016/03/index.ejs diff --git a/public/posts/2016/03/moving-beyond-the-oop-obsession.md b/posts/2016/03/moving-beyond-the-oop-obsession.md similarity index 100% rename from public/posts/2016/03/moving-beyond-the-oop-obsession.md rename to posts/2016/03/moving-beyond-the-oop-obsession.md diff --git a/public/posts/2016/03/reduce-the-cognitive-load-of-your-code.md b/posts/2016/03/reduce-the-cognitive-load-of-your-code.md similarity index 100% rename from public/posts/2016/03/reduce-the-cognitive-load-of-your-code.md rename to posts/2016/03/reduce-the-cognitive-load-of-your-code.md diff --git a/public/posts/2016/04/_data.json b/posts/2016/04/_data.json similarity index 100% rename from public/posts/2016/04/_data.json rename to posts/2016/04/_data.json diff --git a/public/posts/2016/04/index.ejs b/posts/2016/04/index.ejs similarity index 100% rename from public/posts/2016/04/index.ejs rename to posts/2016/04/index.ejs diff --git a/public/posts/2016/04/tales-of-prk-laser-eye-surgery.md b/posts/2016/04/tales-of-prk-laser-eye-surgery.md similarity index 100% rename from public/posts/2016/04/tales-of-prk-laser-eye-surgery.md rename to posts/2016/04/tales-of-prk-laser-eye-surgery.md diff --git a/public/posts/2016/08/_data.json b/posts/2016/08/_data.json similarity index 100% rename from public/posts/2016/08/_data.json rename to posts/2016/08/_data.json diff --git a/public/posts/2016/08/easy-optimization-wins.md b/posts/2016/08/easy-optimization-wins.md similarity index 100% rename from public/posts/2016/08/easy-optimization-wins.md rename to posts/2016/08/easy-optimization-wins.md diff --git a/public/posts/2016/08/index.ejs b/posts/2016/08/index.ejs similarity index 100% rename from public/posts/2016/08/index.ejs rename to posts/2016/08/index.ejs diff --git a/public/posts/2016/08/ios-git-pre-commit-hook.md b/posts/2016/08/ios-git-pre-commit-hook.md similarity index 100% rename from public/posts/2016/08/ios-git-pre-commit-hook.md rename to posts/2016/08/ios-git-pre-commit-hook.md diff --git a/public/posts/2016/index.ejs b/posts/2016/index.ejs similarity index 100% rename from public/posts/2016/index.ejs rename to posts/2016/index.ejs diff --git a/public/posts/2017/10/_data.json b/posts/2017/10/_data.json similarity index 100% rename from public/posts/2017/10/_data.json rename to posts/2017/10/_data.json diff --git a/public/posts/2017/10/index.ejs b/posts/2017/10/index.ejs similarity index 100% rename from public/posts/2017/10/index.ejs rename to posts/2017/10/index.ejs diff --git a/public/posts/2017/10/swift-optional-or.md b/posts/2017/10/swift-optional-or.md similarity index 82% rename from public/posts/2017/10/swift-optional-or.md rename to posts/2017/10/swift-optional-or.md index 5f0471f..bba17db 100644 --- a/public/posts/2017/10/swift-optional-or.md +++ b/posts/2017/10/swift-optional-or.md @@ -1,3 +1,13 @@ +--- +Slug: swift-optional-or +Author: Sami Samhuri +Title: A nil-coalescing alternative for Swift +Date: 6th October, 2017 +Timestamp: 1507324813 +Path_deprecated: /posts/2017/10/swift-optional-or +Tags: iOS, Swift +--- + Swift compile times leave something to be desired and a common culprit is the affectionately-named [nil-coalescing operator][nilop]. A small extension to `Optional` can improve this without sacrificing a lot of readability. ```Swift diff --git a/public/posts/2017/index.ejs b/posts/2017/index.ejs similarity index 100% rename from public/posts/2017/index.ejs rename to posts/2017/index.ejs diff --git a/public/posts/2018/index.ejs b/posts/2018/index.ejs similarity index 100% rename from public/posts/2018/index.ejs rename to posts/2018/index.ejs diff --git a/public/posts/2019/index.ejs b/posts/2019/index.ejs similarity index 100% rename from public/posts/2019/index.ejs rename to posts/2019/index.ejs diff --git a/public/posts/_month.ejs b/posts/_month.ejs similarity index 100% rename from public/posts/_month.ejs rename to posts/_month.ejs diff --git a/public/posts/_year.ejs b/posts/_year.ejs similarity index 100% rename from public/posts/_year.ejs rename to posts/_year.ejs diff --git a/public/posts/index.html b/posts/index.html similarity index 100% rename from public/posts/index.html rename to posts/index.html