Maybe I'm noticing a trend that doesn't exist, but it seems to me that the web industry is slowly realizing how much the original designers of the web got right.
RESTFUL services bring back the focus on URLs and HTTP methods. For a while there was a craze of embedding content in awful Flash and Java applets, but that died out because of convenience, better browsers, and SEO. I wonder if the future of the web is going to look a lot more like its history than we thought.
That's a good point. In my opinion, HTTP's success is due to its platform-independent nature and its simple yet effective text-based communication protocol. Standardized solutions are the way to go.
Flash died because it was private and for Adobe.
Java will not remain a strong web language as long as it is for Oracle.
I predict a great future for HTML5 WebSockets, as well as other open-source API's and protocols.
" When I first read about that, it was impossible to believe. The site was saying that the blog works without data, which is essential for any blog."
What? There's never been any really good reason for blogs to be database-backed in the first place. Blogs are just static websites with new pages added frequently.
Readers visit the blog and consume the content. The application needs to serve pages that, as you correctly observed, are added occasionally, but don't change much. For a simple blog, there isn't much need for anything other than a static page.
From the other end, is the author. Think of the blogging engine as an authoring tool. Just like any application, you can choose to use a tool that runs on your computer (e.g., Jekyll), or you can choose to use a tool that runs as a web app (like WordPress).
The lines are blurred here, because it's entirely possible to just run Jekyll on a web server, using ssh to shell in and edit your blog files. If you keep your blog files in a Git repository on Github, as many people do, you can even do fancy stuff like auto-build on commit hooks. Then you can use Github as your authoring environment, and just commit as usual.
I think your argument really stems from an architecture shortcoming in the way WordPress works by default. There is certainly never any good reason for a web page that changes infrequently to lack any form of caching. The real question is where you do that caching. Using something like CloudFare in front of your WordPress blog is just as valid a decision as is using something like Jekyll, or adding caching to WordPress through something like WP Super Cache.
It may be evident for you since you probably have seen many frameworks and implementations. Before hearing about Jekyll, I only used Blogger and WordPress, which relies on the database for almost everything.
But that's only to provide a convenient admin interface for people who don't want to write posts in HTML (or markdown or whatever)
I guess what I'm saying is that (except for the comments) blogs are static pages that contain (mostly) unchanging content, not dynamic data that needs to be updated.
If you're curious about the history, you might look into MovableType, which predates WordPress by a couple years, and has always supported static page generation: https://en.wikipedia.org/wiki/Movable_Type
Once upon a time, Pyra Labs' Blogger was a tool that generated static pages and FTP'd them to your server. This was back in the heyday of Movable Type.
Nowadays I am using Hakyll, it's a natural progression from Jekyll and is much easier to customize (it's basically a Haskell DSL for static site generation).
I really don't see the benefits of a blog without a backend. Don't get me wrong, I used jekyll a while back and when I used it, everything was awesome.
But then I wanted to do simple stuff like editing a post from another computer that didn't have access to my server because one of my post had a typo.
Then I wanted to list all my blogs by published date and have a different place where I could list post by [type|tag].
Some of those features are available through jekyll, but seriously, what's the difference between parsing a database for post of type X and having jekyll build a list of post on XYZ requirements?
I hope you don't think that database backed blog are slow because on 128mb RAM I had over 20k unique per day on my site. Running Wordpress, without any caching.
Honestly, I chose not to go with Wordpress for 2 reasons.
First is that it needs a server. Using Jekyll, I am able to leverage Github pages to serve my website for free.
The second reason is that Wordpress is not easy customize (from a programmer's perspective). I tried to learn Wordpress themes but stopped after sensing how much time this would take me. Jekyll's themes were self-explanatory code, allowing me to plug my website's same CSS files and HTML template into the blogging platform. For Wordpress, I had to use PHP and learn theme functions and learn how to package the theme beforehand.
I know Wordpress has wide collection of plugins, but coders like me always prefer to write their own stuff.
You seem to think that I'm rooting for Wordpress, I'm not. I just used it as everyone knows what Wordpress is. I'm currently using my own blog engine (https://github.com/pothibo/ecrire). What I wanted to say is that as soon as you need some feature for your blog, you'll end up using something that is powered by a database.
Thanks for sharing Ghost. I did not know about it till now. It looks pretty neat, especially since it runs on my favorite stack: Node.js and Handlebars :)
Have you looked at Octopress? Curious to know what your thoughts are. When I Google for static blog hosting in general and Jekyll in particular, many results say 'Use Octopress, which is a lot more convenient'.
@salehhamadeh One small nitpick: the Twitter portion of the social media bar, on mouseover, slightly covers up the "S" in your first name while viewing in 1280 x 800 res and on Chrome.
@wyclif Thanks for letting me know. I added this box last week. I used a jQuery plugin called Tweetable that grabs tweets without authentication from www.getmytweets.co.uk. I noticed that this is very slow. Over summer break, I plan to write my own Twitter API wrapper for unauthenticated requests that is fast enough to cover my blog's needs.
RESTFUL services bring back the focus on URLs and HTTP methods. For a while there was a craze of embedding content in awful Flash and Java applets, but that died out because of convenience, better browsers, and SEO. I wonder if the future of the web is going to look a lot more like its history than we thought.