frederico-knabben

Binpress Podcast Episode 6: Frederico Knabben of CKEditor

On this episode, we talk with Frederico Knabben, creator of CKEditor, the ubiquitous open-source JavaScript text editor. If you’ve been online at any time over the past decade, chances are that you’ve used CKEditor on one website or another — whether you knew it or not. Fred covers how the project got its start and its name, the community-building challenges CKEditor faces and the importance of users such as Drupal. In addition, we also discuss what he and the team have learned about pricing, their marketing, how closed-source solutions can support open source software and much more. Listen to the podcast in the player above, or click here to download it directly. Subscribe on iTunes or do so manually by using this RSS feed.

SUBSCRIBE ON: iTunes PocketCasts Stitcher

Show notes

Transcript

Alexis: So thank you Fred, for joining us on the podcast.

Frederico: Yeah, thank you, thank you guys. I’m very happy to join you, really.

Alexis: Not a problem. So for folks who don’t know about you, and before we get into CK Source and CKEditor, tell us a little bit about yourself and your background.

Fred: Well, I’ve always been in the IT field since I was a little guy, as most of us programmers, let’s say. I started when I was very young, when I was 12, programming, and since then I’ve just been doing this. And then you know it ends up on the history of CK Editor. Knowing everything more or less about programming when I was supposed to choose a university direction, I was very lucky to choose to go into the marketing direction, nothing to do with programming really. Yeah, eventually this helped, developing what we have today because I have all the IT and programming knowledge and I was able to materialize this with a marketing background from university. So I was very lucky to have this combination.

Yeah, I was in Brazil in the very beginning, let’s say, I’m Brazilian, right. Then when I was 23, I moved to Italy and I lived there for six years. In fact FCKEditor — it wasn’t CKEditor then — was born in Italy. A few years later I moved to Poland where I live now. Since 2003, I’m running the CKEditor project. Yeah, and since 2005 I’ve been doing this in Poland. Here in Poland I was able to develop and create and build a company around CKEditor, which is called CKSource. So yeah, that’s it, that’s the short story of what happened with CKEditor.

Alexis: Okay, so did you start programming with HTML, CSS and JavaScript or did you have prior experience in other kinds of languages?

Frederico: Well yeah, in the very beginning it was… the internet was not… anything, especially in Brazil. And so I was programming enterprise applications, really, desktop applications. Slowly those applications started moving toward web technologies by the end of the nineties. I started to have contact with that. In Brazil, I was working from Rio, less web applications, but still touching the web. When I moved to Italy I started working on the web, really, I started learning Flash during…

Alexis: The good old days!

Frederico: Yeah, doing cool stuff, really, you know.. [laughs] and integrating Flash with all the server technology. Great technology to have back then was ASP, ASP .NET, and stuff like that. Then of course PHP and so on. In the very beginning I was kind of a Microsoft guy.

Alexis: Okay. You swung from Microsoft to open source! That’s a… [laughs]

Frederico: Yeah that was a great change, very happy to do that. Anyway, they were great days back then because I was able to enter in the beginning of all these things. In Italy I started really working for web stuff, because it was a web agency. I was also responsible for developing a CMS for this company. And so it was my responsibility to do that. And yeah, then I started really doing web stuff.

Alexis: So I have to ask, I was probably going to ask later on in the podcast, but since you brought up Italy and Poland, why did you make the move to Europe?

Frederico: [Laughing] Yeah, you know well, these things happen when you are at big steps, big changes in your life. Basically, I finished university in Brazil, I was already okay with the work that I had there, I was okay to change that already. As many normal people, I had a girlfriend and I was splitting with her, but then everything happened at the same time. And… we have, in our family, I have Italian citizenship…

Alexis: Interesting.

Frederico: So I had the opportunity to come to Italy to learn Italian, to learn Italian culture, to see Italy and so on. So I said okay it’s a great moment for big change so I did it for fun, back then, but it worked well, it was very cool. Italy was a great experience, something beautiful in my life.

Alexis: Very cool. How did you make the shift from Italy to Poland?

Frederico: Yeah, exactly. When I arrived in Italy, I met my wife.

Alexis: Aha! I had a feeling that your wife might have something to do with it.

Frederico: Women are amazing. They just take us anywhere in the world. So I met her there, and we lived there for a few years. When she got pregnant with our first kid, we decided to move to Poland because we were living in a country which wasn’t ours, without family or anything. We moved to Poland and stabilized in Poland.

Alexis: So you’re in Italy in 2003, roughly.

Frederico: Yeah, I was still in Italy. I actually arrived in Italy in 1999. And ‘till 2005 I was in Italy. In 2005 we moved to Poland.

Alexis: When did CKEditor come into the picture?

Frederico: Yeah, as I told you while I was working I was responsible for this CMS called Unicity. It was an Italian company. I was responsible for creating and taking care of this CMS. There were not, like today, many options for editors to use inside a CMS, inside web pages.

We still have it, I think it’s called eWebEditPro. It’s an ActiveX component, something very old. Something most of you guys probably haven’t heard about, you’re unlikely to have heard about these things! Basically it was a very… Microsoft, Internet Explorer technology… to include components inside web pages. Yeah, so we were using that component. It was a commercial thing. It was okay, but it was commercial, it was in ActiveX, and it was in a lot of technology we didn’t like to have. We were a little bit unsure about that. Then one day I said, okay I will try to find, you know, options. There was very little stuff there, really, and nothing with quality.

Then I said okay, I will just try doing this myself. Then I started coding a JavaScript editor. It worked pretty well, it worked nicely and it integrated with the CMS. So I did the job for the CMS. At the same time I said, “Okay, I’ll also take this opportunity to, for the first time, work on open source.” Which was something new for me. Open source was still something starting to be strong by then. So I was like, let’s try to do this open source for now, not just do this in a commercial way here for our needs. So I got an okay from the company to just run this project by myself, to have fun with it, to make it open source the way I wanted. In fact, I remember it was my baby back then, this project. I didn’t have kids, so I had this as a kid.

And then I was working on it during my nights or…

Alexis: Free time.

Frederico: …weekends, free time, all the time just working. When I had time I was just working on FCKEditor. In the end of 2002, I released the first release which was 0.8, released in March 2003. More than 11 years ago already. Yeah, that’s it.

Alexis: And I said wow, because you struck gold in a way, with your first open source project.

Frederico: I think that you know, Alexis, when you do something with passion… Many times as developers we do things with passion because we love what we do. We’re very lucky as developers, because being a developer… either you love it and then you can be good at that. Because if you don’t love it, you will not do much with programming. And so we’re very lucky. I kind of think that you get in love and when you do something that you love, you can do the best possible. And you’re okay to just spend as much time as you want on that. Your life can be just that and you’re okay, you are happy with that. And that was my situation there at the beginning. It was my life, my love, so it worked because of this as well.

Alexis: We have to mention you are not the only creator of CKEditor, FCKEditor back then, but also the namesake. How did you decide, “You know what? I’m going to name this thing after myself, it’s my baby so it’s going to have my name!”

Frederico: I should have called it Junior! It was kind of a joke, because while working at this company… when adding comments that were like personal comments, something from me to remember later, or to leave a note, it was always marked by my initials. The famous FCK initials.

I was okay with that. So I wanted a name for it and used the same approach, these initials. It sounded cool for me back then. It’s true that back then, I came from Brazil, I was just speaking Portuguese there, then I went to Italy, speaking Italian. English was something I was starting to use for real when I launched FCKEditor because I had to launch websites in English to start communicate in English, and so on.

I had really no feeling for English, like today. So I just gave it a name that sounded cool for me. Many in Italy, my friends.. they liked it. But then you know, like one year and a half later only, someone came to me and said, “You know Fred, this name is not as cool as you think it is, you know.” [laughing]

So, I figured out that FCK isn’t a thing that people like to have written everywhere.

Alexis: Missing one letter.

Frederico: Exactly! So I said okay. But by then, FCKEditor was already famous, already used. Two years later, in fact. So I said okay but I cannot do this change now, I don’t know, I was very worried about making the change in the name. I didn’t want to break something which was working.

Alexis: Name recognition…

Frederico: Yeah exactly. The brand itself. I said okay, this thing.. I still, I can’t.. when I have that for long.. until CKEditor 3, which was a very big change but that only happened in 2009. It was a very important release. We had a new website, new brand, we had a lot of things happening. So I said.. okay, since we have such a big thing, let’s take the occasion to fix this thing up. I went to the community to also grab opinions about how to change this and interacted a lot with them.

And I think I have chosen a name that works well because people were still able to connect it with the previous versions. So yeah, it was an unlucky thing in the beginning. But I’m very happy everything ended well in that sense.

Alexis: If it provides any comfort, I will say that I did not notice it was missing a letter, until today. I was just surprised that it was your initials at first, “Oh, that’s why it’s called that!”

Frederico: Exactly. But you know, it was just a fun fact. It didn’t disturb me so much. Actually, many people said they loved the name exactly because of that.

Alexis: Because all the other editors are so bad. [Laughing]. So you mentioned that you discussed with your company that you’d like to take this project open source, and you also mentioned they were very receptive to that idea. Was there any kind of trepidation, worry or backlash?

Frederico: No, not at all. It wasn’t a company which was living out of open source, or out of small components like CKEditor. They had, you know, this big CMS to build websites for big entities. So they didn’t care about the editor, they didn’t care about giving this as tools for competitors because they were not competing in the global market, they were very local, Italy only. They were fine. They didn’t see any possibility of conflict or whatever with that. And then also I took this as something personal, something I was working really, more outside work, than inside, so they were okay with that. As long as I was doing my job and making things work for them. So that was okay.

Alexis: At what point did CKEditor break away from this company? Maybe not break away, but at what point did CKEditor become a business?

Frederico: Yeah, well, business… It took long. As you said, you know, making open source a business, monetizing, having resources, to run this business around open source is very tricky. Very difficult in fact. In 2003 the project started there as an independent project, out of this company or whatever. So the project started, it started… but I didn’t have any money out of this thing, really. Later on, I started the usual, especially by then, the usual was just adding a “Donate” button or whatever so people could donate some money to the project to help the project grow and so on. For some good time, for a few years, it was just that.

For the first two years, let’s say. Then the project was me really, spending a lot of time on it and putting my money, we could say that, to run it. So, I was you know, maintaining websites, developing this, without any big source of money. Then the donations started to come. It was very cool to see this thing. I remember it was very, very cool. When you’re not expecting those things, then donations started to come in a very even way. Every month I was sure that something was coming. And every month was a little bit more, a little bit more. To the point where I said well, now we start to have some money that I can even maintain my life. But still, it was hard to do that. So I didn’t do that so much.

Then in 2004, 2005, with a company called Lingotek. I had the opportunity to do work for them. I don’t remember how much or how long it took, maybe 3 months’ work or 1 month’s work. Anyway, I did one job for them. It was related to editors for their translation interface, something very cool that we worked with them. These guys are from Provo, in Utah.

Alexis: Oh, okay!

Frederico: I had the chance to go there to meet these guys, wonderful guys, really it was very cool to participate on that. We were talking about America, and in the US the people invest in technology for real. I was able to do a little bit more money for this job. It was very cool. Let’s say that this project… I don’t even think the guys at Lingotek know of their importance to CKEditor. This project gave me resources to say, okay, now I can stop, and try to make CKEditor a reality. For real, really. To put my efforts exclusively in CKEditor. This was in 2005 in fact. I was able to quit everything else I was doing because I was already working as a consultant, so I quit everything there. I said okay, so now my life will be CK.

I had a little bit of money, but I needed a little bit of money to have for a few months and I was moving to Poland and the cost of life was also lower than Italy. Lots of variables happened to make this happen. Finally I was able to dedicate my full time to CK. In 2005, in fact. Following that I started to try to find solutions for.. to keep this thing, for me to live out of the project. I knew that money would be important for keeping my life, keeping the infrastructure of the editor and so on.

I was working, I started launching sponsorship possibilities inside our project so sponsors could give some money to have their logo on the website, to have their name in the changelog of the editor and things like that. Then few sponsors here and there started coming to help. Many companies came because they really wanted to help. Not only to make marketing on my brand or whatever, no. They wanted to help, really. So that was very cool. These guys were giving oxygen for this project to go on in the beginning. More of this started to happen, more donations started, more sponsors started to come. I started to have some good money to run my life.

I still always think, because of this marketing experience that I had from university, I keep, you know always planning what to do on the website, the communication, the logo, design, etc. I was working on all these things at the same time as coding. That’s also a very difficult part, especially for programmers. Many times we are just focused just on programming.. we cannot go out of the coding box. But all these details are very important. The communication, the logo, the strategy that you have… you must have a strategy for the project. All of those things are very complex and requires knowledge. i was very lucky to know a little bit of this.. so I was able to make the website interesting and also start thinking about other possibilities of revenue for this project.

The most obvious thing that happened was launching the commercial license. The idea around the project, running this as open source but having a commercial option for companies who would like to have a commercial license. I understood that especially back then, open source was still seen as.. companies were feeling not so..

Alexis: Comfortable with it, yeah.

Frederico: … comfortable with open source. Still. Today is pretty different. Back then they preferred to have a license where it’s commercial and to pay money. Because the fact of paying money already gives them a kind of guarantee towards me, the owner of the project. I had responsibility, and legal responsibility, because they paid for something. Some companies wanted to have these things. These things started to happen, which helped to develop the project. To a point where I was finally able to start hiring people. Then things started to grow faster and faster, and this was 2007. It took years, several years, really. But yeah, 2007, two guys joined me on the project.

Alexis: Now, I have to ask, you were doing development and marketing at the same time. I would assume that many developers, when they come to their very first hires, they would seek other developers to lend them a hand on that side of things. What were your first hires and why?

Frederico: Yeah, exactly. I knew that I was too limited on resources. My problem wasn’t not being able to do stuff, it’s having too much stuff on my hands, that was my problem. So I had to share a bit. Of course I also understood I was spending more and more time on websites, marketing, on licenses, legal and stuff… and also, imagine that, support also. Support started to happen. People contacting. Emails coming all the time. I was spending a lot of time on other things which were not only programming… and also programming a lot. IT was too much to have on my hands. I understood it was very difficult to start already having a bigger structure around the project. I went searching for developers.

CKEditor is a JavaScript project, so I went first of all for a JavaScript developer to help. Martin Kou, a very nice guy from China, joined me. So my first hire was a guy from China, in fact. Wiktor Walc, who still works with us here… entered as a PHP developer, because we also needed to do server side stuff. Because at the same time another thing that came to my mind to enlarge our commercial portfolio was launching CKFinder, which is the companion program to CKEditor. It’s a file browser, you need it to include images.

Then we launched CKFinder, which has server side background. So I needed people to help me on the server side. Wiktor came for the PHP stuff, for the websites as well, to give me a hand… things naturally started to develop more.

Alexis: When did you finally hire somebody who could give you a hand in marketing and that kind of thing?

Frederico: The whole thing has always been very focused on programming and developing. In fact, the company has always been very, very product-oriented, really. Focused on the product. I had this feeling… and I know this is important. That if I were to put more effort on making the product very good, and to understand what people want, to put all the efforts into the product, somehow we will make it happen in the market, we will be successful in the market. So for years, my focus was in the product. All the marketing around it was really the basic marketing, which you can consider as the website, and a sales platform on the website, totally automated. No sales people, no anything, totally automated. You can buy licenses online and that’s it.

We didn’t put too much effort on other things, just in the product. But then in 2012, actually 2011, I started planning this thing in 2012, not so… pretty recently, we had a shift in the company, really. Then I started building a bigger company. Actually in 2010 already started to join people to the company… now I remember better. In 2010 we started to have someone responsible for the marketing… then another person for administration stuff, another person for support.

We started to work on other parts of the project, we had already other developers working here, around Poland, also in Israel, we had guys working always… we didn’t have a bigger office by then. In 2012 we moved to this new office, which is bigger, we started creating a bigger structure, so now we have more marketing, we have a sales team, we have a new CEO that joined us in 2012 as well. Excuse me, in 2013. And so you know, the company… developed the backbone of the company in 2012.

Alexis: A lot of open source developers typically hire, at least in my experience, contributors who have been spending their free time contributing to the projects they’re working on. Is that something you did, or did you also, I guess, look more heavily towards external developers?

Frederico: We have a very specific… and this is something very interesting also regarding open source. The kind of project we have, we do a component. Just a single component, that’s our product really, to be used inside web pages, and to be used inside other systems, right. Usually those who touch CKEditor are developers which are very, very busy on their own systems. On their CMSes for instance. These developers don’t have much time to dedicate to that component. They really don’t want to spend time to have headache with that. They just want something they can pick, put that inside, it does the job. They have already lots of things to take care about. So this thing is changing a little bit right now, but right now really, people are spending more time on this… because they are more focused on making the editing experience better, to making the content produced by their systems better…. so they’re now spending time into components like CKEditors, they start writing their own editors and so on. But this happened only just now. Previously during these 10 years, maybe, people only wanted something that works. If it doesn’t work, they throw it out.

Alexis: Find a new thing.

Frederico: Yeah, exactly. It was very difficult, in fact, for me, to develop a community, a developer’s community around it, just because of the kind of project. I had to handle the whole development. I knew that I had to go out and find JavaScript devs that could join us, but without experience on the editor themselves, they had to learn everything. It was very complicated, in fact.

There was just one case, one guy who was with us since the very beginning, since 2003, Alfonso Martínez de Lizarrondo. He’s from Spain. I love this guy, really, he’s a very nice guy He’s always been with us. At some point i tried to get him more involved, but because of his personal issues, he didn’t want to join or change his job and so on. But it was one case really. It was one single case in years. I’m not as lucky as other companies for example. We’ve been very lucky recently to work with Drupal, which is one of the largest communities in the world regarding developers.

Drupal company is lucky because they can go around and just try to find people which are involved in Drupal and get them involved in their Drupal project. It’s easier. Of course, they also did a great job in Drupal to make this happen, of course, but it’s a different situation as well, a different kind of software. In my case… this is much more complicated.

Alexis: Has the community situation changed after a while, and what have you kind of done to try to remedy that?

Frederico: Well, We’ve been trying to get more updated when it comes to the tools that nowadays people use for contributing. For example, we were not on Github. In 2012 we moved to GitHub, we moved to Git in fact — we were on SVN. We started to have one person here who is dedicated to communicating with people, to going around, to understand, find people who are working on this and get these people more motivated, more involved in github, pull requests, try to give some feedback there. We try to be open in terms of getting other people involved. We’re also now getting more involved in the whole standards scenario regarding editing, which involves the W3C. We want to get more involved inside open communities. We are getting open source projects like Drupal which are big communities. We are open there also, to contribute from both sides and we are getting results out of these.

We are trying to find, to be open. I feel that our situation is more complicated, but we are seeing some changes, some results, more people interested in the editor, more people… trying to contribute. We are starting to finally have more quality contributions which is also very interesting. It’s also to note that the technology that we work with, which is JavaScript…

Alexis: It’s gaining popularity.

Frederico: … is now becoming popular. Now, I mean in the last few years, really. But still it’s very hard to find good JavaScript developers, even today. This is changing, we have more people, more people, but it’s very difficult to find. I always have problems finding people to work for me because.. it’s very difficult to find. This is also an additional complication. While a project in PHP is much easier to have contribution and contributors because of the technology than a project in JavaScript. Technology also makes a big difference.

Alexis: Speaking of hiring, what qualities do you look for in folks when you’re on the hunt for a new employee?

Frederico: I don’t like being very strict, we never like being so strict when it comes to the background in terms of university or how much you learn about that. Also, I believe because of me, my experience, I made something happen out of my life experiences in programming. I don’t have a degree in computer science or whatever. But for me, programming and technology was my life since I was 12. So this counts more. The dedication you have to that technology, the love that you have for it. Of course… some things are a sign, like your participation on… it’s pretty cool because today on the web, your profile is open! So you can see on your Twitter account, GitHub account, on conferences… So there’s many things that help to understand your likes, your loves.. this thing.

This is more important especially when you are talking about, as I told you, a technology which is hard to find people on that technology. So here I have to be even more flexible. I have to find people with passion, and then eventually even develop them or get them the knowledge really to become good developers. That’s it, it’s passion. Of course, experience. Some experience you must have with the thing you’re supposed to do. We’re lucky to find very good JavaScript developers who have joined us. But we also have cases that people who develop here inside… that’s cool also for us.

Alexis: Seems like CKEditor snowballed, if that’s a fair way to put it. How did you get the word out in the early days, and how has that changed over time?

Frederico: We now have a marketing team, a professional, around the editor. In the beginning, even if we have already people working for us, a team, around the editor… CKE has always been seen as a one man band because people are still seeing Frederico behind the editor. But this changed already a lot especially since 2012, because now we have a professional company with enterprise services around it, with a good support team, a good sales team, and we also have a marketing team, so we have people working everyday on this.

We do marketing a lot in terms of web presence. We have one person dedicated to social activity, which I feel is also very important. We have someone going around on our Twitter account, Facebook, spreading the word, really. We try to make ourselves as visible. We like to party for example here, we party very often. We like to show that we are doing these things. We go around showing these things. We also show participation with other projects. We like to show our face. We use a lot of social stuff for this as well because we are talking about developers. Developers are already very inside the whole social life, online social life, especially Twitter. Twitter is very used. We keep these things very light. We try to keep these things very light.

Alexis: I should mention that you were at the World Cup. And there were pictures on the CKSource blog and on your Twitter, of the team wearing the shirts to support your team!

Frederico: Yeah, that was a great surprise… I’m Brazilian so we were there having fun in Brazil. We Brazilians really enjoy football, soccer, or whatever you like to call it. I was enjoying there, really, one month with my family, friends. We also decided to externalize this thing a bit. The guys here in the office wanted to have fun as well. They enjoyed this, made a t-shirt. It’s cool, it’s very cool.

Alexis: I should probably mention this in the intro that if you’ve been in the web for any point in the past decade you’ve probably used CKEditor whether you know it or not.

Frederico: Hopefully, yeah! I’m pretty happy with the outcome, relally. I feel that we have a few competitors in the market, and we are very strong in the market in fact in terms of presence. We’ve been bringing in always innovation… it’s very important as well. It’s very important to keep innovating, bring innovation, always. Since the beginning, CKEditor has always brought innovation. Features which no one ever thought about. We just had lunch for example, and we just have features which are very interesting. Enrich the possibilities in tside the creation of content. And you cannot stop. Right now we are thinking about CKEditor 5 which will be a revolution for CKEditor. You must keep doing this, keep working on innovation because that’s technology. Technology is all about innovation. We must keep moving on this.

Alexis: What’s coming in CKEditor 5? Could you give us a brief overview?

Frederico: It will be a total reveal about everything. If you think about the web, in ten years, how much it’s changed? The websites that we  had 10 years ago, and the websites we have today.. we were talking about Flash. I remember during the ten years we passed.. websites were only made in Flash. But things change. Websites cannot just be beautiful today, they also must have very good content. And quality content. And content that will be on the website and to be other devices: on your smartphone, on your tablet.. who knows in the future where this content could be? So today, and this is very nice to see, people start thinking about content and the quality of the content and thinking about the future of the content. Not anymore about what is happening today with this content, but the future of it.. so they want to guarantee the content they produce today will be very valid in the future. Things change a lot. because now people start thinking about these things. In the past no one cares about that so much.

We want to change.. CKEditor also had this background, even in its current feature, version… the current features of the editor, you have a very full editor, with all the things we’ve historically had. Then the better version, we call the standards version, which isn’t as full-featured as the other one but it is much better for today’s creation of content.… it’s already a change. But we feel we need to do a lot more changes. Very focused on what today people want from editing inside web pages.

CKEditor 5 will be this big change. It will not be anymore what we have today, but better with other features. It will be a total reveal, really, a new thing. So we are talking about devices of course, but we are talking about features, we are talking about semantic content, about HTML5, about accessibility, about all the technology around content creation today. So yeah, it will be very interesting. It will be a lot of work for us, definitely.

In fact we are considering when we will have this. We are going to have two development lines going together. CKEditor 4, CKEditor 5, still living together for some good time. Because they will be very different approaches, really. The adoption of CKEditor 5 for those who are used to CKEditor 4 will take time. Probably will run two development lines at the same time, but really our intention is at some point in the future people will move to CKEditor 5 because it will be even better than CKEditor 4. It’s all about all the things I told you, about innovating, you know. And CKEditor 5 will be very, very big innovation step for our project.

Alexis: Now, you mentioned the editorial landscape has been changing as of late. For example in 2012, Drupal thought it might move to Aloha Editor, but eventually they said no, no, we’re going to stick with CKEditor. Can you walk me through what happened, how you reacted… is that something you pay attention to in other projects? Constantly seeing who’s moving where, who’s happy, who’s unsatisfied?

Frederico: Yeah, you must keep your eyes open going around and see what people want, see what’s going on there outside. I think that Aloha did a very good thing, they had a different proposal. With its limits or its quality, but anyway it was a very interesting proposal. It was different from CKEditor. That difference caught attention because it’s true that you know, for years, you had just the same kind of solution. Then these guys came with something different. It was not complete and good enough, really, for all needs that Drupal in that case had.

And then we were already working — when Drupal decided about going to Aloha — we were already working on something that we call inline editing, which is not anymore editing inside a box, but going directly within a page, clicking the contents, and then editing directly inside the page. This was the thing that Aloha proposed, and that Drupal wanted to have. But we had already that. But because of… we had one competitor which is very aggressive, we had to take some things a little bit hidden at the beginning of…

Alexis: Interesting.

Frederico: And this is bad, this is bad, I don’t like this thing, because we do open source so we should do everything open. But because of all the things that I told you, we don’t have a big development community anyway, so we could share as a out of curiosity thing, but not because others would really want to get involved. So we were ok to get things a little closed for a while. We did a mistake eventually doing this. We will not repeat this with CKEditor 5, we’re going to have things very open. Communicate, what are our plans, have people giving feedback on that. Because you know, we were almost losing our chance with Drupal because they decide to go to another solution. While we were already working on the thing that they wanted!

Anyway later on as soon as we brought inline editing to CKEditor 4, we released this. We went to Drupal and said hey guys, I know that you were looking for this thing. I know that you found already a good solution for that. But take a look at us, now we are doing this in a very very good way, in a very quality way, and they know our history already. We’ve been contributing for them for years, in fact we have been since 2009, I believe. Drupal contributors for all the CKEditor stuff, let’s say. And so, we’ve been following them. And so they started talking with us, they were very nice, we met some very nice people there inside Drupal. It worked out very well. Drupal also pushed us to develop very interesting features. For example, the widget feature that I was talking about, is something Drupal wanted to have. We decided to do this for them. It worked out very well, it’s one amazing feature that we have today.

I understood out of that case that being open source is also being open in terms of letting others understand what’s going on, what’s your plan and so on. We are trying to do this better now, today, in fact. CKEditor 5 will be totally open development effort. We’re gonna invite everyone to participate, and so on. Still, competition is a delicate thing. Open source is also very fragile. We cannot, you know, just… as any business, you go out of the open source freedom no money idea, you have to think business, as business for real. Like the others, the competitors are thinking about their business for real. You have to take care of your business and so you have to do some moves which are more business-like, less open source-like. But as I told you, we learned out of that experience and we expect to not do mistakes, in that sense, anymore. CKEditor will always be an open source project so we must be open.

Alexis: Now I’m curious. Is Drupal as a customer a kind of, a bigger impact for CKEditor in terms of notoriety and visibility? Or is it more of a concern in terms of income and revenue?

Frederico: Well, Drupal is not a customer, that’s one interesting fact.

Alexis: Mhm.

Frederico: Some things that happened to the CKEditor project, and it happened without any issue with money. For example, in the very beginning in 2007 when Oracle wanted to use CKEditor, I was alone coding it. I said, Oracle, ok, alright, let’s do it. I was not worried about the business impact of it, of the money that it could have out of it. For me, the word Oracle was important for the success of the project. I wanted to have them. And it worked well. Oracle started using CKEditor on several of their products. Later on IBM came because they heard about Oracle. IBM started the same talks with us, and we have lots of IBM products. So I want to have these things,  I was not thinking about the money, really.

Drupal is very similar. Drupal is something that I’ve always, I’ve always dreamed about working beside Drupal. Because Drupal is an extremely important software in the whole open source software environment. In the whole software environment. The whole world, in fact. Because it’s touching websites all around the world for very important entities all around the world. So my goal really, was being there, friends of these guys. I want to be hand by hand with them. That will be enough. I knew this would already give a lot for the editor even in terms of money or brand development, you know, so we were not counting on having any money out of this thing for real, directly from Drupal. But of course, we knew that CKEditor being inside Drupal, we know that we gonna have opportunities inside the Drupal environment because of this.

This is also something important. But on the other hand, and this is something very important, maybe half of the importance is split with this, is that we gonna have a huge quality user base using our editor. And this is something that always made CKEditor win. I believe this makes open source win over commercial applications. Because when you have a huge user base and you are just open to feedback from this user base, you have quality. There’s nothing to do. We have there our 10,000 tickets open in our CKEditor ticket system.

So this helps in the quality of the editor during the years. Because we have everyday people opening three, four, five issues every single day, every single day, because people want to contribute something back. And the easiest way to contribute is to at least going there and say hey, this thing should work like this and that. I don’t like this, or I would like to see this and that. So participate, in a sense. So for us, having Drupal is also very important because of this. We gonna have this huge testing base that will give feedback and just help us make our editor better.

Alexis: Alright, so transiting a bit more back to the team. How big has it gotten?

Frederico: Well, we are not a big company. We are not a big company. We are 21 people with me, in fact. We are not a huge company. But we are a good size for what we do. We do, in fact, one important product which is CKEditor, and we are doing well. We are doing well with the size. We have fun, and that’s the most important, I believe. And also we are able to… by building this company, I am able to give fun and good life to these 20 people. So it’s pretty cool to be able to do this.

Alexis: Are you all distributed or is everybody in Poland?

Frederico: Well, we have experience with these two Chinese guys… two guys in fact. Martin and Gary working for us from China. They were very cool developers really, very good. But we understood that the time zone difference was a little bit of a problem for us.

Also because of our size, especially being a small team, so at some point we decided to stay more closer in the time zone. And also, we like to meet, we like party, as I told you, so we wanted to have our team close, really. So we decided to keep more things inside Poland. In fact right now everybody is from Poland at least. there is one guy who just moved to Denmark and is working from there, you know, Piotrek is our team leader. But usually, you know, essentially, we have everybody here in Poland. But distributed inside Poland as well. We have inside the office we have around, I believe, 12 people, and around Poland there are other guys.

Alexis: Interesting! So it’s kind of a hybrid distributed model. Hyperlocal, in a way, yet also still distributed.

Frederico: Yeah. We don’t care much, we want people to get involved/evolved, but also we think about the quality of life of, for our guys. So you know, it’s ok to have someone working at home because some people prefer working at home. Many people prefer working at the office, it’s quite the opposite. It’s hybrid because of this as well. We don’t have to force everybody to be in the office. It’s working pretty well. We have tools today to help with working remotely. It’s not a big deal really.

Alexis: I also find it interesting that you’ve mentioned how CKEditor has had some difficulty with community, yet you value it so much. Maybe in part because of that, you know, keeping everybody together.

Frederico: Yeah, yeah, exactly. We’ve also built a community here, so yeah, it’s cool to have people together.

Alexis: Now, you mentioned the tools you used to collaborate. Would you mind telling us what you use? What tools, what your management stack is like?

Frederico: You know, really, it’s the basics. But the basics today are what people are using everywhere, right. You use distributed coding systems like we use Git, Github, and this is a very important tool. We developed an internal workflow for dealing with issues, and also for distributing our work, our development work internally. And everything is based on ticketing systems, and so we don’t even have to communicate a lot internally. We know more or less what we have to do, based on the ticketing system. We have the workflow based on tickets, so people go on tickets, work on tickets… we work always, around the tickets in development.

And so we use Trac today, as ticketing system, and we know that the place to share information is there. Then of course, we use Skype a lot to talk, and to share ideas, and we do peer review a lot as well, using always tickets and Git, we use Git a lot. So you know, things that are available and that people are using today. But really, basics, but the basics are very good today for working remotely. So that’s it. Still you know, we like to… at least twice a year people come here, have a big party… still we meet in other occasions as well. We go to conferences together, we do some things like that.

Alexis: I was expecting to hear maybe Hipchat, or Slack, but aha, Skype has usurped them!

Frederico: [laughing] Yeah, you know, you just get used to that and then you go ahead with that.

Alexis: So when you’re not writing text on the web and not using CKEditor, what do you use as your text editor for your desktop?

Frederico: [laughing] I use Google Docs, basically!

Alexis: Not for coding, though?

Frederico: [laughing] Oh for coding, excuse me… yeah, you’re talking about text, and so yeah. I use WebStorm. Here basically, we use WebStorm and Sublime, basically, as the main editors, let’s say. Both are powerful and anyone of course… we try to work in a kind of open source community way so each one decide what to have and how to do, how to code… we have very different kinds of guys here. There is Marek. Marek, he’s a very guy. He’s a Windows guy. And no one here is for Windows. But he’s a Windows guy, and he doesn’t use the mouse, he just use the keyboard… he’s kind of a crazy guy using Windows and keyboard only, you know.

Alexis: [laughing]

Frederico: So we have… you know, each one is free to just decide what to do and how to do it better. What’s important is for productivity. And of course, feeling happy. And you know that developers feel happy when they have things they way they like. That’s it.

Alexis: When it comes to pricing, what have you learned on finding the sweet spot, so to speak after adjusting all these years?

Frederico: In the very beginning, as I told you, we had a very automated system for everything, we didn’t have time to talk with customers. We just wanted a way to sell them things. So we just wanted people interested in our product or commercial licenses for example, to go on our website to find this by themselves, and go into the whole purchase system online. And so we didn’t have a chance to talk to a lot of customers. So our price was kind of low and fixed, very fixed, because of that.

Later on, we understood a lot of customers have different needs, different sizes… they demand different things from us. So we had to start developing communications channels with customers. So while we were still keeping this low pricing for the general offer, we started to be more open, to talk with customers, to customize better the offer to them. Then of course, things changed in terms of pricing because you know, you are more… you go on a case-by-case basis, and of course bigger companies are able to pay more. They demand more of course… more quality and more licenses, license terms, and so they pay more. So it’s very flexible now in terms of we have customers who pay much more than others, but also have much more than others as well in terms of commercial offers.

Alexis: Is CKFinder also open source?

Frederico: No, no, this was a kind of strong decision that I had in the past because okay, everything that happens around in terms of business is all to support CKEditor. We want to make CKEditor a successful open source project.

Alexis: Flagship.

Frederico: Yeah, so we couldn’t simply make everything open source because we are open source. I needed to take decisions that say okay, we need things that will support CKEditor being open source. So CKFinder will be a commercial solution because we need this money that CKFinder will generate to support CKEditor. So CKFinder came as commercial offer, and it’s doing well as a commercial offer.

Alexis: Okay. Are there any mistakes over the past decade you would not want to repeat?

Frederico: Well…hard to think… we always focus on the good parts. Well, other than the name change and name choice, let’s say…

Alexis: Well, maybe something that would help out other developers who are interested in taking an open source project and taking it into a business?

Frederico: Let me see if I can bring one good thing or good word…

Alexis: If not, they could be separate.. it could be a mistake you’d rather not repeat, and then your advice afterwards, not connected to it?

Frederico: Well, I would say that it’s important to really do your best to try to find financial resources to support a project. I understand that many people don’t have abilities to develop these things. I would tell that people shouldn’t be afraid to go around looking for help also when they need financial support help. There are professionals out there that know how to do this. I was lucky, but it took too much time, maybe, for me. So eventually one thing I could have changed in the past, is searching for help when it comes to money, somewhere else, to speed things up a bit. As you can see from the history that I told you, it took years really for things to happen. Several years for changes to happen.

Alexis: Did that mean investors for CKSource?

Frederico: Investors, eventually. Later on, I reached a point where I was okay to not have investors. But in the very beginning when things were starting to happen, if by then I could have, I would have involved someone else. Maybe today we will be doing even better. Or not, I don’t know, it’s hard to say. But I feel this is a point which is very delicate. I know also that nowadays competition is much harder because technology is everyday more important and everyday have more people doing this, so there’s much more competition.

So the time to market thing is very important, so you must do things fast. And to do things fast, unfortunately, you need money. Yes, so if I could recommend something, I would recommend thinking about these things, thinking about how to solve this problem, and not just dreaming about being able to solve the whole problem alone. It works sometimes, yes, but sometimes also you need some support from professionals.

Alexis: Is there anything I missed?

Frederico: Well, I think no? The future? The future is hard for us to talk about. I just see beautiful things for CKEditor. We are doing very well, the Drupal thing is just one step that we are doing for a great future for CKEditor. I will just tell that people should just keep watching us because it will be very cool, the things that are gonna happen. We still don’t know what’s gonna happen, but I’m sure it will be very cool.

Alexis: Did you ever think you could build a business on open  source? Let alone a business of this size?

Frederico: I didn’t plan this thing, I really didn’t plan it. I know that people today can just say okay, I will start a business out of open source, and let’s do this. Or that. People do this today. I didn’t plan this, this just happened naturally. I was lucky, probably. But also had my qualities that helped eventually to make this happen. But yes, I didn’t thought that I would have reached this stage. I’m very, very happy about this.

Alexis: Honestly, as I’m sure, more than half the entire Internet is.

Frederico: [laughing] Yeah, thanks Alex!

Alexis: So if they’d like to know more, they can visit cksource.com. Or follow you on Twitter @cksource. And if they’re curious about what you’re having for lunch, dinner, or football team, or should I say soccer, team you’re rooting for, where can they follow you on Twitter?

Frederico: Well they can follow us either @fredck, or at @CKEditor, @CKSource, we are very active there. Yes, I hope you gonna have fun with what you’re gonna find there. We are on Facebook as well, we are on Google+, everywhere…

Alexis: Everywhere you can be.

Frederico: [laughing] Exactly.

Alexis: And you can find Binpress at binpress.com and @binpress on Twitter. And you can find myself @alexissantos. Fred, thank you very much for giving us some insight on this thing that has again, I shouldn’t really use the word ‘infect’, because that is a negative connotation… but [laughing] has permeated the web so much.

Frederico: Alright, thank you very much, I’m pretty happy for the things that have happened to CKEditor and CKSource and its whole history. Really, it was a pleasure to share some of this information with you today.

Alexis: Thank you sir, looking forward to the future.

Frederico: Okay, thank you very much, Alexis, take care!

Author: Alexis Santos