4257 – Inside Saint Laurence Church XIV

How do I choose?

Are there even clear criteria? Do I even know what properties to expect of a “best” tool for solving my problem? Do I even know exactly what my problem is?

Unfortunately the answers to all those questions are somewhere between a clear “no” and vague undecidedness. That’s ok. That’s what I face in my job on a daily basis.

On the bright side: I already know a lot about the problem domain, I know the proper terms, I have found a cache of options and it seems to be fairly complete.

Of those 224 options I will ignore everything that clearly is a documentation generator or that is exclusively or primarily targeting the production of books. I can also ignore tools for producing JavaScript applications in one of the popular frameworks (Angular, React, Vue, etc). It’s fine to know these exist, I may need them at one time, but not for creating a blog.

I also can’t expect to find a tool that perfectly solves everything I need. Fine if I do, but I might need to tweak it. If so, familiarity with and trust into the programming language will come handy.

This means, I will prefer JavaScript, Python, Java or C# over Ruby, Lisp and Haskell. I might also consider a language that I’m interested in learning anyway. Examples of those are Go and Rust.

The other important point is popularity of the framework. I wouldn’t want to develop the tool myself, and if I use one from the rich menu of choices, I’d hate to find myself being the last remaining user at one time.

Popularity does not always mean the absolute best quality, but a combination of popularity and decent quality makes it very likely that someone has already solved your problem.

Thus my strategy will be to start from top of the list and look at the first popular solution in one of my preferred languages. If the tool already comes with a converter from WordPress (some tools do), then this is a big bonus.

Jekyll is the most popular tool, comes with a converter, but it is written in Ruby, a language that I’ve never bothered to learn.

Hugo is #2, claims to be the fastest, does not have a converter and is written in Go. Go is a young and wildly popular programming language, but so far I never had the opportunity to learn and use it.

Next, the #3, is JavaScript, but it is for applications, and it even uses React as a framework. I’m an Angular guy, and although I wouldn’t mind acquiring some React know how, a blog is not an app.

This leaves us with #4, Hexo, a blog-aware JavaScript tool with even a converter. Cool! The route is clear, I start with Hexo, see if I like it, and if so, I just use it and look no further.

There are 2 comments

Ted Byrne   (2018-06-17)

Ahhhh.... You've done the improbable. Your text uses only English words and syntax and yet while every sentence is clear it is as if you've written in hastily translated Serbo-Croate! Wheeeee... You've gone down into the basement where the utilities run the HVAC of life while I'm up here gamboling about in the comfort it creates. From my first glimpse of a color TV screen in the early 60s, I stopped wondering, "How do they do that?", and began imagining, "How can I use that?". Of course my world is built upon engineering secrets... Secret to your priesthood that understands it's language, nuances, and applications. And even when someone like you 'splains them to me - well I'm afraid that no dictionary will help me penetrate the tech-walls that cloister them off from the rest of us. Regardless of the magical stuff you're doing here - its results in... that beautiful image here are... Well, in the words of Arthur C. Clarke, "A sufficiently advanced technology is indistinguishable from witchcraft!" Heh heh...

💬 Reply 💬

andreas   (2018-06-17)

Yeah, unfortunately that was to be expected. What I write at the moment is more or less directed at people who are in a situation like mine. If you consider replacing your blog with such "Static Magic", you'll necessarily need to understand my language. You'll probably just want to profit from the experience of someone who actually did it, or want to follow the process. Think of it as a tutorial for something you'd never be interested in doing 😄 Therefore: Dragons ahead!

💬 Reply 💬