log 1 = 0

I am planning to maintain a log about various things I do in a week.

This my first weekly log. Hence log 1 ( 2 October 2017– 8 October 2017 )

Note on personal finance

I kick started this week by typing a private 914 words medium story which deals with my thoughts on personal finance and the core principles that I am following and will be following. I am not very comfortable in making it public, as I don’t see a strong need for it. But long story short, “Don’t get a credit card and loan”.


I compiled a list to build Open Source Software.
oss-checklist - Checklist for building Open Source Softwaregithub.com

The size of it is controversial. But I myself is experimenting with it. I hope to make it better. I think it is the first direction towards something that will make building and releasing open source projects standard.

If you have something to say about it, please comment it out on reddit

New laptop for sister

Sister started in college and laptop seems to be a mandatory thing. So, we got a new one.

Linked Lists

Data structure containing list of elements or nodes. Each element or node contains data and link

  • Singly Linked Lists

  • Circular Linked Lists

  • Doubly Linked Lists

  • Multiply Linked Lists

  • Combined Linked Lists: Combination of above structures: (Example: Circular Singly Linked Lists)

  • Hash Linking: Use array to store linked list. link is the index number of next data instead of a pointer.

  • Sentinal node: special type of node used to track end/beginning of list. (Example: golang stdlib double linked list implementation uses a sentinal node )

Crystal lang

Good news! I am picking up a new programming language. I always wanted to hack in ruby. But didn’t have the chance yet. Last week, I came across crystal which is “Fast as C and Slick as ruby”. I am super excited to build with crystal and do my best in making it production ready.


I happend to come across http://editorconfig.org/ while browsing a crystal library project generated by running crystal init lib mylibname

How come I didn’t come across all these days? .editorconfig is a file that tells various editors to follow set of formatting conventions in code. For example, all crystal files in a crystal project use the following rules by default.


charset = utf-8

end_of_line = lf

insert_final_newline = true

indent_style = space

indent_size = 2

trim_trailing_whitespace = true

Revisiting Linked List

I am already in path of writing a decent Linked List implementation in Crystal. Before I move on, I would like to get more comfortable with linked lists. So, I am going to solve a linked list programming challenge again. ( I solved the entire series 22 months back in Java 7 )

I want to solve it in Go, but unfortunately Hackerrank does not support Go for this series. So I will stick with my college best friend — Java 7

[ Update: Was not able to complete it within this week— still two problems remaining :( ]
Solve Data Structures Code Challenges
Join over 2 million developers in solving code challenges on HackerRank, one of the best ways to prepare for…www.hackerrank.com

Rainy days

Revenge of the nerds

I spent an entire bus journey reading this blog post from Paul Graham and it totally bought me into Common Lisp.

So the short explanation of why this 1950s language (Lisp) is not obsolete is that it was not technology but math, and math doesn’t get stale. — Paul Graham

Buying a Squid

I got a 1 year subscription for a note taking app. As long as I researched it seemed to be the best fit for me to take notes on things I am learning. Lets see how it goes. I would like to get a stylus in future.
Squid - Take Notes & Markup PDFs - Android Apps on Google Play
Take handwritten notes for class, work, or fun! Easily markup PDFs and share ✏️️play.google.com

I took the first notes in it and started uploading it to pinterest. Damn, it took a lot of time trying to get this done in finger touch. I better get a stylus in future :D The app is good though !


Thanks for reading. I quote verses from my favourite Tamil literature “Tirukkuṛaḷ” at the end of my blog posts.

“எண்ணிய எண்ணியாங்கு எய்துப எண்ணியார்

திண்ணிய ராகப் பெறின். ”

— திருக்குறள்

Translated meaning ( in my words ): Thoughts turn into action, when the thinker is strong enough to act.