Jekyll in action

Jekyll is a free, open source, static site generator written in Ruby by Tom Preston-Werner, GitHub’s co-founder. Website created in Jekyll can be hosted on platforms like GitHub or Google Firebase. It’s commonly used by bloggers with experience in programming.



WTF is Jekyll?

3083652Jekyll is a free, open source, static site generator written in Ruby by Tom Preston-Werner, GitHub’s co-founder.  Website created in Jekyll can be hosted on platforms like GitHub or Google Firebase.  It’s commonly used by bloggers with experience in programming.

Jekyll is different than Content Management Systems like WordPress. It doesn’t have build in graphical interface, but it can be implemented(more about this later).

Instead of using databases, Jekyll takes the content, renders Markdown or Textile and Liquid templates, and produces a complete, static website ready to be served. Writing page from scratch can be challenging, but Jekyll have countless themes available online:

If you want you can buy themes on

Advantages of Jekyll

Jekyll is fast. Faster than any WordPress site. Static website once is generated it can not change. It doesn’t require connection to a Database what makes it super fast. Loading speed can be effected by things like large images, this is factor to look out for.

Jekyll is Simple. Jekyll doesn’t add any bloat to the website or blog you are working on. Many of the Jekyll Themes are very minimal and content oriented. take a look at Netflix website powered by Jekyll.

Jekyll is secure. Static websites will not have any database to manipulate. So Jekyll a 100 times safer than WordPress. But nothing is un-hackable. Not having database makes it easier to use for people with no experience in Back-end development.


Installation is one of the trickiest things in Jekyll. Jekyll is based on Ruby  and it require few things to run:

  • Ruby (including development headers, v1.9.3 or above for Jekyll 2 and v2 or above for Jekyll 3)
  • RubyGems
  • Linux, Unix, or macOS
  • NodeJS, or another JavaScript runtime (Jekyll 2 and earlier, for CoffeeScript support).
  • Python 2.7 (for Jekyll 2 and earlier)

After meeting all the requirements you can install it like any other Ruby Gem:

$ gem install jekyll

Installation process was greatly explained in many articles in the past, more information about the installation process you can find on official documentation:

This works only if you are Mac/Linux user. If you are Windows user it’s little more complicated…



octojekyllGitHub gives option to host static websites for Free including domain based on the account name. GitHub Pages are public web pages for users, organisations, and repositories. GitHub Pages are powered by Jekyll behind the scenes, so in addition to supporting regular HTML content, they’re also a great way to host your Jekyll-powered website for free.

Tutorial explaining this process can be found on GitHubSupport page

Jekyll comes with plugin for importing content from


Creating posts in Text Editor with Markup language and generating new website with each update can be frustrating. Companies like offer solution to this problem. Using CMS gives you or your client direct access to the server and option of editing the page and adding new content really easy without and technical knowledge. However basic account costs 25$/month.

Alternative option is provided by SiteLeaf. Another option for personal use is free


This post is a beginning of new series of articles about web development. If you are looking for more unique way of blogging this can be option for you. However it requires a knowledge of  front end development and it can be too complicated for people not familiar with web development. This can be simplified with CMS’s for small monthly fee. I hope this article was helpful and now you have new tool under you belt.

Here is example of my Portfolio website built with Jekyll.




Imagine you need to write a program with a method that takes ages to execute, if you create this in procedural way, the console will freeze and user will be unable to do anything.  This problem can be solved by using multiple cores of processor unit. Assign long task to a single core other than the main one.

Today I’ll demonstrate a simple example of multi-threading process to show you how to deal with this type of situations.

Lets analyse simple example

using System;
//Multi Threading is a part of System.Threading library.  
using System.Threading;

public class Test
    static void Main()
        Thread thread = new Thread(TaskMethod);
        thread.Start(); // kicks new tread
        for (int i=0; i < 5; i++)  //kicks another thread
            Console.WriteLine ("Main thread: {0}", i);
            Thread.Sleep(1000);   //sleep 1s
    static void TaskMethod()
        for (int i=0; i < 10; i++)
            Console.WriteLine ("Other thread: {0}", i);
            Thread.Sleep(500); //sleep 0.5s

This example demonstrates the outcome of two simultaneous threads. We invoke our thread in main function and in the next line we start another similar task, running at the same time. Lets take a look at the console output.


We can see that as we expected both loops are running together without any delay.


  • Threads can be declared by passing function into it.Function name does not contains parenthesis.
Thread thread = new Thread(TaskMethod);
  • Thread is executed by threat.Start() method
  • All thread related methods are inside System.Threading library.

This concept involves technical knowledge of CPU but implementation of treads is not that difficult, now when you know the basics, we can move to real world examples. In next part I’ll show you how to deal with an situation I presented in first paragraph.Stay Awesome!


First of all, little bit about myself. I’m self taught software developer. My main language is c# and for my projects im using mainly .NET framework and Unity Engine.

Short biography. After doping out from University(Undergraduate in robotics) and over year of searching for place for myself I decided to go back to Software Development. I graduated from college in UK , after seeing the level of education here I decided to become a developer without help of university. I’ll share with you knowledge i gained over years of searching and self development, finishing lots of Massive Open Online Courses, education in different countries and  on different levels.

This blog is about software development and technology. I’ll post helpful tips and information that can be useful for software developers, game developers, and people  interested in technology. I’ll try to cover basic and more advanced topics.