The low-no-code series - Directus: Skip spaghetti solutions, sort the special sauce at source
The Computer Weekly Developer Network gets high-brow on low-code and no-code (LC/NC) technologies in an analysis series designed to uncover some of the nuances and particularities of this approach to software application development.
Looking at the core mechanics of the applications, suites, platforms and services in this space, we seek to understand not just how apps are being built this way, but also… what shape, form, function and status these apps exist as… and what the implications are for enterprise software built this way, once it exists in live production environments.
This piece is written by Ben Haynes, CEO of Directus – a company known for its n open-source Headless CMS with the flexibility and power of a data API.
Haynes writes as follows…
Data democratization and the idea of Citizen IT has evolved as a way to enable business users to access and use data faster, to keep pace with market demands – and no-code platforms are a cornerstone of this effort.
Since no-code platforms provide business users with a visual, drag-and-drop interface, they eliminate reliance on technical staff, saving time and resources while accelerating innovation.
Spaghetti code solutions
But here’s the rub – the majority of no-code platforms today have been built without considering the underlying technical specifications and standards – rendering spaghetti code under the hood.
By focusing only on the no-code interface to eliminate complexity for non-technical users, these platforms [can, arguably] create a lot of technical debt, which is counterproductive to innovation over the long term.
Take WordPress, for example.
WordPress was arguably one of the first big no-code platforms on the web and it revolutionised the way people build websites. Anyone – even a mom-and-pop shop – could drag and drop visual elements around to create a customised experience, without the help of an engineer. It looked decent on the front-end, but lurking behind the interface was a rat’s nest of piecemeal code, hundreds of plugins cobbled together and a disorganised, proprietary datastore. To modernise the application or add features meant burning it down and starting over and scrapping all of the time and effort invested in creating it in the first place.
Focusing only on the no-code front-end is a stopgap.
You’re enabling technical users to access and leverage data faster, but you’re painting yourself into a corner.
Developer-first
While no-code apps are the way of the future, they can’t be designed from the top down. It’s essential to take a developer-centric approach and build a strong technical foundation first, to ensure that whatever no-code capabilities are layered on top, what’s under the hood is technically sound.
This was, even if we do have to deal with some spaghetti to deal with, we know that the sauce – well, let’s say the source sauce – is properly made.
If this is accomplished, non-technical users can leverage the no-code front-end to build experiences and apps the right way, eliminating technical debt and creating a project that can be iterated upon and evolve to meet the business’s changing needs, without rebuilding from scratch.
Building a no-code platform the right way requires an in-depth understanding of the technical and user requirements, and using those as guardrails to inform how the no-code application should operate. It should be unopinionated, giving engineers more flexibility to design the platform the way they see fit, rather than having to adhere to a specific framework.
Don’t horse around
Building a no-code platform without first considering the underlying technical requirements and specifications is putting the cart before the horse – you won’t get very far taking this approach. Requirements from IT must bubble up to the no-code front-end, so that when non-technical users build their experiences, engineers can seamlessly continue that work within an organised, scalable and extensible system.
Following this approach, these previously disparate teams become more deeply integrated — working together to build better products, more quickly.
While today’s business users are amassing an impressive amount of technical expertise, technology continues to evolve rapidly, outpacing their ability to keep up.
As such, no-code is absolutely the future for the modern enterprise. But to be sustainable, no-code platforms must be designed from the ground up with considerable forethought. A developer-first approach will empower no-code platforms with longevity and broad applicability, unlocking the true power of data for propelling your business forward.