Ramshankar
on software & life

About

The more I talk about myself, the more I find I’m talking nonsense.

I’m Ramshankar, an x86/x64 systems software developer by profession with over a decade’s worth of experience in the industry. As a hobby, I write about software, video games and a few other topics. I’m deeply interested in a lot more but lack the knowledge to write on them. Over time, I hope to write at least a little of all that interests me.

Back in 2006, I used to blog using Google’s Blogspot. I wound that up after a few years as I had nothing much to say (which is often still the case). Now that I have my own website, I hope to write more frequently. I don’t believe that forcing oneself to write often makes one a better writer. I’m sure it helps to a certain degree but spontaneous writing is more sincere. And just like painting or playing an instrument for its own sake, I enjoy writing for its own sake.

Most of my personal software projects were written ages ago for the Be Operating System (BeOS). One of my more successful projects, Beezer (a WinZip-like application), was licensed by Magnussoft GmbH for commercial distribution as part of Zeta OS. Beezer is now open source software and has been ported to Haiku.

Most of my time these days is spent contributing to an incredibly complicated piece of software. I feel fortunate that even after so many years it’s still interesting, challenging and rewarding.

I could go on rambling about who I am and what I do, but I think I’ve described the shallows of my persona quite sufficiently for now.

Contact

If you spotted an error, have a suggestion or just want to say hello, please contact me the old-fashioned way at raknahsmar · v at moc · liamnotorp (no spaces and use dots instead of the middot).

I’m keen on correcting factual, grammatical and graphical errors, however small they may be. I’m also looking to improve the aesthetics of this site so long as it doesn’t adversely affect its performance; feel free to suggest improvements.

Requests to reproduce, adapt or translate my content found on this website can also be sent to the aforementioned email address.

Unless stated otherwise, all content on this website are my own and may not be reproduced, modified or translated in any form (including but not limited to print and electronic media) for any purpose (commercial or non-commercial) without prior, written permission from me. Permission is not necessary for reproductions that qualify as fair use.

Any source code found on this website follows the copyright of its project, regardless of whether the project is my own or a third party. Any source code snippet, presented as an example or sample, which does not have any prior license, is presented under the Creative Commons Attribution 4.0 International License (CC BY 4.0). Other copyrighted content found on this website has the permission of its owner/s or qualify as fair use.

Disclaimer

The information on this website is accurate to the best of my knowledge. However, I take no responsibility for any advice, opinion or recommendation being accurate, up-to-date, correct, complete or otherwise harmless to you or your computer. This site and all content are provided “as is” without warranty of any kind, express or implied.

All views and opinions expressed on this site, including but not limited to reviews of products or services, are solely my own unless explicitly stated otherwise. They do not represent or reflect the views, opinions or standards of any entity (be it a person, institution or organization) that I may be associated with in a professional or personal capacity at present or during the past.

Colophon

In this section I describe the tools used to create this website and some of the decisions that went into its design.

My time outside work was (and still is) very limited, but I wanted to create a simple website quickly, without getting into the absurdities of modern day web programming. I wasn’t going to learn a dozen different web "frameworks", fiddle endlessly with Apache or update MySQL every few weeks. I even wanted to avoid using PHP at all costs.

For the task at hand, a static site seemed perfectly sufficient. However, writing every page manually in HTML is tedious and impractical. So I researched tools which would generate the HTML, letting me focus on the content instead. After many weeks of experimenting a half dozen static site generators, I settled on what I believe are excellent choices…​

Generated using Hugo

This site is generated using Hugo. Hugo is an open-source, static site generator written in Go. It takes configuration files, HTML templates, and content typically written in Markdown and renders a static website. Hugo is known for being flexible, extremely fast and has many user-created themes that are free to use. However, I chose not to use any pre-existing theme. I wrote the templates and stylesheets by-hand so it gives me greater control over the presentation and performance.

Content written in Asciidoc

This site’s content is written primarily in Asciidoc. While Markdown has its use, I wanted something more standardized. Asciidoc is a much better choice for anything more complicated than simple README files. Hugo supports externally invoking Asciidoctor to render Asciidoc files as HTML. While this significantly increases the time it takes to generate the site (especially on Windows), it gets the job done and is well worth the trade-off.

Typography

Body and headings are typeset in Source Serif Pro. It’s a traditional serif created by Frank Grießhammer for Adobe Inc. I chose it for its crisp appearance and because it stays legible even on smaller sizes. It’s one of the few free fonts to include small caps and alternate (old-style, proportional and tabular) numerals. An added benefit is that it scales really well to the fallback font Georgia. If you have a penchant for typography, you may be interested in a more detailed explanation for why I chose Source Serif Pro.

The typeface used in metadata, sidebars etc., is typeset in Fira Sans. Fira Sans is a humanist sans-serif created by Erik Spiekermann and Ralph du Carrois for Telefónica and the Mozilla Corporation. I favored it over Source Sans Pro (the sans-serif counterpart of Source Serif Pro) as it’s not as brittle on smaller sizes. If I may need them in a pinch, they’re always a reliable and safe choice for headings.

Monospace text (including source code) is typeset in Fira Mono. It’s the monospace variant of Fira Sans designed by the same team. I chose it since it retains legibility on smaller sizes, has dotted zeroes to easily distinguish 0 from capital O and scales proportional to the fallback fonts — Roboto Mono and Droid Sans Mono. Fira Mono has slight serif accents on some of its glyphs which gels well with Source Serif Pro.

Inline icons are rendered using Font Awesome Free, version 5.12.0. Attributions in the embedded files are kept intact as recommended by the license. No svg or js files from Font Awesome Free are used.

Source Serif Pro, Fira Sans, Fira Mono and Font Awesome Free are licensed for use under the SIL Open Font License, version 1.1.

Favicons

Favicons were created by me using my licensed copy of Clip Studio Paint. Minor modifications and generating the ico file were done using GIMP. I’m not fully satisfied with the current favicon and I hope to make a better version someday. For now this will have to do.

Powered by Nginx

This site is powered by the Nginx web server. Nginx is a modern, open source web server that I found easier to setup, configure and manage than Apache. Nginx is very efficient at serving static content and is highly optimized by reducing the number of disk accesses per request. Nginx’s high performance, low-memory footprint and ease of configuration made it an apt choice.