Why did I move my blog from Hexo to Jekyll
Hello guys,
Today I am going to write about my blog migration from Hexo. Why did I migrate my website?
Well, Hexo and Jekyll provide SSG (aka Static Site Generator). My hexo system worked fine but I don’t have any idea for NodeJS or EJS etc.. So, I decided to move my Hexo to Jekyll.
I searched for importer. I found but they don’t support Hexo directly. I need to use RSS as an importer. I did but it didn’t work also I got an error.
However, I had wanted to move Jekyll and I will do.
I started manual migration by hand. It is sound crazy but you know. If you have just one chance you will try, right and I did.
Now, you are reading this page with Jekyll.
Why I interested too much with Jekyll?
I had started to learn Ruby ‘and’ Rails, so I moved my all system to Ruby. In my philosophy,
If you want to learn something for programming you need to live with it.
Maybe, you won’t agree with this quote, but I learned PHP with this way. I had started blogging with WordPress, I learned Symfony and Silex. While I was learning Symfony, I looked at MySQL/Redis and so on…
This means not you have to; therefore, you don’t need to migrate your blog to new system for learning purpose. If you feel comfortable just leave it.
I really like Jekyll, but why?
Actually, this is in my perspective, so it can change for you. I liked Ruby. It is really beautiful language. It has really understandable syntax. You can read what you write like English. I want to share with you some block of code.
redirect_to login_path unless logged_in?
It says,
Redirect to login path unless logged in.
Yes, you got it .
if (logged_in) {
redirect_to(login_path);
}
But, when you write with different language like PHP? Maybe you need to provide some comment.
Warning: This compression means not “PHP isn’t understandable”! I am just writing about Ruby syntax close to English. Another word, you can write like
if logged_in? == false
redirect_to login_path
end
Seems like that I wrote with PHP.
That’s enough, I think.
Easy to develop
Just read these rows
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Begin Jekyll SEO tag v2.6.1 -->
<title>Why did I move my blog from Hexo to Jekyll | Berkhan’s Blog</title>
<meta name="generator" content="Jekyll v3.9.0" />
<meta property="og:title" content="Why did I move my blog from Hexo to Jekyll" />
<meta name="author" content="Berkhan Berkdemir" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="Hello guys," />
<meta property="og:description" content="Hello guys," />
<link rel="canonical" href="https://www.berkhanberkdemir.com/2018/03/25/why-did-i-move-my-blog-from-hexo-to-jekyll.html" />
<meta property="og:url" content="https://www.berkhanberkdemir.com/2018/03/25/why-did-i-move-my-blog-from-hexo-to-jekyll.html" />
<meta property="og:site_name" content="Berkhan’s Blog" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2018-03-25T00:00:00+00:00" />
<meta name="twitter:card" content="summary" />
<meta property="twitter:title" content="Why did I move my blog from Hexo to Jekyll" />
<meta name="twitter:site" content="@berkhanberkdemi" />
<meta name="twitter:creator" content="@berkhanberkdemi" />
<script type="application/ld+json">
{"headline":"Why did I move my blog from Hexo to Jekyll","dateModified":"2018-03-25T00:00:00+00:00","datePublished":"2018-03-25T00:00:00+00:00","@type":"BlogPosting","mainEntityOfPage":{"@type":"WebPage","@id":"https://www.berkhanberkdemir.com/2018/03/25/why-did-i-move-my-blog-from-hexo-to-jekyll.html"},"publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://www.berkhanberkdemir.com/favicon.ico"},"name":"Berkhan Berkdemir"},"author":{"@type":"Person","name":"Berkhan Berkdemir"},"url":"https://www.berkhanberkdemir.com/2018/03/25/why-did-i-move-my-blog-from-hexo-to-jekyll.html","description":"Hello guys,","@context":"https://schema.org"}</script>
<!-- End Jekyll SEO tag -->
<link rel="stylesheet" href="/assets/main.css"><link type="application/atom+xml" rel="alternate" href="https://www.berkhanberkdemir.com/feed.xml" title="Berkhan's Blog" /></head>
If you don’t have any idea with templating and you are little bit curious about that just follow the Wikipedia link about Template Processor
Well, I just shared this simple code piece. You can call “base template” or “base layout”. For example, let’s look for this if
statement.
It says if Jekyll environment equals production
and google_analytics
variable available in your _config.yml
include google-analytics.html
file into this template.
Easy, right? I heard some “nuh”
Conclusion
Jekyll, Ruby or Rails. Awesome parts for developing or writing your blog. Because they keep simple as they can do. That’s why startups can prefer Ruby as a development language since it is simple and you can get result with few code.
If you have any question just add to Disqus. Comments are important for me.
Thank you.