From 273cb83d9bf0c484241462490e011edfdad7d0d2 Mon Sep 17 00:00:00 2001 From: Rohan Verma Date: Thu, 7 Nov 2019 16:15:56 +0530 Subject: [PATCH 1/7] chore: reorganize content folder --- content/blog/{ => 2010}/2010-09-28-some-cool-js.md | 0 content/blog/{ => 2010}/2010-09-28-wcg.md | 0 content/blog/{ => 2011}/2011-04-23-redirection.md | 0 .../{ => 2016}/2016-01-27-making-presenations-using-markdown.md | 0 content/blog/{ => 2016}/2016-01-28-point-about-floating-points.md | 0 content/blog/{ => 2016}/2016-01-29-twitter-bots-using-tweepy.md | 0 content/blog/{ => 2016}/2016-03-22-blip.md | 0 content/blog/{ => 2016}/2016-04-15-foodify-app-hacknsit-2016.md | 0 ...adding-support-for-vector-instructions-to-8051-architecture.md | 0 .../2016-05-10-participating-in-google-summer-of-code-2016.md | 0 content/blog/{ => 2016}/2016-05-20-building-planet-gsoc.md | 0 .../2016-05-30-installing-apache-allura-on-digital-ocean.md | 0 .../blog/{ => 2016}/2016-06-20-vim-as-your-daily-log-notebook.md | 0 content/blog/{ => 2016}/2016-08-04-to-draft-or-not-to-draft.md | 0 ...-what-is-apache-allura-and-why-is-it-relevant-to-developers.md | 0 .../2016-08-06-topological-sort-for-problems-using-dag.md | 0 .../2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md | 0 .../blog/{ => 2016}/2016-08-09-apache-allura-gsoc-2016-summary.md | 0 content/blog/{ => 2016}/2016-10-20-hello-wordpress.md | 0 ...axy-image-classifier-featured-in-sirajologys-youtube-videos.md | 0 .../2016-10-31-just-installed-a-new-theme-for-the-blog.md | 0 .../2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md | 0 .../2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md | 0 .../{ => 2016}/2016-11-07-a-tip-on-using-fsck-when-you-are.md | 0 ...1-08-feeling-excited-about-attending-apachecon-big-data-and.md | 0 ...6-11-09-some-journal-publications-require-you-to-put-author.md | 0 ...1-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md | 0 ...3-toured-seville-today-thanks-to-https-www-feelthecitytours.md | 0 .../2016-11-14-day-1-apachecon-big-data-seville-2016.md | 0 .../{ => 2016}/2016-11-15-day-2-apachecon-big-data-seville.md | 0 .../2016-11-16-day-3-apachecon-barcamp-and-apachecon.md | 0 .../{ => 2016}/2016-11-17-day-4-apachecon-and-the-apache-way.md | 0 .../{ => 2016}/2016-11-18-day-5-the-final-day-of-apachecon.md | 0 .../2016-11-23-getting-ready-for-updating-my-system-to-fedora.md | 0 .../2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md | 0 content/blog/{ => 2016}/2016-11-29-octoshark-hackathon.md | 0 .../2016-12-12-sorting-out-my-todo-list-for-the-next.md | 0 ...tical-thought-within-the-politically-agnostic-foss-movement.md | 0 .../blog/{ => 2016}/2016-12-14-at-last-i-am-now-on-fedora-25.md | 0 .../{ => 2016}/2016-12-19-if-you-are-using-os-rename-src-dest.md | 0 .../blog/{ => 2017}/2017-01-07-how-to-sign-pgp-keys-using-gpg.md | 0 content/blog/{ => 2017}/2017-01-10-notes-on-regex.md | 0 .../2017-01-12-checking-if-a-number-is-prime-using-regex.md | 0 content/blog/{ => 2017}/2017-01-12-snu-data-limit.md | 0 .../2017-01-25-today-my-phone-was-acting-strange-as-it.md | 0 content/blog/{ => 2017}/2017-02-04-i-used-to-use-the-l-flag.md | 0 content/blog/{ => 2017}/2017-02-05-elitebnc.md | 0 .../{ => 2017}/2017-02-07-working-with-j2me-on-linux-in-2017.md | 0 content/blog/{ => 2017}/2017-02-09-vorstellungsreprasentanz.md | 0 ...-02-14-survey-paper-on-security-in-wireless-sensor-networks.md | 0 .../2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md | 0 .../2017-04-20-retrofitting-led-lamps-into-smart-lamps.md | 0 .../2017-05-06-rendezvous-with-a-reflection-screenplay.md | 0 .../2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md | 0 .../{ => 2017}/2017-06-26-take-out-a-moment-and-think-are-you.md | 0 content/blog/{ => 2017}/2017-07-27-216.md | 0 content/blog/{ => 2017}/2017-09-20-torogo.md | 0 content/blog/{ => 2017}/2017-10-11-yumex-dnf-is-locked.md | 0 ...r-even-as-it-was-performed​-​in-​​the-​​ancient.md | 0 ...ess-of-odissi-dance-an-comment-on-the-literature-on-the-web.md | 0 content/blog/{ => 2017}/2017-11-11-vocabulary-of-odissi.md | 0 content/blog/{ => 2017}/2017-11-30-emotive-adsense-project.md | 0 content/blog/{ => 2017}/2017-12-19-what-thefuck-is-wrong-with.md | 0 .../blog/{ => 2017}/2017-12-20-setting-up-latex-on-spacemacs.md | 0 .../blog/{ => 2017}/2017-12-20-switching-to-spacemacs-based-on.md | 0 ...-21-deep-learning-through-the-lens-of-the-information-plane.md | 0 ...tting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md | 0 .../2018-02-23-featured-on-googles-instagram-instagram.md | 0 .../2018-03-18-extract-filenames-without-their-extensions.md | 0 .../{ => 2018}/2018-03-20-today-i-integrated-the-wordpress.md | 0 ...voice-enabled-coding-companion-winner-dell-intern-hackathon.md | 0 .../{ => 2018}/2018-05-11-my-personal-opinion-about-learning.md | 0 ...-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md | 0 content/blog/{ => 2018}/2018-06-07-emacs-starts-a-bit-slow.md | 0 ...7-30-functional-options-for-testing-without-mocks-in-golang.md | 0 .../blog/{ => 2018}/2018-08-01-rewriting-lyric-api-in-golang.md | 0 ...8-08-20-automate-fast-download-of-a-large-files-through-ftp.md | 0 .../2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md | 0 .../{ => 2018}/2018-10-14-convolutional-neural-network-basics.md | 0 ...aming-audio-from-linux-to-android-using-pulseaudio-over-lan.md | 0 content/blog/{ => 2018}/interview_with_google.md | 0 ...-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md | 0 content/blog/{ => 2019}/2019-02-03-bcb-presentation.md | 0 content/blog/{ => 2019}/2019-02-17-progress-update-1-upilink.md | 0 content/blog/{ => 2019}/2019-02-24-progress-update-2-upilink.md | 0 .../blog/{ => 2019}/2019-03-17-a-review-of-the-siempo-launcher.md | 0 .../2019-08-04-docker-containers-to-build-archaic-projects.md | 0 content/blog/{ => 2019}/2019-08-04.md | 0 content/blog/{ => 2019}/2019-10-10-facebook-birthday.md | 0 content/blog/{ => 2019}/2019-10-25-paisavasool-hackinout-2019.md | 0 content/blog/{ => 2019}/2019-11-05-docker-gopls.md | 0 91 files changed, 0 insertions(+), 0 deletions(-) rename content/blog/{ => 2010}/2010-09-28-some-cool-js.md (100%) rename content/blog/{ => 2010}/2010-09-28-wcg.md (100%) rename content/blog/{ => 2011}/2011-04-23-redirection.md (100%) rename content/blog/{ => 2016}/2016-01-27-making-presenations-using-markdown.md (100%) rename content/blog/{ => 2016}/2016-01-28-point-about-floating-points.md (100%) rename content/blog/{ => 2016}/2016-01-29-twitter-bots-using-tweepy.md (100%) rename content/blog/{ => 2016}/2016-03-22-blip.md (100%) rename content/blog/{ => 2016}/2016-04-15-foodify-app-hacknsit-2016.md (100%) rename content/blog/{ => 2016}/2016-05-07-adding-support-for-vector-instructions-to-8051-architecture.md (100%) rename content/blog/{ => 2016}/2016-05-10-participating-in-google-summer-of-code-2016.md (100%) rename content/blog/{ => 2016}/2016-05-20-building-planet-gsoc.md (100%) rename content/blog/{ => 2016}/2016-05-30-installing-apache-allura-on-digital-ocean.md (100%) rename content/blog/{ => 2016}/2016-06-20-vim-as-your-daily-log-notebook.md (100%) rename content/blog/{ => 2016}/2016-08-04-to-draft-or-not-to-draft.md (100%) rename content/blog/{ => 2016}/2016-08-05-what-is-apache-allura-and-why-is-it-relevant-to-developers.md (100%) rename content/blog/{ => 2016}/2016-08-06-topological-sort-for-problems-using-dag.md (100%) rename content/blog/{ => 2016}/2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md (100%) rename content/blog/{ => 2016}/2016-08-09-apache-allura-gsoc-2016-summary.md (100%) rename content/blog/{ => 2016}/2016-10-20-hello-wordpress.md (100%) rename content/blog/{ => 2016}/2016-10-22-labeled-tweet-generator-and-galaxy-image-classifier-featured-in-sirajologys-youtube-videos.md (100%) rename content/blog/{ => 2016}/2016-10-31-just-installed-a-new-theme-for-the-blog.md (100%) rename content/blog/{ => 2016}/2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md (100%) rename content/blog/{ => 2016}/2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md (100%) rename content/blog/{ => 2016}/2016-11-07-a-tip-on-using-fsck-when-you-are.md (100%) rename content/blog/{ => 2016}/2016-11-08-feeling-excited-about-attending-apachecon-big-data-and.md (100%) rename content/blog/{ => 2016}/2016-11-09-some-journal-publications-require-you-to-put-author.md (100%) rename content/blog/{ => 2016}/2016-11-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md (100%) rename content/blog/{ => 2016}/2016-11-13-toured-seville-today-thanks-to-https-www-feelthecitytours.md (100%) rename content/blog/{ => 2016}/2016-11-14-day-1-apachecon-big-data-seville-2016.md (100%) rename content/blog/{ => 2016}/2016-11-15-day-2-apachecon-big-data-seville.md (100%) rename content/blog/{ => 2016}/2016-11-16-day-3-apachecon-barcamp-and-apachecon.md (100%) rename content/blog/{ => 2016}/2016-11-17-day-4-apachecon-and-the-apache-way.md (100%) rename content/blog/{ => 2016}/2016-11-18-day-5-the-final-day-of-apachecon.md (100%) rename content/blog/{ => 2016}/2016-11-23-getting-ready-for-updating-my-system-to-fedora.md (100%) rename content/blog/{ => 2016}/2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md (100%) rename content/blog/{ => 2016}/2016-11-29-octoshark-hackathon.md (100%) rename content/blog/{ => 2016}/2016-12-12-sorting-out-my-todo-list-for-the-next.md (100%) rename content/blog/{ => 2016}/2016-12-13-understanding-the-undertones-of-political-thought-within-the-politically-agnostic-foss-movement.md (100%) rename content/blog/{ => 2016}/2016-12-14-at-last-i-am-now-on-fedora-25.md (100%) rename content/blog/{ => 2016}/2016-12-19-if-you-are-using-os-rename-src-dest.md (100%) rename content/blog/{ => 2017}/2017-01-07-how-to-sign-pgp-keys-using-gpg.md (100%) rename content/blog/{ => 2017}/2017-01-10-notes-on-regex.md (100%) rename content/blog/{ => 2017}/2017-01-12-checking-if-a-number-is-prime-using-regex.md (100%) rename content/blog/{ => 2017}/2017-01-12-snu-data-limit.md (100%) rename content/blog/{ => 2017}/2017-01-25-today-my-phone-was-acting-strange-as-it.md (100%) rename content/blog/{ => 2017}/2017-02-04-i-used-to-use-the-l-flag.md (100%) rename content/blog/{ => 2017}/2017-02-05-elitebnc.md (100%) rename content/blog/{ => 2017}/2017-02-07-working-with-j2me-on-linux-in-2017.md (100%) rename content/blog/{ => 2017}/2017-02-09-vorstellungsreprasentanz.md (100%) rename content/blog/{ => 2017}/2017-02-14-survey-paper-on-security-in-wireless-sensor-networks.md (100%) rename content/blog/{ => 2017}/2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md (100%) rename content/blog/{ => 2017}/2017-04-20-retrofitting-led-lamps-into-smart-lamps.md (100%) rename content/blog/{ => 2017}/2017-05-06-rendezvous-with-a-reflection-screenplay.md (100%) rename content/blog/{ => 2017}/2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md (100%) rename content/blog/{ => 2017}/2017-06-26-take-out-a-moment-and-think-are-you.md (100%) rename content/blog/{ => 2017}/2017-07-27-216.md (100%) rename content/blog/{ => 2017}/2017-09-20-torogo.md (100%) rename content/blog/{ => 2017}/2017-10-11-yumex-dnf-is-locked.md (100%) rename content/blog/{ => 2017}/2017-10-16-was-codification-of-odissi-successful-in-capturing-the-true-essence-of-the-dance-as-it-was-prevalent-or-even-as-it-was-performed​-​in-​​the-​​ancient.md (100%) rename content/blog/{ => 2017}/2017-10-28-the-male-and-female-dress-of-odissi-dance-an-comment-on-the-literature-on-the-web.md (100%) rename content/blog/{ => 2017}/2017-11-11-vocabulary-of-odissi.md (100%) rename content/blog/{ => 2017}/2017-11-30-emotive-adsense-project.md (100%) rename content/blog/{ => 2017}/2017-12-19-what-thefuck-is-wrong-with.md (100%) rename content/blog/{ => 2017}/2017-12-20-setting-up-latex-on-spacemacs.md (100%) rename content/blog/{ => 2017}/2017-12-20-switching-to-spacemacs-based-on.md (100%) rename content/blog/{ => 2017}/2017-12-21-deep-learning-through-the-lens-of-the-information-plane.md (100%) rename content/blog/{ => 2017}/2017-12-21-setting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md (100%) rename content/blog/{ => 2018}/2018-02-23-featured-on-googles-instagram-instagram.md (100%) rename content/blog/{ => 2018}/2018-03-18-extract-filenames-without-their-extensions.md (100%) rename content/blog/{ => 2018}/2018-03-20-today-i-integrated-the-wordpress.md (100%) rename content/blog/{ => 2018}/2018-05-11-genie-the-voice-enabled-coding-companion-winner-dell-intern-hackathon.md (100%) rename content/blog/{ => 2018}/2018-05-11-my-personal-opinion-about-learning.md (100%) rename content/blog/{ => 2018}/2018-05-16-reviving-an-old-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md (100%) rename content/blog/{ => 2018}/2018-06-07-emacs-starts-a-bit-slow.md (100%) rename content/blog/{ => 2018}/2018-07-30-functional-options-for-testing-without-mocks-in-golang.md (100%) rename content/blog/{ => 2018}/2018-08-01-rewriting-lyric-api-in-golang.md (100%) rename content/blog/{ => 2018}/2018-08-20-automate-fast-download-of-a-large-files-through-ftp.md (100%) rename content/blog/{ => 2018}/2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md (100%) rename content/blog/{ => 2018}/2018-10-14-convolutional-neural-network-basics.md (100%) rename content/blog/{ => 2018}/2018-11-19-streaming-audio-from-linux-to-android-using-pulseaudio-over-lan.md (100%) rename content/blog/{ => 2018}/interview_with_google.md (100%) rename content/blog/{ => 2019}/2019-01-08-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md (100%) rename content/blog/{ => 2019}/2019-02-03-bcb-presentation.md (100%) rename content/blog/{ => 2019}/2019-02-17-progress-update-1-upilink.md (100%) rename content/blog/{ => 2019}/2019-02-24-progress-update-2-upilink.md (100%) rename content/blog/{ => 2019}/2019-03-17-a-review-of-the-siempo-launcher.md (100%) rename content/blog/{ => 2019}/2019-08-04-docker-containers-to-build-archaic-projects.md (100%) rename content/blog/{ => 2019}/2019-08-04.md (100%) rename content/blog/{ => 2019}/2019-10-10-facebook-birthday.md (100%) rename content/blog/{ => 2019}/2019-10-25-paisavasool-hackinout-2019.md (100%) rename content/blog/{ => 2019}/2019-11-05-docker-gopls.md (100%) diff --git a/content/blog/2010-09-28-some-cool-js.md b/content/blog/2010/2010-09-28-some-cool-js.md similarity index 100% rename from content/blog/2010-09-28-some-cool-js.md rename to content/blog/2010/2010-09-28-some-cool-js.md diff --git a/content/blog/2010-09-28-wcg.md b/content/blog/2010/2010-09-28-wcg.md similarity index 100% rename from content/blog/2010-09-28-wcg.md rename to content/blog/2010/2010-09-28-wcg.md diff --git a/content/blog/2011-04-23-redirection.md b/content/blog/2011/2011-04-23-redirection.md similarity index 100% rename from content/blog/2011-04-23-redirection.md rename to content/blog/2011/2011-04-23-redirection.md diff --git a/content/blog/2016-01-27-making-presenations-using-markdown.md b/content/blog/2016/2016-01-27-making-presenations-using-markdown.md similarity index 100% rename from content/blog/2016-01-27-making-presenations-using-markdown.md rename to content/blog/2016/2016-01-27-making-presenations-using-markdown.md diff --git a/content/blog/2016-01-28-point-about-floating-points.md b/content/blog/2016/2016-01-28-point-about-floating-points.md similarity index 100% rename from content/blog/2016-01-28-point-about-floating-points.md rename to content/blog/2016/2016-01-28-point-about-floating-points.md diff --git a/content/blog/2016-01-29-twitter-bots-using-tweepy.md b/content/blog/2016/2016-01-29-twitter-bots-using-tweepy.md similarity index 100% rename from content/blog/2016-01-29-twitter-bots-using-tweepy.md rename to content/blog/2016/2016-01-29-twitter-bots-using-tweepy.md diff --git a/content/blog/2016-03-22-blip.md b/content/blog/2016/2016-03-22-blip.md similarity index 100% rename from content/blog/2016-03-22-blip.md rename to content/blog/2016/2016-03-22-blip.md diff --git a/content/blog/2016-04-15-foodify-app-hacknsit-2016.md b/content/blog/2016/2016-04-15-foodify-app-hacknsit-2016.md similarity index 100% rename from content/blog/2016-04-15-foodify-app-hacknsit-2016.md rename to content/blog/2016/2016-04-15-foodify-app-hacknsit-2016.md diff --git a/content/blog/2016-05-07-adding-support-for-vector-instructions-to-8051-architecture.md b/content/blog/2016/2016-05-07-adding-support-for-vector-instructions-to-8051-architecture.md similarity index 100% rename from content/blog/2016-05-07-adding-support-for-vector-instructions-to-8051-architecture.md rename to content/blog/2016/2016-05-07-adding-support-for-vector-instructions-to-8051-architecture.md diff --git a/content/blog/2016-05-10-participating-in-google-summer-of-code-2016.md b/content/blog/2016/2016-05-10-participating-in-google-summer-of-code-2016.md similarity index 100% rename from content/blog/2016-05-10-participating-in-google-summer-of-code-2016.md rename to content/blog/2016/2016-05-10-participating-in-google-summer-of-code-2016.md diff --git a/content/blog/2016-05-20-building-planet-gsoc.md b/content/blog/2016/2016-05-20-building-planet-gsoc.md similarity index 100% rename from content/blog/2016-05-20-building-planet-gsoc.md rename to content/blog/2016/2016-05-20-building-planet-gsoc.md diff --git a/content/blog/2016-05-30-installing-apache-allura-on-digital-ocean.md b/content/blog/2016/2016-05-30-installing-apache-allura-on-digital-ocean.md similarity index 100% rename from content/blog/2016-05-30-installing-apache-allura-on-digital-ocean.md rename to content/blog/2016/2016-05-30-installing-apache-allura-on-digital-ocean.md diff --git a/content/blog/2016-06-20-vim-as-your-daily-log-notebook.md b/content/blog/2016/2016-06-20-vim-as-your-daily-log-notebook.md similarity index 100% rename from content/blog/2016-06-20-vim-as-your-daily-log-notebook.md rename to content/blog/2016/2016-06-20-vim-as-your-daily-log-notebook.md diff --git a/content/blog/2016-08-04-to-draft-or-not-to-draft.md b/content/blog/2016/2016-08-04-to-draft-or-not-to-draft.md similarity index 100% rename from content/blog/2016-08-04-to-draft-or-not-to-draft.md rename to content/blog/2016/2016-08-04-to-draft-or-not-to-draft.md diff --git a/content/blog/2016-08-05-what-is-apache-allura-and-why-is-it-relevant-to-developers.md b/content/blog/2016/2016-08-05-what-is-apache-allura-and-why-is-it-relevant-to-developers.md similarity index 100% rename from content/blog/2016-08-05-what-is-apache-allura-and-why-is-it-relevant-to-developers.md rename to content/blog/2016/2016-08-05-what-is-apache-allura-and-why-is-it-relevant-to-developers.md diff --git a/content/blog/2016-08-06-topological-sort-for-problems-using-dag.md b/content/blog/2016/2016-08-06-topological-sort-for-problems-using-dag.md similarity index 100% rename from content/blog/2016-08-06-topological-sort-for-problems-using-dag.md rename to content/blog/2016/2016-08-06-topological-sort-for-problems-using-dag.md diff --git a/content/blog/2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md b/content/blog/2016/2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md similarity index 100% rename from content/blog/2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md rename to content/blog/2016/2016-08-07-share-wifi-via-ethernet-on-gnome-3-20.md diff --git a/content/blog/2016-08-09-apache-allura-gsoc-2016-summary.md b/content/blog/2016/2016-08-09-apache-allura-gsoc-2016-summary.md similarity index 100% rename from content/blog/2016-08-09-apache-allura-gsoc-2016-summary.md rename to content/blog/2016/2016-08-09-apache-allura-gsoc-2016-summary.md diff --git a/content/blog/2016-10-20-hello-wordpress.md b/content/blog/2016/2016-10-20-hello-wordpress.md similarity index 100% rename from content/blog/2016-10-20-hello-wordpress.md rename to content/blog/2016/2016-10-20-hello-wordpress.md diff --git a/content/blog/2016-10-22-labeled-tweet-generator-and-galaxy-image-classifier-featured-in-sirajologys-youtube-videos.md b/content/blog/2016/2016-10-22-labeled-tweet-generator-and-galaxy-image-classifier-featured-in-sirajologys-youtube-videos.md similarity index 100% rename from content/blog/2016-10-22-labeled-tweet-generator-and-galaxy-image-classifier-featured-in-sirajologys-youtube-videos.md rename to content/blog/2016/2016-10-22-labeled-tweet-generator-and-galaxy-image-classifier-featured-in-sirajologys-youtube-videos.md diff --git a/content/blog/2016-10-31-just-installed-a-new-theme-for-the-blog.md b/content/blog/2016/2016-10-31-just-installed-a-new-theme-for-the-blog.md similarity index 100% rename from content/blog/2016-10-31-just-installed-a-new-theme-for-the-blog.md rename to content/blog/2016/2016-10-31-just-installed-a-new-theme-for-the-blog.md diff --git a/content/blog/2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md b/content/blog/2016/2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md similarity index 100% rename from content/blog/2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md rename to content/blog/2016/2016-11-01-todays-git-tip-in-gitconfig-url-gitgithub.md diff --git a/content/blog/2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md b/content/blog/2016/2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md similarity index 100% rename from content/blog/2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md rename to content/blog/2016/2016-11-02-i-wonder-what-linus-torvalds-view-is-about.md diff --git a/content/blog/2016-11-07-a-tip-on-using-fsck-when-you-are.md b/content/blog/2016/2016-11-07-a-tip-on-using-fsck-when-you-are.md similarity index 100% rename from content/blog/2016-11-07-a-tip-on-using-fsck-when-you-are.md rename to content/blog/2016/2016-11-07-a-tip-on-using-fsck-when-you-are.md diff --git a/content/blog/2016-11-08-feeling-excited-about-attending-apachecon-big-data-and.md b/content/blog/2016/2016-11-08-feeling-excited-about-attending-apachecon-big-data-and.md similarity index 100% rename from content/blog/2016-11-08-feeling-excited-about-attending-apachecon-big-data-and.md rename to content/blog/2016/2016-11-08-feeling-excited-about-attending-apachecon-big-data-and.md diff --git a/content/blog/2016-11-09-some-journal-publications-require-you-to-put-author.md b/content/blog/2016/2016-11-09-some-journal-publications-require-you-to-put-author.md similarity index 100% rename from content/blog/2016-11-09-some-journal-publications-require-you-to-put-author.md rename to content/blog/2016/2016-11-09-some-journal-publications-require-you-to-put-author.md diff --git a/content/blog/2016-11-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md b/content/blog/2016/2016-11-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md similarity index 100% rename from content/blog/2016-11-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md rename to content/blog/2016/2016-11-12-reached-the-melia-sevilla-spain-tonight-pretty-excited.md diff --git a/content/blog/2016-11-13-toured-seville-today-thanks-to-https-www-feelthecitytours.md b/content/blog/2016/2016-11-13-toured-seville-today-thanks-to-https-www-feelthecitytours.md similarity index 100% rename from content/blog/2016-11-13-toured-seville-today-thanks-to-https-www-feelthecitytours.md rename to content/blog/2016/2016-11-13-toured-seville-today-thanks-to-https-www-feelthecitytours.md diff --git a/content/blog/2016-11-14-day-1-apachecon-big-data-seville-2016.md b/content/blog/2016/2016-11-14-day-1-apachecon-big-data-seville-2016.md similarity index 100% rename from content/blog/2016-11-14-day-1-apachecon-big-data-seville-2016.md rename to content/blog/2016/2016-11-14-day-1-apachecon-big-data-seville-2016.md diff --git a/content/blog/2016-11-15-day-2-apachecon-big-data-seville.md b/content/blog/2016/2016-11-15-day-2-apachecon-big-data-seville.md similarity index 100% rename from content/blog/2016-11-15-day-2-apachecon-big-data-seville.md rename to content/blog/2016/2016-11-15-day-2-apachecon-big-data-seville.md diff --git a/content/blog/2016-11-16-day-3-apachecon-barcamp-and-apachecon.md b/content/blog/2016/2016-11-16-day-3-apachecon-barcamp-and-apachecon.md similarity index 100% rename from content/blog/2016-11-16-day-3-apachecon-barcamp-and-apachecon.md rename to content/blog/2016/2016-11-16-day-3-apachecon-barcamp-and-apachecon.md diff --git a/content/blog/2016-11-17-day-4-apachecon-and-the-apache-way.md b/content/blog/2016/2016-11-17-day-4-apachecon-and-the-apache-way.md similarity index 100% rename from content/blog/2016-11-17-day-4-apachecon-and-the-apache-way.md rename to content/blog/2016/2016-11-17-day-4-apachecon-and-the-apache-way.md diff --git a/content/blog/2016-11-18-day-5-the-final-day-of-apachecon.md b/content/blog/2016/2016-11-18-day-5-the-final-day-of-apachecon.md similarity index 100% rename from content/blog/2016-11-18-day-5-the-final-day-of-apachecon.md rename to content/blog/2016/2016-11-18-day-5-the-final-day-of-apachecon.md diff --git a/content/blog/2016-11-23-getting-ready-for-updating-my-system-to-fedora.md b/content/blog/2016/2016-11-23-getting-ready-for-updating-my-system-to-fedora.md similarity index 100% rename from content/blog/2016-11-23-getting-ready-for-updating-my-system-to-fedora.md rename to content/blog/2016/2016-11-23-getting-ready-for-updating-my-system-to-fedora.md diff --git a/content/blog/2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md b/content/blog/2016/2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md similarity index 100% rename from content/blog/2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md rename to content/blog/2016/2016-11-25-i-recently-corrupted-my-zsh-history-and-was.md diff --git a/content/blog/2016-11-29-octoshark-hackathon.md b/content/blog/2016/2016-11-29-octoshark-hackathon.md similarity index 100% rename from content/blog/2016-11-29-octoshark-hackathon.md rename to content/blog/2016/2016-11-29-octoshark-hackathon.md diff --git a/content/blog/2016-12-12-sorting-out-my-todo-list-for-the-next.md b/content/blog/2016/2016-12-12-sorting-out-my-todo-list-for-the-next.md similarity index 100% rename from content/blog/2016-12-12-sorting-out-my-todo-list-for-the-next.md rename to content/blog/2016/2016-12-12-sorting-out-my-todo-list-for-the-next.md diff --git a/content/blog/2016-12-13-understanding-the-undertones-of-political-thought-within-the-politically-agnostic-foss-movement.md b/content/blog/2016/2016-12-13-understanding-the-undertones-of-political-thought-within-the-politically-agnostic-foss-movement.md similarity index 100% rename from content/blog/2016-12-13-understanding-the-undertones-of-political-thought-within-the-politically-agnostic-foss-movement.md rename to content/blog/2016/2016-12-13-understanding-the-undertones-of-political-thought-within-the-politically-agnostic-foss-movement.md diff --git a/content/blog/2016-12-14-at-last-i-am-now-on-fedora-25.md b/content/blog/2016/2016-12-14-at-last-i-am-now-on-fedora-25.md similarity index 100% rename from content/blog/2016-12-14-at-last-i-am-now-on-fedora-25.md rename to content/blog/2016/2016-12-14-at-last-i-am-now-on-fedora-25.md diff --git a/content/blog/2016-12-19-if-you-are-using-os-rename-src-dest.md b/content/blog/2016/2016-12-19-if-you-are-using-os-rename-src-dest.md similarity index 100% rename from content/blog/2016-12-19-if-you-are-using-os-rename-src-dest.md rename to content/blog/2016/2016-12-19-if-you-are-using-os-rename-src-dest.md diff --git a/content/blog/2017-01-07-how-to-sign-pgp-keys-using-gpg.md b/content/blog/2017/2017-01-07-how-to-sign-pgp-keys-using-gpg.md similarity index 100% rename from content/blog/2017-01-07-how-to-sign-pgp-keys-using-gpg.md rename to content/blog/2017/2017-01-07-how-to-sign-pgp-keys-using-gpg.md diff --git a/content/blog/2017-01-10-notes-on-regex.md b/content/blog/2017/2017-01-10-notes-on-regex.md similarity index 100% rename from content/blog/2017-01-10-notes-on-regex.md rename to content/blog/2017/2017-01-10-notes-on-regex.md diff --git a/content/blog/2017-01-12-checking-if-a-number-is-prime-using-regex.md b/content/blog/2017/2017-01-12-checking-if-a-number-is-prime-using-regex.md similarity index 100% rename from content/blog/2017-01-12-checking-if-a-number-is-prime-using-regex.md rename to content/blog/2017/2017-01-12-checking-if-a-number-is-prime-using-regex.md diff --git a/content/blog/2017-01-12-snu-data-limit.md b/content/blog/2017/2017-01-12-snu-data-limit.md similarity index 100% rename from content/blog/2017-01-12-snu-data-limit.md rename to content/blog/2017/2017-01-12-snu-data-limit.md diff --git a/content/blog/2017-01-25-today-my-phone-was-acting-strange-as-it.md b/content/blog/2017/2017-01-25-today-my-phone-was-acting-strange-as-it.md similarity index 100% rename from content/blog/2017-01-25-today-my-phone-was-acting-strange-as-it.md rename to content/blog/2017/2017-01-25-today-my-phone-was-acting-strange-as-it.md diff --git a/content/blog/2017-02-04-i-used-to-use-the-l-flag.md b/content/blog/2017/2017-02-04-i-used-to-use-the-l-flag.md similarity index 100% rename from content/blog/2017-02-04-i-used-to-use-the-l-flag.md rename to content/blog/2017/2017-02-04-i-used-to-use-the-l-flag.md diff --git a/content/blog/2017-02-05-elitebnc.md b/content/blog/2017/2017-02-05-elitebnc.md similarity index 100% rename from content/blog/2017-02-05-elitebnc.md rename to content/blog/2017/2017-02-05-elitebnc.md diff --git a/content/blog/2017-02-07-working-with-j2me-on-linux-in-2017.md b/content/blog/2017/2017-02-07-working-with-j2me-on-linux-in-2017.md similarity index 100% rename from content/blog/2017-02-07-working-with-j2me-on-linux-in-2017.md rename to content/blog/2017/2017-02-07-working-with-j2me-on-linux-in-2017.md diff --git a/content/blog/2017-02-09-vorstellungsreprasentanz.md b/content/blog/2017/2017-02-09-vorstellungsreprasentanz.md similarity index 100% rename from content/blog/2017-02-09-vorstellungsreprasentanz.md rename to content/blog/2017/2017-02-09-vorstellungsreprasentanz.md diff --git a/content/blog/2017-02-14-survey-paper-on-security-in-wireless-sensor-networks.md b/content/blog/2017/2017-02-14-survey-paper-on-security-in-wireless-sensor-networks.md similarity index 100% rename from content/blog/2017-02-14-survey-paper-on-security-in-wireless-sensor-networks.md rename to content/blog/2017/2017-02-14-survey-paper-on-security-in-wireless-sensor-networks.md diff --git a/content/blog/2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md b/content/blog/2017/2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md similarity index 100% rename from content/blog/2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md rename to content/blog/2017/2017-03-12-just-discovered-xfce4-has-an-inbuilt-drop-down.md diff --git a/content/blog/2017-04-20-retrofitting-led-lamps-into-smart-lamps.md b/content/blog/2017/2017-04-20-retrofitting-led-lamps-into-smart-lamps.md similarity index 100% rename from content/blog/2017-04-20-retrofitting-led-lamps-into-smart-lamps.md rename to content/blog/2017/2017-04-20-retrofitting-led-lamps-into-smart-lamps.md diff --git a/content/blog/2017-05-06-rendezvous-with-a-reflection-screenplay.md b/content/blog/2017/2017-05-06-rendezvous-with-a-reflection-screenplay.md similarity index 100% rename from content/blog/2017-05-06-rendezvous-with-a-reflection-screenplay.md rename to content/blog/2017/2017-05-06-rendezvous-with-a-reflection-screenplay.md diff --git a/content/blog/2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md b/content/blog/2017/2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md similarity index 100% rename from content/blog/2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md rename to content/blog/2017/2017-05-20-xfce4-keyboard-shortcuts-for-clementine.md diff --git a/content/blog/2017-06-26-take-out-a-moment-and-think-are-you.md b/content/blog/2017/2017-06-26-take-out-a-moment-and-think-are-you.md similarity index 100% rename from content/blog/2017-06-26-take-out-a-moment-and-think-are-you.md rename to content/blog/2017/2017-06-26-take-out-a-moment-and-think-are-you.md diff --git a/content/blog/2017-07-27-216.md b/content/blog/2017/2017-07-27-216.md similarity index 100% rename from content/blog/2017-07-27-216.md rename to content/blog/2017/2017-07-27-216.md diff --git a/content/blog/2017-09-20-torogo.md b/content/blog/2017/2017-09-20-torogo.md similarity index 100% rename from content/blog/2017-09-20-torogo.md rename to content/blog/2017/2017-09-20-torogo.md diff --git a/content/blog/2017-10-11-yumex-dnf-is-locked.md b/content/blog/2017/2017-10-11-yumex-dnf-is-locked.md similarity index 100% rename from content/blog/2017-10-11-yumex-dnf-is-locked.md rename to content/blog/2017/2017-10-11-yumex-dnf-is-locked.md diff --git a/content/blog/2017-10-16-was-codification-of-odissi-successful-in-capturing-the-true-essence-of-the-dance-as-it-was-prevalent-or-even-as-it-was-performed​-​in-​​the-​​ancient.md b/content/blog/2017/2017-10-16-was-codification-of-odissi-successful-in-capturing-the-true-essence-of-the-dance-as-it-was-prevalent-or-even-as-it-was-performed​-​in-​​the-​​ancient.md similarity index 100% rename from content/blog/2017-10-16-was-codification-of-odissi-successful-in-capturing-the-true-essence-of-the-dance-as-it-was-prevalent-or-even-as-it-was-performed​-​in-​​the-​​ancient.md rename to content/blog/2017/2017-10-16-was-codification-of-odissi-successful-in-capturing-the-true-essence-of-the-dance-as-it-was-prevalent-or-even-as-it-was-performed​-​in-​​the-​​ancient.md diff --git a/content/blog/2017-10-28-the-male-and-female-dress-of-odissi-dance-an-comment-on-the-literature-on-the-web.md b/content/blog/2017/2017-10-28-the-male-and-female-dress-of-odissi-dance-an-comment-on-the-literature-on-the-web.md similarity index 100% rename from content/blog/2017-10-28-the-male-and-female-dress-of-odissi-dance-an-comment-on-the-literature-on-the-web.md rename to content/blog/2017/2017-10-28-the-male-and-female-dress-of-odissi-dance-an-comment-on-the-literature-on-the-web.md diff --git a/content/blog/2017-11-11-vocabulary-of-odissi.md b/content/blog/2017/2017-11-11-vocabulary-of-odissi.md similarity index 100% rename from content/blog/2017-11-11-vocabulary-of-odissi.md rename to content/blog/2017/2017-11-11-vocabulary-of-odissi.md diff --git a/content/blog/2017-11-30-emotive-adsense-project.md b/content/blog/2017/2017-11-30-emotive-adsense-project.md similarity index 100% rename from content/blog/2017-11-30-emotive-adsense-project.md rename to content/blog/2017/2017-11-30-emotive-adsense-project.md diff --git a/content/blog/2017-12-19-what-thefuck-is-wrong-with.md b/content/blog/2017/2017-12-19-what-thefuck-is-wrong-with.md similarity index 100% rename from content/blog/2017-12-19-what-thefuck-is-wrong-with.md rename to content/blog/2017/2017-12-19-what-thefuck-is-wrong-with.md diff --git a/content/blog/2017-12-20-setting-up-latex-on-spacemacs.md b/content/blog/2017/2017-12-20-setting-up-latex-on-spacemacs.md similarity index 100% rename from content/blog/2017-12-20-setting-up-latex-on-spacemacs.md rename to content/blog/2017/2017-12-20-setting-up-latex-on-spacemacs.md diff --git a/content/blog/2017-12-20-switching-to-spacemacs-based-on.md b/content/blog/2017/2017-12-20-switching-to-spacemacs-based-on.md similarity index 100% rename from content/blog/2017-12-20-switching-to-spacemacs-based-on.md rename to content/blog/2017/2017-12-20-switching-to-spacemacs-based-on.md diff --git a/content/blog/2017-12-21-deep-learning-through-the-lens-of-the-information-plane.md b/content/blog/2017/2017-12-21-deep-learning-through-the-lens-of-the-information-plane.md similarity index 100% rename from content/blog/2017-12-21-deep-learning-through-the-lens-of-the-information-plane.md rename to content/blog/2017/2017-12-21-deep-learning-through-the-lens-of-the-information-plane.md diff --git a/content/blog/2017-12-21-setting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md b/content/blog/2017/2017-12-21-setting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md similarity index 100% rename from content/blog/2017-12-21-setting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md rename to content/blog/2017/2017-12-21-setting-up-python-on-spacemacs-and-using-pyenv-to-use-python3.md diff --git a/content/blog/2018-02-23-featured-on-googles-instagram-instagram.md b/content/blog/2018/2018-02-23-featured-on-googles-instagram-instagram.md similarity index 100% rename from content/blog/2018-02-23-featured-on-googles-instagram-instagram.md rename to content/blog/2018/2018-02-23-featured-on-googles-instagram-instagram.md diff --git a/content/blog/2018-03-18-extract-filenames-without-their-extensions.md b/content/blog/2018/2018-03-18-extract-filenames-without-their-extensions.md similarity index 100% rename from content/blog/2018-03-18-extract-filenames-without-their-extensions.md rename to content/blog/2018/2018-03-18-extract-filenames-without-their-extensions.md diff --git a/content/blog/2018-03-20-today-i-integrated-the-wordpress.md b/content/blog/2018/2018-03-20-today-i-integrated-the-wordpress.md similarity index 100% rename from content/blog/2018-03-20-today-i-integrated-the-wordpress.md rename to content/blog/2018/2018-03-20-today-i-integrated-the-wordpress.md diff --git a/content/blog/2018-05-11-genie-the-voice-enabled-coding-companion-winner-dell-intern-hackathon.md b/content/blog/2018/2018-05-11-genie-the-voice-enabled-coding-companion-winner-dell-intern-hackathon.md similarity index 100% rename from content/blog/2018-05-11-genie-the-voice-enabled-coding-companion-winner-dell-intern-hackathon.md rename to content/blog/2018/2018-05-11-genie-the-voice-enabled-coding-companion-winner-dell-intern-hackathon.md diff --git a/content/blog/2018-05-11-my-personal-opinion-about-learning.md b/content/blog/2018/2018-05-11-my-personal-opinion-about-learning.md similarity index 100% rename from content/blog/2018-05-11-my-personal-opinion-about-learning.md rename to content/blog/2018/2018-05-11-my-personal-opinion-about-learning.md diff --git a/content/blog/2018-05-16-reviving-an-old-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md b/content/blog/2018/2018-05-16-reviving-an-old-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md similarity index 100% rename from content/blog/2018-05-16-reviving-an-old-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md rename to content/blog/2018/2018-05-16-reviving-an-old-samsung-n150-netbook-and-making-it-a-solid-dev-environment.md diff --git a/content/blog/2018-06-07-emacs-starts-a-bit-slow.md b/content/blog/2018/2018-06-07-emacs-starts-a-bit-slow.md similarity index 100% rename from content/blog/2018-06-07-emacs-starts-a-bit-slow.md rename to content/blog/2018/2018-06-07-emacs-starts-a-bit-slow.md diff --git a/content/blog/2018-07-30-functional-options-for-testing-without-mocks-in-golang.md b/content/blog/2018/2018-07-30-functional-options-for-testing-without-mocks-in-golang.md similarity index 100% rename from content/blog/2018-07-30-functional-options-for-testing-without-mocks-in-golang.md rename to content/blog/2018/2018-07-30-functional-options-for-testing-without-mocks-in-golang.md diff --git a/content/blog/2018-08-01-rewriting-lyric-api-in-golang.md b/content/blog/2018/2018-08-01-rewriting-lyric-api-in-golang.md similarity index 100% rename from content/blog/2018-08-01-rewriting-lyric-api-in-golang.md rename to content/blog/2018/2018-08-01-rewriting-lyric-api-in-golang.md diff --git a/content/blog/2018-08-20-automate-fast-download-of-a-large-files-through-ftp.md b/content/blog/2018/2018-08-20-automate-fast-download-of-a-large-files-through-ftp.md similarity index 100% rename from content/blog/2018-08-20-automate-fast-download-of-a-large-files-through-ftp.md rename to content/blog/2018/2018-08-20-automate-fast-download-of-a-large-files-through-ftp.md diff --git a/content/blog/2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md b/content/blog/2018/2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md similarity index 100% rename from content/blog/2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md rename to content/blog/2018/2018-09-25-whistle-project-winner-ethindia-2018-hackathon.md diff --git a/content/blog/2018-10-14-convolutional-neural-network-basics.md b/content/blog/2018/2018-10-14-convolutional-neural-network-basics.md similarity index 100% rename from content/blog/2018-10-14-convolutional-neural-network-basics.md rename to content/blog/2018/2018-10-14-convolutional-neural-network-basics.md diff --git a/content/blog/2018-11-19-streaming-audio-from-linux-to-android-using-pulseaudio-over-lan.md b/content/blog/2018/2018-11-19-streaming-audio-from-linux-to-android-using-pulseaudio-over-lan.md similarity index 100% rename from content/blog/2018-11-19-streaming-audio-from-linux-to-android-using-pulseaudio-over-lan.md rename to content/blog/2018/2018-11-19-streaming-audio-from-linux-to-android-using-pulseaudio-over-lan.md diff --git a/content/blog/interview_with_google.md b/content/blog/2018/interview_with_google.md similarity index 100% rename from content/blog/interview_with_google.md rename to content/blog/2018/interview_with_google.md diff --git a/content/blog/2019-01-08-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md b/content/blog/2019/2019-01-08-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md similarity index 100% rename from content/blog/2019-01-08-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md rename to content/blog/2019/2019-01-08-setting-so_reuseport-and-similar-socket-options-in-go-1-11.md diff --git a/content/blog/2019-02-03-bcb-presentation.md b/content/blog/2019/2019-02-03-bcb-presentation.md similarity index 100% rename from content/blog/2019-02-03-bcb-presentation.md rename to content/blog/2019/2019-02-03-bcb-presentation.md diff --git a/content/blog/2019-02-17-progress-update-1-upilink.md b/content/blog/2019/2019-02-17-progress-update-1-upilink.md similarity index 100% rename from content/blog/2019-02-17-progress-update-1-upilink.md rename to content/blog/2019/2019-02-17-progress-update-1-upilink.md diff --git a/content/blog/2019-02-24-progress-update-2-upilink.md b/content/blog/2019/2019-02-24-progress-update-2-upilink.md similarity index 100% rename from content/blog/2019-02-24-progress-update-2-upilink.md rename to content/blog/2019/2019-02-24-progress-update-2-upilink.md diff --git a/content/blog/2019-03-17-a-review-of-the-siempo-launcher.md b/content/blog/2019/2019-03-17-a-review-of-the-siempo-launcher.md similarity index 100% rename from content/blog/2019-03-17-a-review-of-the-siempo-launcher.md rename to content/blog/2019/2019-03-17-a-review-of-the-siempo-launcher.md diff --git a/content/blog/2019-08-04-docker-containers-to-build-archaic-projects.md b/content/blog/2019/2019-08-04-docker-containers-to-build-archaic-projects.md similarity index 100% rename from content/blog/2019-08-04-docker-containers-to-build-archaic-projects.md rename to content/blog/2019/2019-08-04-docker-containers-to-build-archaic-projects.md diff --git a/content/blog/2019-08-04.md b/content/blog/2019/2019-08-04.md similarity index 100% rename from content/blog/2019-08-04.md rename to content/blog/2019/2019-08-04.md diff --git a/content/blog/2019-10-10-facebook-birthday.md b/content/blog/2019/2019-10-10-facebook-birthday.md similarity index 100% rename from content/blog/2019-10-10-facebook-birthday.md rename to content/blog/2019/2019-10-10-facebook-birthday.md diff --git a/content/blog/2019-10-25-paisavasool-hackinout-2019.md b/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md similarity index 100% rename from content/blog/2019-10-25-paisavasool-hackinout-2019.md rename to content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md diff --git a/content/blog/2019-11-05-docker-gopls.md b/content/blog/2019/2019-11-05-docker-gopls.md similarity index 100% rename from content/blog/2019-11-05-docker-gopls.md rename to content/blog/2019/2019-11-05-docker-gopls.md From b2a0b18cb4e00d9fd088d06bbea0babb787ef057 Mon Sep 17 00:00:00 2001 From: Rohan Verma Date: Fri, 15 Nov 2019 12:51:37 +0530 Subject: [PATCH 2/7] fix: update dockerfile for gopls blog --- content/blog/2019/2019-11-05-docker-gopls.md | 85 ++++++++++++++------ 1 file changed, 59 insertions(+), 26 deletions(-) diff --git a/content/blog/2019/2019-11-05-docker-gopls.md b/content/blog/2019/2019-11-05-docker-gopls.md index c1a6754..ad9a688 100644 --- a/content/blog/2019/2019-11-05-docker-gopls.md +++ b/content/blog/2019/2019-11-05-docker-gopls.md @@ -36,33 +36,37 @@ Let us look at the Dockerfile for this system. ```Dockerfile FROM ubuntu:xenial AS builder -RUN apt-get update -# Install system dependencies that we might need -RUN apt-get install -y gcc g++ +RUN apt-get update && \ + apt-get install -y gcc g++ libssl-dev cmake wget libpcre3 libpcre3-dev git -# Install Depencies like Go and Swig in our container. WORKDIR /tmp -# Install Go -RUN wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz -RUN tar -C /usr/local -xzf go1.12.9.linux-amd64.tar.gz -# Install Swig -RUN wget http://prdownloads.sourceforge.net/swig/swig-4.0.1.tar.gz -RUN tar -zxvf swig-4.0.1.tar.gz -RUN cd /tmp/swig-4.0.1 && ./configure && make && make install - -# Create user -RUN useradd -m -r -u 1000 myuser -RUN groupmod -g 1000 myuser - -# Replicate/fake the host system tree -RUN mkdir -p /home/myuser/code/go/myhostdir/myproject -RUN chown -R myuser:myuser /home/myuser/code/go/myhostdir/myproject + +# Install Go. +RUN wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz && \ + tar -C /usr/local -xzf go1.12.9.linux-amd64.tar.gz + +# Install Swig. +RUN wget http://prdownloads.sourceforge.net/swig/swig-4.0.1.tar.gz && \ + tar -zxvf swig-4.0.1.tar.gz && \ + cd /tmp/swig-4.0.1 && ./configure && make && make install + +ARG MY_USER_ID +ENV MY_USER_ID ${MY_USER_ID} + +ARG MY_PWD +ENV MY_PWD ${MY_PWD} + +RUN mkdir -p $MY_PWD + +RUN useradd -r -m -u $MY_USER_ID myuser +RUN groupmod -g $MY_USER_ID myuser USER myuser -WORKDIR /home/myuser/code/go/myhostdir/myproject +ENV PATH="/usr/local/go/bin:${MY_PWD}/go/bin:${PATH}" +RUN GOPROXY=https://proxy.golang.org GO111MODULE=on go get golang.org/x/tools/gopls@v0.2.0 +WORKDIR $MY_PWD -RUN GO111MODULE=on go get golang.org/x/tools/gopls@latest -CMD gopls -listen=":7050" +CMD /home/myuser/go/bin/gopls -listen=":7050" ``` Firstly, we install all the dependencies and then create @@ -77,13 +81,28 @@ inside the container. Finally, we install gopls in the container and then start it in the container with the `-listen=":7050"` flag. +We will now build the image. + +```bash +mkdir -p go + +docker build \ +--build-arg MY_PWD=${PWD} \ +--build-arg=MY_USER_ID=${MY_USER_ID} \ +-t myapp:latest . +``` + +Note, we also create a directory called `go` which will be the mock GOPATH +inside the container. Now we can expose this port to our host machine. ```bash -docker run -d --name "myproject" -u `id -u` -p 7050:7050 \ - -v /home/myuser/code/go/myhostdir/myproject:/home/myuser/code/go/myhostdir/ \ - myproject myproject:latest +docker run -d --name "myapp" \ +-u `id -u ${USER}` \ +-e "GOPATH=${PWD}/go" \ +-p 7050:7050 \ +-v ${PWD}:${PWD} myapp:latest ``` Notice, that we also mount the host source in the container with the same path, @@ -96,8 +115,22 @@ flags we use for the language server to connect to the remote gopls server. gopls -remote "localhost:7050" ``` +For VSCode, you can add the following to your `settings.json` + +```json +{ + "go.languageServerFlags": [ + "-remote=localhost:7050", + "-v" + ], + "go.useLanguageServer": true, + "go.gopath": "go" +} +``` + After adding this flag, you will now be able to edit your source with all the -added benefits that come with a language server. +added benefits that come with a language server like autocompletion and +autoformatting. Since this is an experimental feature, it might break (a lot). Do let me know in the comments if this was helpful for you. \ No newline at end of file From c93c11a32c963bad6a31eaaeb20225a6a1c0e0a9 Mon Sep 17 00:00:00 2001 From: Rohan Verma Date: Fri, 15 Nov 2019 15:54:31 +0530 Subject: [PATCH 3/7] feat: refactor, add tags, homepage --- config.toml | 7 ++- content/about.md | 35 ++++++++++++ .../blog/2019/2019-10-10-facebook-birthday.md | 1 + .../2019-10-25-paisavasool-hackinout-2019.md | 1 + content/blog/2019/2019-11-05-docker-gopls.md | 3 +- .../2019/2019-11-15-selfhosted-netlify.md | 15 +++++ layouts/index.html | 55 ++----------------- 7 files changed, 66 insertions(+), 51 deletions(-) create mode 100644 content/about.md create mode 100644 content/blog/2019/2019-11-15-selfhosted-netlify.md diff --git a/config.toml b/config.toml index 7acb611..6c074da 100644 --- a/config.toml +++ b/config.toml @@ -44,8 +44,13 @@ footnoteReturnLinkContents = "↩" # Provides a nicer footnote return link name = "Blog" identifier = "blog" url = "/blog" - weight = 0 + weight = 2 +[[menu.main]] + name = "About" + identifier = "about" + url = "/about" + weight = 3 [[menu.utility]] name = "@rhnvrm" diff --git a/content/about.md b/content/about.md new file mode 100644 index 0000000..69152c0 --- /dev/null +++ b/content/about.md @@ -0,0 +1,35 @@ +## About + +### Work +I’m currently working as a Software Developer at +Zerodha Tech +where I am writing Golang, Python and a bit of Javascript to +build fintech products used at scale everyday. + +Before Zerodha, I interned with Dell Technologies as a +Software Engineering Intern and graduated in the Summer of 2018 from +Shiv Nadar University, Dadri, India. + +At Dell, I was part of a team that was building a +new end-to-end microservice based product using Golang (and Python) to solve an +invoice-to-order matching problem which had an effect of increasing +the cash flows for Dell and customer facing invoice accuracy +via last mile automation. + +I have +also worked remotely during my participation in Google Summer +of Code in 2016 and contributed to the Open Source Apache +Allura Project that powers SourceForge.com. + +Out of interest and curiosity, I have (little) experience with +Machine Learning and AI through my pursuit of a Machine Learning +Nanodegree which I earned through a MOOC curated by Udacity +which I undertook in the summer of 2017. + +### Personal +I am from New Delhi, India and am currently +based in Bengaluru, India. I write code for a living, +and often write code as a hobby, or to automate the +little things. You might find me lurking on online +message boards, online games and IRC as rhnvrm (an alias I took +long ago). \ No newline at end of file diff --git a/content/blog/2019/2019-10-10-facebook-birthday.md b/content/blog/2019/2019-10-10-facebook-birthday.md index 5454c9a..b20fe9c 100644 --- a/content/blog/2019/2019-10-10-facebook-birthday.md +++ b/content/blog/2019/2019-10-10-facebook-birthday.md @@ -3,6 +3,7 @@ title = "Facebook Birthday List to ICS file" date = 2019-10-11T01:03:03+05:30 draft = false categories = ["notes"] +tags = ["digital wellbeing", "python"] type = "post" url = "blog/2019/10/10/facebook-birthday" author = "Rohan Verma" diff --git a/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md b/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md index ecfc21f..7b14cf8 100644 --- a/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md +++ b/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md @@ -3,6 +3,7 @@ title = "PaisaVasool - HackInOut 2019" date = 2019-10-25T15:30:03+05:30 draft = false categories = ["projects"] +tags = ["fintech", "hackathon"] type = "post" url = "blog/2019/10/25/paisavasool-hackinout-2019" author = "Rohan Verma" diff --git a/content/blog/2019/2019-11-05-docker-gopls.md b/content/blog/2019/2019-11-05-docker-gopls.md index ad9a688..7e00f38 100644 --- a/content/blog/2019/2019-11-05-docker-gopls.md +++ b/content/blog/2019/2019-11-05-docker-gopls.md @@ -2,7 +2,8 @@ title = "Containerized development workflow using remote gopls server" date = 2019-11-05T15:30:03+05:30 draft = false -categories = ["golang"] +tags = ["golang", "docker"] +categories = ["golang", "notes"] type = "post" url = "blog/2019/11/05/containerized-dev-using-remote-gopls" author = "Rohan Verma" diff --git a/content/blog/2019/2019-11-15-selfhosted-netlify.md b/content/blog/2019/2019-11-15-selfhosted-netlify.md new file mode 100644 index 0000000..8ae80a5 --- /dev/null +++ b/content/blog/2019/2019-11-15-selfhosted-netlify.md @@ -0,0 +1,15 @@ ++++ +title = "Self hosted Netlify using docker-compose, gitea, and drone-ci" +date = 2019-11-15T15:30:03+05:30 +draft = false +tags = ["golang", "docker", "self hosted"] +categories = ["tutorials"] +type = "post" +url = "blog/2019/11/15/selfhosted-netlify" +author = "Rohan Verma" ++++ + +I had been using netlify to deploy a few of my static sites. The process for +deployment is seamless and all you need to do is push to master. Pushing to +the develop branch or creating a pull request on github creates a mirror +with a unique URL which \ No newline at end of file diff --git a/layouts/index.html b/layouts/index.html index 19b9322..3884d5c 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -17,49 +17,6 @@ -
-

About

- -

Work

- I’m currently working as a Software Developer at - Zerodha Tech - where I am writing Golang, Python and a bit of Javascript to - build fintech products used at scale everyday. - -

- - Before Zerodha, I interned with Dell Technologies as a - Software Engineering Intern and graduated in the Summer of 2018 from - Shiv Nadar University, Dadri, India. -

- - At Dell, I was part of a team that was building a - new end-to-end microservice based product using Golang (and Python) to solve an - invoice-to-order matching problem which had an effect of increasing - the cash flows for Dell and customer facing invoice accuracy - via last mile automation. - -

- I have - also worked remotely during my participation in Google Summer - of Code in 2016 and contributed to the Open Source Apache - Allura Project that powers SourceForge.com. - -

- Out of interest and curiosity, I have (little) experience with - Machine Learning and AI through my pursuit of a Machine Learning - Nanodegree which I earned through a MOOC curated by Udacity - which I undertook in the summer of 2017. -

- -

Personal

- I am from New Delhi, India and am currently - based in Bengaluru, India. I write code for a living, - and often write code as a hobby, or to automate the - little things. You might find me lurking on online - message boards, online games and IRC as rhnvrm (an alias I took - long ago). -

Social

@@ -106,6 +63,10 @@

Blog

+ My blog is also available via [RSS] + +

+ You can read my blog where I try to write about what I am doing and things I find interesting. I have organized my blog using categories @@ -127,22 +88,18 @@

- categories:
+ categories:
{{range ($.Site.GetPage "taxonomyTerm" "categories").Pages }} {{lower .Title}} {{end}}

- tags:
+ tags:
{{range ($.Site.GetPage "taxonomyTerm" "tags").Pages }} {{lower .Title}} {{end}}

- - My blog is also available via [RSS] - -

From 69e62d8797e46b2e2175a82745a57489270cbb9e Mon Sep 17 00:00:00 2001 From: Rohan Verma Date: Sat, 16 Nov 2019 11:51:33 +0530 Subject: [PATCH 4/7] feat: indie webring --- .../2019/2019-11-15-selfhosted-netlify.md | 220 +++++++++++++++++- layouts/partials/footer/hcard.html | 6 +- 2 files changed, 223 insertions(+), 3 deletions(-) diff --git a/content/blog/2019/2019-11-15-selfhosted-netlify.md b/content/blog/2019/2019-11-15-selfhosted-netlify.md index 8ae80a5..6cb36eb 100644 --- a/content/blog/2019/2019-11-15-selfhosted-netlify.md +++ b/content/blog/2019/2019-11-15-selfhosted-netlify.md @@ -1,7 +1,7 @@ +++ title = "Self hosted Netlify using docker-compose, gitea, and drone-ci" date = 2019-11-15T15:30:03+05:30 -draft = false +draft = true tags = ["golang", "docker", "self hosted"] categories = ["tutorials"] type = "post" @@ -12,4 +12,220 @@ author = "Rohan Verma" I had been using netlify to deploy a few of my static sites. The process for deployment is seamless and all you need to do is push to master. Pushing to the develop branch or creating a pull request on github creates a mirror -with a unique URL which \ No newline at end of file +with a unique URL which can be used to preview the site. + +It worked well, but I often feel that I will eventually be tied down or stuck +to the service. One day the pricing will change or the service will +disappear. Also, for my small static sites, the features it offers are too much. + +I also wanted to setup CI/CD for my other projects, and setting up my own CI/CD +pipeline and migrating static sites would be a good easy step to start. + +This article is derived from [Self-hosting with Docker](https://blog.ssdnodes.com/blog/self-hosting-handbook/) by [Joel Hans](https://blog.ssdnodes.com/blog/author/joel/). I might skip a few details, which are covered there. + +```yaml +version: '2' + +services: + + proxy: + image: jwilder/nginx-proxy + container_name: proxy + restart: unless-stopped + labels: + com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true" + volumes: + - /var/run/docker.sock:/tmp/docker.sock:ro + - certs:/etc/nginx/certs:rw + - vhost.d:/etc/nginx/vhost.d + - html:/usr/share/nginx/html + - ./uploadsize.conf:/etc/nginx/conf.d/uploadsize.conf:ro + ports: + - "80:80" + - "443:443" + networks: + - "default" + - "proxy-tier" + + proxy-letsencrypt: + image: jrcs/letsencrypt-nginx-proxy-companion + container_name: letsencrypt + restart: unless-stopped + environment: + - NGINX_PROXY_CONTAINER=proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + volumes_from: + - "proxy" + depends_on: + - "proxy" + networks: + - "default" + - "proxy-tier" + + portainer: + image: portainer/portainer + container_name: portainer + restart: always + environment: + - VIRTUAL_HOST=docker.rohanverma.net + - LETSENCRYPT_HOST=docker.rohanverma.net + - LETSENCRYPT_EMAIL=hello@rohanverma.net + volumes: + - ./portainer/:/data + - /var/run/docker.sock:/var/run/docker.sock + privileged: true + ports: + - "9000:9000" + + gitea: + image: gitea/gitea:latest + container_name: gitea + restart: unless-stopped + environment: + - VIRTUAL_HOST=gitea.rohanverma.net + - LETSENCRYPT_HOST=gitea.rohanverma.net + - LETSENCRYPT_EMAIL=hello@rohanverma.net + - VIRTUAL_PORT=3000 + - ROOT_URL=https://gitea.rohanverma.net + - DOMAIN=gitea.rohanverma.net + - PROTOCOL=http + - USER_UID=1000 + - USER_GID=1000 + volumes: + - ./gitea:/data + ports: + - "5000:3000" + - "222:22" + networks: + - proxy-tier + - default + + drone: + container_name: drone + image: drone/drone:latest + restart: always + environment: + - DRONE_GITEA_SERVER=https://gitea.rohanverma.net + - DRONE_GIT_ALWAYS_AUTH=false + - DRONE_RUNNER_CAPACITY=3 + - DRONE_SERVER_HOST=drone.rohanverma.net + - DRONE_SERVER_PROTO=https + - DRONE_TLS_AUTOCERT=false + - DRONE_RPC_SECRET=xxxxxxxx + - DRONE_GITEA_CLIENT_ID=xxxxxxxxxxxxxxxxx + - DRONE_GITEA_CLIENT_SECRET=xxxxxxxxxxxxxxxxxx + - VIRTUAL_HOST=drone.rohanverma.net + - VIRTUAL_PORT=80 + - DRONE_USER_CREATE=username:rhnvrm,admin:true + - DRONE_DEBUG=true + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ./drone:/data + privileged: true + ports: + - "5151:80" + networks: + - default + + drone-agent: + container_name: drone-agent + image: drone/agent:latest + command: agent + restart: always + depends_on: + - drone + privileged: true + volumes: + - /var/run/docker.sock:/var/run/docker.sock + environment: + - DRONE_RPC_SERVER=https://drone.rohanverma.net + - DRONE_RPC_SECRET=xxxxxxxx + - DRONE_RUNNER_CAPACITY=3 + - DRONE_RUNNER_NAME="local" + networks: + - default + + rohanvermanet: + container_name: rohanvermanet + build: + dockerfile: Dockerfile + context: ../apps/rohanverma.net + ports: + - "8080:80" + environment: + - VIRTUAL_HOST=rohanverma.net + - LETSENCRYPT_HOST=rohanverma.net + - LETS_ENCRYPT_EMAIL=hello@rohanverma.net + + nextrohanvermanet: + container_name: nextrohanvermanet + build: + dockerfile: Dockerfile + context: ../apps/next.rohanverma.net + ports: + - "8079:80" + environment: + - VIRTUAL_HOST=next.rohanverma.net + - LETSENCRYPT_HOST=next.rohanverma.net + - LETS_ENCRYPT_EMAIL=hello@rohanverma.net + +volumes: + certs: + vhost.d: + html: + +networks: + proxy-tier: + +``` + +The drone.yml file + +```yml +--- +kind: pipeline +type: docker +name: default + +steps: + - name: ssh commands for rohanverma.net + image: appleboy/drone-ssh + when: + branch: + - master + settings: + host: 159.89.175.2 + username: deploy + port: 22 + key: + from_secret: ssh_key + script_stop: true + script: + - cd /home/rhnvrm/apps/rohanverma.net + - git fetch origin + - git checkout origin/master + - cd /home/rhnvrm/proxy + - docker-compose build rohanvermanet + - docker-compose up -d rohanvermanet + + - name: ssh commands for next.rohanverma.net + image: appleboy/drone-ssh + when: + branch: + - develop + settings: + host: 159.89.175.2 + username: deploy + port: 22 + key: + from_secret: ssh_key + script_stop: true + script: + - cd /home/rhnvrm/apps/next.rohanverma.net + - git fetch origin + - git checkout origin/develop + - cd /home/rhnvrm/proxy + - docker-compose build nextrohanvermanet + - docker-compose up -d nextrohanvermanet +``` \ No newline at end of file diff --git a/layouts/partials/footer/hcard.html b/layouts/partials/footer/hcard.html index d2bd64d..0eba985 100644 --- a/layouts/partials/footer/hcard.html +++ b/layouts/partials/footer/hcard.html @@ -9,4 +9,8 @@ rhnvrm

-
\ No newline at end of file +
+ + +IndieWeb Webring 🕸💍 + \ No newline at end of file From bce2fc3dfab7c7d02e782d14abef9cd36fe2a1d8 Mon Sep 17 00:00:00 2001 From: Rohan Verma Date: Sat, 16 Nov 2019 14:59:55 +0530 Subject: [PATCH 5/7] fix: dark-mode-toggle positioning --- assets/css/custom.css | 4 +-- layouts/_default/baseof.html | 1 - layouts/partials/body/darkmode.html | 2 +- layouts/partials/components/navmenu.html | 31 ++++++++++++++++++++++++ 4 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 layouts/partials/components/navmenu.html diff --git a/assets/css/custom.css b/assets/css/custom.css index 98cdfa1..7ad5ee5 100644 --- a/assets/css/custom.css +++ b/assets/css/custom.css @@ -1,6 +1,6 @@ dark-mode-toggle { - --dark-mode-toggle-dark-icon: url("/wp-content/moon.png"); - --dark-mode-toggle-dark-icon: url("/wp-content/moon.png"); + --dark-mode-toggle-dark-icon: url("/wp-content/sun.png"); + --dark-mode-toggle-light-icon: url("/wp-content/moon.png"); } body.light { diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index c335ac9..a42ca96 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -57,7 +57,6 @@ {{ $hackcss_mode := .Site.Params.hackcss.mode | default "hack" }} {{ $hackcss_palette := .Site.Params.hackcss.palette | default "dark" }} - {{ partial "body/darkmode.html" . }}
{{ block "header" . }}{{ end }}
{{ block "main" . }}{{ end }}