There’s been so much hype about no-code and low-code tools. What they fail to address is that seasoned developers choose code deliberately, despite its cost and complexity. Yes, it’s time consuming, and Yes, developers are expensive to hire. But in this view it’s worth it: the full range of freedom, support from the open source community, and lower costs at scale are impossible to match.
My own opinion here is a bit dramatic: sharing source code freely on the internet is one of the most powerful traditions of our lifetimes. The open source movement is humanity at its very best. Developers across the world share patches, updates and new concepts; the cream rises and Ping! You’ve got the most secure user authentication in the world, for free, complete with a plethora of tutorials on how to use it (Thank you, Devise contributors!).
So when people come along with a pitch about a no-code platform – a business that takes away the thing developers care about the most – yeah, we are less than thrilled.
But let’s face it, aren’t we at least a little intrigued by that Zapier integration that claims to be up and running in a few minutes?
The thing is, seasoned developers value flexibility above all else. Will this tool get in my way a year from now? Will this get expensive once I throw real volume at it? Will l have to learn a specialty tool my next job won’t support? With the Zapier’s, Celigos, Mulesofts, etc. of the world, the answer is probably Yes. Which makes the tool a No.
What if choosing the open source path didn’t mean giving up control of your source code in the first place? Giving users their source code is more a business model decision than anything technical; after all, if we give the users their source code, what’s going to keep them on our platform?
What I want is a platform that your aspiring dev can use that helps them make *fantastic* backend apps. An environment that encapsulates best practices, a tool the product and solutions teams own, and that engineers are excited about. After all, it’s the senior dev that gets called when people get stuck, and what situation are they stepping into? We’ve all had that awkward moment absorbing the spaghetti a new dev wrote, as we search for the words to let them gently know that what’s broken is, “everything”.
Do we have to give up our source code for that combo of flexibility and usability? Absolutely not.
Do we need to pioneer a new model, where low-code and open source meet? Absolutely, unapologetically, unabashedly, Yes.