Building this Site

John Samuel

Every personal web site has a story to tell: a story emerging out of one's past personal experiences, current vision and future dreams. These stories are unique, no matter how we try to classify them to certain pre-defined pigeon-holes. When a story teller gives a personal touch to any aspect of life: whether personal or professional, it's always pleasant to read and there are several lessons that can be learned. Therefore what distinguishes different story tellers is not just the story but also the very act of story telling. Here goes the story of building my site.

I am building this site to discuss my work, my research and some personal experiences. Every day brings along with a ton of surprises and challenges. Every project opens door to better ideas, newer motivating projects as well as several unanswered scientific questions. Exploring answers to all of them is sometimes a daunting task, but ignoring them and not documenting them is equally a bigger concern since it costed both time and resources.

This site is meant to document various lessons learned during the execution of various personal projects and ideas. And in order to have a historical timeline of thoughts, I am using version control for building this site. Version control, an approach commonly found in software development permits me to keep track of progress (or digress) of my thought process.

While building this site, I want to explore doing things a bit differently than the current common practices. Some of them may seem a little naive, take for example, currently the whole site is built only using HTML and CSS and no javascript. There are no global CSS files and all CSS required to render this page is on put on the same HTML web page file (check source). Hence, it does not require separate HTTP calls for fetching the CSS and javascript files.

The site is aimed to have a responsive and minimalistic design with multilingual, human and machine-readable content. Some of these may seem fantasy, but these are the factors that motivates me.

No blogging platform is used. I am not using any blogging platform like Jekyll (commonly used for static web site generation). As mentioned before, I believe that behind every blog post, there is a story to tell. Dependence on any particular blogging platform takes away this per-post flexibility. Many actual blogging platforms propose global site themes and ignore themes for individual posts. Depending only on HTML and CSS for creating a static web page enables me to create individual stories. The question of absence of uniform site-wide experience still baffles me. However taking into account my past personal experiences, I feel that it is quite rare to find someone reading more than one article from a single site during a short duration. In most of the cases, we are directed to a web page from a search engine. And once we have read what we were looking for, we either switch to another web page or go back to the search engine. Site-wide uniform experience is usually promoted on news websites.

Every web page must be lightweight. No heavy-weight javascript framework is used for writing the blog posts. Research shows that the average size of the web page has tremendously increased1 for the last few years especially due to the use of a large number of these Javascript frameworks and images.

There is no doubt that given the wide variety of devices that we are currently using, Responsive web page design is the need of the hour. Targeting readers of a single platform or device usually means losing readers from other ones. I also wish to experiment a minimalistic approach, by providing the readers a distraction-free reading, thhough from time to time highlighting the key points of various posts.

I wish to try out multilingual posts. Should I envision automated translation or a semi-automated translation? I prefer the latter, with more focus on manual contribution. How far can I try to make my page machine readable is still an open question? I want to first explore machine readable web page metadata and slowly move towards the content of the web pages. It looks like semantic web technologies needs to be put in practice.

There are many authors stressing on the need for long story or detailed and elaborative posts2. I too share similar opinion. One post for one topic and any subsequent change amounts to updating the post.

Time has proven that version control is not just meant for programming, but for all our content. Version controlling my blog posts also helps me to get a glance on the way of my working. Every sentence that I add, update or delete gives me an idea about the progress of my thoughts.

Finally, no analytics or tracking is being used on any web page. This is an ancient dilemma for any author. Should an author write for the audience or for oneself. After giving a lot of thought on this matter, I feel that I prefer the latter and hence I opt for no per-page analytics.

References

  1. News Sites Are Fatter and Slower Than Ever
  2. This Is What Happens When Publishers Invest In Long Stories

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.