Hello World!

08 November 2016 on general. 3 minutes

I’m so happy to introduce you my new website. It’s not about the fancy cool effects, it is not about shiny design, it’s purely about the content that I would like to share with you. After a long time of working with Java, PHP and JavaScript programming languages and tools like Git I found out that It gives me a massive pleasure to share my knowledge, so I decided to run this blog.

Technically about this website

This is a static website generated by amazing tool called Jekyll, the blog-aware static site generator. I’m always interested in learning new, interesting technologies, plus I’ve been thinking about refreshing my site for some time, which gave me the perfect excuse to install Ruby and fire it up.

Jekyll Logo

I’m drawn to Jekyll as it seems to hit a sweet spot for me due to the following features:


I love Markdown. Markdown is a lightweight markup language with a simple, unobtrusive syntax. It looks great and is easily readable in its plain text form but is also easily converted into HTML. I find that I am using Markdown more and more every day.

Jekyll posts and pages can be written in Markdown format as well as HTML. Markdown is also compatible with HTML, so if you ever get some “widget” code that you want to embed on your site you don’t need to convert it in any way - just copy and paste the code in and mix the two together.

Static site generation

Previously I’ve used Blogger and WordPress to manage my site. Blogger and the hosted offerings of WordPress are ok, but they just don’t give me the flexibility I feel I need to be able to modify my templates and get my site running exactly how I want - there’s always some kind of restriction. This led me to hosting WordPress, which required a LAMP style stack on a server somewhere which, while not exactly a problem, was an overhead that I could do without.

Jekyll generates static sites. It processes your pages, posts and templates and produces simple output in the form of HTML files, allowing you to serve them up from almost any kind of web server. Apache, Lighttpd and Nginx are all welcome here, or you could just upload your files to an Amazon S3 bucket and serve them directly from there… Jekyll doesn’t care.

GitHub pages

Jekyll is used by GitHub for their GitHub Pages feature. This allows you to create or push a Git repository with your Jekyll site to them, which they will then build and host for free. You can use a github.io address or your own domain name. This is perfect for me, as it allows me to develop my site and write content locally whilst being able to maintain it from anywhere with an internet connection. People can also fork my code and set up their own site easily and they can raise bugs, feature requests and even submit their own fixes & features if they choose to.

Simple, flexible templating

Jekyll uses the Liquid library for templating. This is extremely easy to learn and so far seems fairly capable, especially with the filters that Jekyll supports natively. It has its quirks, but I have not yet come across something which I haven’t been able to do.

Syntax highlighting

Jekyll includes support for syntax highlighting of code snippets, which may come in handy for me, though I will probably lean more towards embedding GitHub Gists instead.


Welcome to Jekyll!

You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.


Google Code-in 2016

Over the past month I have been participating in Google Code-in (#gci2016) and it has been a great journey for me! It is all about FOSS development, and all of the challenges and skills involved. I discovered it through a recommended blog post written by m4tx, a graduated student from my school who participated in 2013. After reading his blog post, I got motivated to follow his workflow and chose to do tasks for Wikimedia. So after studying the contest rules, I signed up for the contest and got my first task started.