Developing a popular bookmarking app would be quite an achievement for most people. Or, developing a CMS that’s made it easier for dozens of developers to launch beautiful sites, simply, would be an exciting accomplishment.
Today, we have an interview with Bastian Allgeier, the developer behind the popular Zootool bookmarking tool, as well as Kirby, an exciting new file-based CMS. Kirby is simple, easy to use, and an exciting break from heavy, database drive CMS systems. Keep reading to learn more about Kirby and the way Bastian works with his development projects.
Could you tell us a bit about yourself and your work, and how you got started with web development?
My name is Bastian Allgeier, and I’m an interaction designer and developer from Mannheim, Germany. I’ve studied design and received my master’s degree in 2009, but actually started writing code and designing things more than ten years ago. I’ve been running the visual bookmark service Zootool since 2008, and launched Kirby in January. I currently spend about 50% of my time on Zootool and Kirby and 50% on client work.
Kriby impressed me with its simplicity from the moment I first discovered it. What was the original inspiration for creating Kirby?
The very first version of Kirby was actually a simple newsletter tool for a client. They didn’t want to spend thousands on a custom newsletter system, but needed a way to create regular newsletters without knowing anything about HTML or CSS. I had the idea of creating a simple folder structure with a folder for each newsletter issue, with the folder containing text files for each article in the newsletter and some images. A little PHP script would then just take the different parts and put that together like a puzzle.
That worked so well that I came up with the idea to create an entire CMS out of it. A couple of weeks later, friends of mine asked me if I could help them with their portfolio site for their design agency. It seemed like the perfect fit, because they felt comfortable working with the file system and FTP, so Kirby was born – that was about three years ago. Afterwards more and more clients – mainly designers, photographers and architects – got interested in Kirby, and so I launched about 10 Kirby-powered projects before it finally was launched publicly this year.
Why a file-based CMS instead of a database-driven CMS?
The file system already offers a huge amount of the features you need for a great CMS. With nested folders you can recreate pretty much any site structure, from small to large websites. Storing your data in structured text files gives you amazing flexibility, which is very hard to build into database-driven systems with fixed table structures.
Working on your data via FTP and instantly keeping it in sync with what you see in the control panel is fantastic. But the very best thing is that you can also do things like version-controlling your entire site’s content with Git and benefit from super easy ways to backup, which is simply impossible or very hard to achieve with a database-driven site. Another big advantage is that file-based sites are pretty snappy right out of the box.
Is there any unique story behind the name Kirby?
Well, no It was a working title that I just found cute and friendly, and it somehow stuck.
There seems to be a huge interest in simple blogging tools today, most of which are hosted solutions powered by Dropbox such as Calepin or Skrivr. Why the sudden interest in file-based blogging apps?
I think people are looking for simple tools in general. There’s too many bloated apps and services out there, but users wish for something that is focused and straight forward to use. Especially in the CMS market, there are so many huge systems which are simply too much for most projects. I also feel like blogging is becoming more and more popular again, but with some kind of a new, lighter spirit to it. I think this is really great!
How do you balance the simplicity of file-based sites with the added potential complexity of dashboards, plugins, and more?
I try to keep the core of Kirby as focused as possible, and make it more flexible and extendable instead of adding tons of new features. I think the worst that could happen to the project is bloat, and so I’m doing everything to avoid that. I’ve also concentrated on keeping things clearly separated and modular. For example, the admin panel which is available for Kirby is just one additional folder. You can add it to any project, but you don’t have to. It’s really all about keeping it simple but customizable.
Why did you decide to share Kirby’s source publicly on Github, even though it’s not open-sourced?
It was a very hard decision to publish Kirby with a commercial license. I wanted to create a project that is as transparent and open for everybody as possible, but at the same time I knew that I wouldn’t be able to spend much time on it if it wouldn’t help me to pay my bills at least a bit. I think there’s not much use in any kind of open-source project that is not maintained properly, so I decided to rather to go for a commercial license but with full access to the source code for everyone. People can try Kirby as long as they want on their local machines and see if it really fits their projects. I think this is the most fair way to deal with a commercial product, and with every purchase I can be sure that people buy it because they really like it.
Of course it might sound naïve because there’s no obfuscated code or any other way to stop piracy in Kirby, but this is built on the idea of trusting people. I prefer this over spending additional time hunting pirates. I think that more and more people appreciate software and tools which help them getting stuff done and are happy to pay for it. That’s what I’m trying to achieve with Kirby.
Building a new CMS can’t be easy. Can you share anything you’ve learned through building Kirby?
The toughest part for me was dealing with multiple server setups and expecting the unexpected. With Zootool, I have been used to have everything under control. The servers were setup in the way I need them to be setup. With Kirby, people are running into strange bugs caused by old PHP versions or strange Apache configurations on all kinds of servers and hosting providers. That’s sometimes a bit daunting. But I must say that I also learned how great support for a CMS can be. I really enjoy how nice people are so far and how fun it is to exchange emails and learn about their projects.
We’d like to extend a special Thank You to Bastian for taking the time from his busy schedule to do this interview with us. I’ve been trying out Kirby lately, so stay tuned for an in-depth review of it here at Web.AppStorm soon. If you’ve been looking for a simple file-based CMS, be sure to check Kirby out. It’s an exciting project, and Bastian is actively improving it and helping people get started using it for their design projects across the web.