diff --git a/.gitignore b/.gitignore
index 89ff0a6..9f956e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,4 +9,6 @@ Desktop.ini
$RECYCLE.BIN/
# OSX
-.DS_Store
\ No newline at end of file
+.DS_Store
+
+.vscode
\ No newline at end of file
diff --git a/assets/css/custom.css b/assets/css/custom.css
index 98cdfa1..cb985c7 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 {
@@ -39,10 +39,18 @@ nav a {
color: #422eff;
border-bottom: 1px solid #00ff9c;
}
+.dark a {
+ color: rgb(82, 174, 255);
+ border-bottom: 1px solid rgb(0, 204, 125);
+}
.light a:hover {
color: #000;
background-color: #00ff9c;
}
+.dark a:hover {
+ color: #333;
+ background-color: #00ff9c;
+}
.muted, .help-block {
opacity: 0.70;
}
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/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 95%
rename from content/blog/2019-10-10-facebook-birthday.md
rename to content/blog/2019/2019-10-10-facebook-birthday.md
index 5454c9a..b20fe9c 100644
--- a/content/blog/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-10-25-paisavasool-hackinout-2019.md b/content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md
similarity index 98%
rename from content/blog/2019-10-25-paisavasool-hackinout-2019.md
rename to content/blog/2019/2019-10-25-paisavasool-hackinout-2019.md
index ecfc21f..7b14cf8 100644
--- a/content/blog/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-11-05-docker-gopls.md b/content/blog/2019/2019-11-05-docker-gopls.md
similarity index 67%
rename from content/blog/2019-11-05-docker-gopls.md
rename to content/blog/2019/2019-11-05-docker-gopls.md
index c1a6754..7e00f38 100644
--- a/content/blog/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"
@@ -36,33 +37,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 +82,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 +116,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
diff --git a/content/blog/2019/2019-11-15-hugo-group-by-year.md b/content/blog/2019/2019-11-15-hugo-group-by-year.md
new file mode 100644
index 0000000..fb116b7
--- /dev/null
+++ b/content/blog/2019/2019-11-15-hugo-group-by-year.md
@@ -0,0 +1,70 @@
++++
+title = "Creating archive pages grouped by year in Hugo"
+date = 2019-11-15T15:30:03+05:30
+draft = false
+tags = ["hugo", "blog", "golang"]
+categories = ["tutorials"]
+type = "post"
+url = "blog/2019/11/15/archive-pages-group-by-year-hugo"
+author = "Rohan Verma"
++++
+
+I was on the hunt to find out how to organize my [blog](/blog_list) and
+[project](/project) archive pages by year in Hugo. After being unable to find
+any easy solutions I decided I would sit down and write the go template to
+render these pages myself. The idea was simple, iterate over the list divided
+by year into sub lists and render tables, but it turned out to be a bit tricky.
+
+Here is the template, hope it is useful for someone who wants to have a similar
+page.
+
+```html
+{{ define "title" -}}
+ Blog List | {{ .Site.Title }}
+{{- end }}
+{{ define "header" }}
+ {{ partial "masthead.html" . }}
+{{ end }}
+{{ define "main" }}
+ {{ .Title }}
+ {{ .Date.Format "2006" }}
+
+ {{end}}
+
+
+
+ {{ $prev = .Date.Format "2006"}}
+ {{end}}
+ {{end}}
+ {{.Date.Format "02 Jan"}}
+ {{.Title}}
+