25%

DISCOUNT

Use HAPPY8THBIRTHDAY25 coupon to get 25% discount on anything.
Promo expires 1 week from now.

25%

DISCOUNT

Backpack Is 8 Years Old Now šŸ„³ Hereā€™s Some History

I had this realization the other day - and it blew my mind. Eight years is a lot of time! To put that into perspective: 20% of new bus...

Cristian Tabacitu
Cristian Tabacitu
Share:

I had this realization the other day - and it blew my mind. Eight years is a lot of time! To put that into perspective:

  • 20% of new businesses fail during the first two years of being open
  • 45% fail during the first five years
  • 65% during the first 10 years

We're almost there, at the 10-year mark! More relevant perhaps is that most Laravel admin panels don't survive their first 2 years (we'll follow up soon with an in-depth article, it's super-interesting). But not Backpack, we've been around for 8 years now and we're still alive and kicking! šŸŽ‰

Weā€™re very fortunate to be here, writing this post. I want to thank EVERYBODY who bought a Backpack license, everybody who contributed to our codebase and everybody whoā€™s told people about our software. I am perfectly aware itā€™s thanks to YOU we get to do this, and weā€™re very VERY grateful. We literally couldnā€™t do this without you. šŸ™ You rock!

To celebrate these 8 years of Backpack, weā€™ll do two things:

  1. Have a HUGE discount campaign next month - subscribe to our article digest to be the first to find out. We do have to limit the amount of discounts - so itā€™s first come, first served.
  2. Tell you guys a little bit about out history. Walk you through our growth phases and the people who have influenced it the most. Even for those who are here since the beginning - I bet there are things to find out.

So here goesā€¦ hereā€™s The Story of Backpack, including the 3 years that preceded it:

ā€”ā€”

v0. Cornel (2012)

In May 2016, on my birthday, I distinctly remember my sister coming overā€¦ and me ignoring her for hours. Why? Because I was in a very productive coding spreeā€¦ I had been so for a few weeks, ever since I decided to fix ā€œmy admin panel problemā€, once and for all. You seeā€¦ my web dev agency was small back then - we were doing mostly small websites and web apps. We were starting a new project every month, if not multiple a monthā€¦ and every freakinā€™ time, we had to build the same stuff all over again for the admin panel: auth, datatables, forms. I had a new project coming up, and if I remember correctlyā€¦ my CTO back then (Eugen Tudorache) gave me the green light to build an admin panel library. So I absolutely ran with it. We were using CodeIgniter, and there was this great library called GroceryCrud which solved a lot of the problems we were having. So I put those together, did a lot of wiring so they matched what we usually needed, and boom: Cornel was born. We loved it, cared for it and used it for years, butā€¦ we never open-sourced it. Not from some evil plan of having an edge over competition (hell no), but becauseā€¦ like many devsā€¦ we were afraid to make our code open-sourceā€¦ and to be frankā€¦ we didnā€™t even know how!

v1. Viorel (2014)

Fast-forward a few years to 2014, and we decided to move from CodeIgniter to Laravel. It was my colleague Cristian Toneā€™s job to rewrite the whole thing, in Laravel. He did - and we called it Viorel. And with that, the core of the Backpack you know today was born. Hell, a few years ago I found a few comments in the code that made me realizeā€¦ that bit of code is from back then, from 2014! The comment read something like "sync function, only Tone know how this works" šŸ˜‚ It was truly a blast from the past. We used Viorel for a while, until we got the courage to finally polish it, generalize it and open-source it.

v2. Dick (2015)

In 2015, after making the decision to rewrite and open-source it, I remember talking to my partner (and CEO of our web development agency) Andrei Iordache about itā€¦ heā€™s a world-class copywriter, and functioned as our creative directorā€¦ so naming was kind of his thing. We did some back-and-forth when he finally came up with a brilliant name. He saidā€¦ ā€œFuck it, letā€™s call it Dick! I bet people will like itā€.

You see, back then the admin panel wasnā€™t a Composer package. It was an entire Laravel 5 repoā€¦ and we had the unique opportunity to ask people to do git push dick and git pull dickĀ  šŸ˜‚ It sounds immature, doesnā€™t it? Well for a couple of 20-year-oldsā€¦ ok fine itā€™s immature for that age tooā€¦ but we had fun, ok?! šŸ˜‚ I especially remember how much fun it was to write the website copy for it (see the old Dick website here). I have NO REGRETS over that name. In fact, I think itā€™s thanks to that name that some people tried it! And people did try it! Turns outā€¦ some people liked dick! And some people absolutely LOVED dick. They couldnā€™t get enough of it!

So yes, Dick started growing. Seeing people actually care about and use my softwareā€¦ that was enormous step ahead. You see, I had been trying to move from Ā« servicesĀ Ā» to Ā«Ā productĀ Ā» for years by then. I had built and launched about 7 productsā€¦ all failed miserablyā€¦ some stillborn, some died within months, some took years of work and still failed. So I had lot of experience of failing at a productā€¦ not much experience running a Ā«Ā successfulĀ Ā» product. And at the timeā€¦ and for our levelā€¦ it was a successful product! People contributed, used it and promoted it. Apparently people got a taste of Dick, they couldnā€™t get enough of it. Told their friends to try it!

But as happy as I was with Dickā€¦ there were troubles that needed to be addressed:

Problem 1. Devs loved the name at firstā€¦ but then got sick of it fast. In fact, multiple people said they love it in passion projects, but canā€™t use it for clients, because of the name. They were scared their clients might see it, and think they put it there themselves to mess with them. It wasnā€™t a professional name.

Problem 2. It was a Laravel installation, with a lot of things - the CRUD library, UserManager, NewsManager, LogManager and more. You couldnā€™t pick and choose what you want. Plus, updates were pretty difficult to getā€¦ and it sometimes overrode your custom code. Ouch! By then, Composer had proven itself and I was eager to split it up into distinct packages, one feature each.

Problem 3. Time! I was all nice and dandy that people were using my software, but it turns outā€¦ collaborating with dozens of people every dayā€¦ takes a lot of time. For a year or more, i was working 16h daysā€¦ first 8h for web dev clientsā€¦ then 8h for Dick, for free. I was lucky I was in my prime - I definitely couldnā€™t do that now. But after a few burnouts I realisedā€¦ this isnā€™tĀ sustainable. And it isnā€™tĀ fair. We need to find a way for Backpack to make some money, and become more professional.

So I thought if a different nameā€¦ and I came up withā€¦

v3. Backpack (2016)

Seemed like the perfect name for a collection of PACKages that help you build BACKends. Plusā€¦ I wanted Backpack to truly represent its physical namesake - to be useful, versatile and feature-packed. To have everything you need in your journey.

So I launched Backpack with the differences aboveā€¦ and after a lot of deliberation with a few heavy usersā€¦ decided to charge for it too. Since our audience was now also professionals who build stuff for clients, we had dual-license:

  • free for non-commercial projects;
  • ā‚¬19/project for commercial ones;

Some napkin math told me that would be enoughā€¦ that 100 paid projects per month would basically cover my time spent on it (I didnā€™t value my time back then šŸ˜…), and that was good enough for me.

And with a lot more work and patience and care, Backpack took off. We were fortunate enough to get A LOT of help from the community - and I do need to give a big shout-out to Owen Melbourne, David Lloyd and Abby Jansen here, who really helped out almost daily, for months or years. Felt like PRs and issues were coming inā€¦ faster that I could read them. Our charts for number of downloads was going up only. We were talked about in all Laravel-related communities, despite some choices our stack being despised by some (ehemā€¦ jQuery). We were doing something VERY right.

And yetā€¦ we were doing something very wrong. We were making a few hundred bucks per month, at most. People were using Backpack a lot (we had download stats now) but they werenā€™t paying for it. Lesson learnt: if you donā€™t force someone to pay for a productā€¦ theyā€™ll find a way not to pay.

So as good as Backpack v3 wasā€¦ something had to change. Sure, we needed a version bump in our dependenciesā€¦ and to push some fixes that contained breaking changesā€¦ but more than anythingā€¦ we needed a business model change. We needed to actually start making money. I had years of 16h workdays by now, and enough burnouts that I stopped counting. And despite not making enough money to cover my time... we were being judged as a paid product.

Backpack v4 (2018)

I donā€™t quite remember what it was that v4 brought new in terms of features (later edit: it was Bootstrap 4, Widgets and more) but I remember what it did have in terms of business: We kept the dual-license, but we started actually enforcing it. Both free and paid users needed to have a license code, for their software to work. Free users could get it by filling in a formā€¦ paid users could get it by purchasing it (it should have been $39/project by now).

Fun fact: the license-checking mechanismā€¦ only checked that there was a license keyā€¦ not the actual license itself šŸ˜‚ Itā€™s ok to say that now, right? I thoughtā€¦ if there are people who are upset for us forcing this license-check mechanismā€¦ Iā€™d give them an easy way to hack itā€¦ and continue using it for free.

That doesnā€™t sound very smart, does it? I just said a lesson I learned in v3 was that Ā«Ā if you donā€™t force people to pay, they wonā€™tĀ Ā». Alas, I didnā€™t learn it well enough. But... it worked! More people paid, because it wasnā€™t public knowledge the licensing system was a ruseā€¦

We could grow our team a bitā€¦ this is where our oldest core team member (outside me) came in - Pedro Martins. Pedro had fallen in love with Backpack and was submitting contributions anyway, so I was eager to ask thim to come onboard, and help me carry the load.

But our licensing system also generated another problemā€¦ we were manually approving free licenses! Every day, dozens of people were applying to get free licenses. So it took me hours every day to go through themā€¦ judge themā€¦ and issue the licenses. We had automated it as much as possible, but it wasnā€™tĀ feasible for us to keep doing this. Every free user was costing us time to acceptā€¦ so much time in fact, that we ended up hiring someone to do this alone - part time.

Sounds like a bad system? Thatā€™s because it is! So bad in fact that we were covering our small (very small) salariesā€¦ but thatā€™s about it. We couldnā€™tĀ think long-term or do any useful things to level-up our software, because we were spending all of our time on the free users.

Did we try other things? Of course we did. We tried consulting. We tried ads. We tried many things. Nothing worked. So after 2 years of grinding itā€¦ we saw it for what it wasā€¦ a bad business model. So we decided in the next versionā€¦ weā€™ll do things differently.

Backpack v5 (2022)

We finally took the leap, and changed our business model form dual-licenseā€¦ go open-core. Our most used features would be part of the open-core, which would be MIT-licensedā€¦ and our other features would be addons - some free, some paid.

This was a HUGE boost in revenue. It provided the financial security we needed, to know we can do this for living, and lead decent lives. It allowed us to increase the team again, bringing in first Antonio Almeidaā€¦ then a year later Karan Datwani, Jorge Castro, Mauro Martinez, Mohammad Emran and Munjal Mayank. Add to that Vali Dumitrescu for the admin stuff andā€¦ yes, we tripled our team in one year šŸ¤Æ We were on a roll! And thought it didnā€™t work out with all of the people here, we were pretty proud of what we had achievedā€¦ and the amount of stuff we were able to put out. For the first time everā€¦ we were doing things we had only dreamed of: videos, blog posts, Twitter posts, new features every month šŸ¤Æ

Did we need to change anything at this point. Yes. We wanted to refactor everything. To modernize it, and lose some tech debt we had gathered over the years. But we couldnā€™t do that. Our customers were very clear with their feedback - the v4 to v5 upgrade was brutal to those who had complex projects, so going forward we should keep breaking changes to a minimum.

Backpack v6 (2023)

Needing to do some breaking changes anyway and bump dependenciesā€¦ we took advantage and polished a lot of our code, removed old versions and refactored what was needed, in order to be able to build the most-requested features.

We added themesā€¦ which was a flop. We expected people to create custom themesā€¦ but noone did. We added custom operationsā€¦ which was a flop. We expected people to create custom operations, not a lot of people did (though itā€™s really powerful feature).

So one thing we learned in v6 was that sureā€¦ customers can request featuresā€¦ but that doesnā€™t mean you must build them. A lot of timesā€¦ itā€™s better to help customers scratch their own itch in their projects, rather than build and maintain a feature for everā€¦ because 1% of your users might use it a few times. Going further, weā€™ll be much more careful with doing BIG features and rewrites. The way we see it, Backpack is feature-packed alreadyā€¦ in fact, thatā€™s one of the reasons people love Backpack - because it offers out-of-the-box most features an admin panel will need.

So weā€™re happy to considerā€¦ Backpack has reached maturity. Yes weā€™ll still add features - in fact weā€™ve been launching new features every month - Antonio and Pedro make sure of it šŸ˜‰ But we wonā€™t be bringing any major changes any time soon. In fact, the direction is the opposite - for Backpack to become a Ā«Ā boring technologyĀ Ā» like PHP, Laravel and jQuery. Technologies you know you can rely on, because theyā€™re battle-tested, time-proven and stable.

Backpack Today (2024)

And that takes us to today. In 2024ā€¦ Backpack is doing good. Sure weā€™re not becoming millionaires any time soon. Sure we have a lot of stuff to do, optimizations, refactors, restructuring, recalibrating. But overallā€¦ weā€™re proud to be in the position of still being here, 8 years later. And having no doubt weā€™ll be here to celebrate 10 years and 15 years and more. Weā€™re a small but sustainable software companyā€¦ and we expect to grow a few times over after we learn some marketing šŸ‘€šŸ¤ž.

Thank you for being part of this journey. Thank you for contributing, with your money, time, ideas or attention. Weā€™re super-grateful to serve customers that are just like us - itā€™s a dream come true. And thank you for reading my rambling so farā€¦ I did NOT expect you to šŸ˜‚ But if our history was interesting to youā€¦ so will our future. We have BIG plans, so keep an eye on us.

To end, yes, weā€™re doing a huge promo campaign next month. Subscribe to our weekly blog digest to find out when it starts, and grab yourself a hugely discounted admin panel. And feel free to buy years in advance at that discount, weā€™re not going anywhere.

Thanks for being a part of this. Cheers!

Want to receive more articles like this?

Subscribe to our "Article Digest". We'll send you a list of the new articles, every week, month or quarter - your choice.

Reactions & Comments

What do you think about this?

Congratulations on 8 years!
Thank you, Brian! Here's to 8 more! šŸ»
Many Congratulations to Team Backpack for 8 Years mark. Keep growing. Keep shining. Cheers.
Thanks for bringing your energy and enthusiasm, Munjal!
Congratulations! I have been using Backpack since v3 and I am happy for what you have achieved during the years and wish you even more success. You totally deserve it with all the effort and attention you have put into the projects.
Thank you Dimitar šŸ™ Your efforts have been VERY appreciated as well. We're super-grateful for people like you, who help other people in our community!
Congratulations on your 8th years and best wishes for the 16th and 32th years :)) . It was such a great article to read. Helped me a bit to understand the harsh nature of adjusting the balance between open source and earning. One question though, as much as I liked the idea of slowing down the features and making it a boring product šŸ˜… sounds nice to keep it rock solid and stable. Wonā€™t it affect the income?
Thank you Evrim šŸ™ We won't stop on adding features, we just don't plan to add any BIG ones... mostly because there aren't many BIG features that are worth doing. That most people would use. So we'd rather spend our time making our existing features... easier to customize. To be honest, I don't think "new features" affect product sales at all. Imho people don't buy Backpack because of the new features, but because of our core/pro features, that we developed a long time ago, and have been polishing and polishing. Every new feature only affects like 1-3-5-10% of users, so we get diminishing returns from them. This has been more and more obvious since we started launching them as add-ons - we can see how many projects use those.
WOW, what a journey! šŸ‘šŸ‘šŸ‘šŸ‘ I remember when I first tried your *initial name* product and it was fun šŸ˜‚. I am still using BackPack and love it! Thanks for sharing BackPack story itā€™s very inspiring.
Haha, thanks for sticking with us for so long Stefan! Dick was a lot of fun, yes šŸ˜…

Latest Articles

Wondering what our community has been up to?