4 ms·
No-code or low-code still means you're creating software, even if you're using a drag-and-drop UI to do so. And if you're building software, you're going to wan
by raviparikh 4y ago
No-code or low-code still means you're creating software, even if you're using a drag-and-drop UI to do so. And if you're building software, you're going to want things like version control, environments, code review, etc. Unfortunately, most of these tools have zero ability to do these things, or have really half-baked imitations of them, and as a result the apps you've built in no-code/low-code are unable to scale as your company grows.
I co-founded a company called Airplane (https://www.airplane.dev/ https://www.airplane.dev/) which is essentially a low-code platform for building internal tools. But unlike other low-code platforms, the underlying representation of the stuff you build in Airplane is still just normal Python/JS/etc code that you can put in your monorepo, version control, write unit tests against, etc. As a result, there's a lot less vendor lock-in and eng teams can collaborate better at scale. You also don't hit the complexity ceiling that this article refers to.
I don't think Airplane needs to be unique in this regard. Other low-code platforms could allow user-friendly drag-and-drop interactions while still having underlying code-based representations that allow users to get the best of both worlds. I think more no-code/low-code platforms will be built in the future with this in mind.
- easrng 4y agoThe Airplane website gets cut off at the bottom on my laptop screen and because of how you overrided the scrolling I can't scroll down to see what I'm missing. (Edit: actually I can scroll down but it still doesn't look good having it cut off like that.)
- raviparikh 4y agoSorry for the trouble! I don't love the scroll effect either actually. We're working on redoing the website right now and will be getting rid of that.
- bmitc 4y ago> I don't think Airplane needs to be unique in this regard. Other low-code platforms could allow user-friendly drag-and-drop interactions while still having underlying code-based representations that allow users to get the best of both worlds. I think more no-code/low-code platforms will be built in the future with this in mind. I personally don't feel like this is the future. It's similar to storing a Word document's XML in source code. The way the visual editing and thinking works doesn't map to the text-based storage format, which then makes source code control little more than backup since it becomes difficult to tell what actually changed. Maybe this doesn't apply to Airplane though, so what I'm saying is more general for visual tools and programming languages. There's no reason why visual tools and programming languages can't have visual comparison tools. Text is not the end all be all for things that can be compared.
- hoten 4y agoComparing different versions of a document is separate from keeping track of its revisions (thus providing reproducible builds), and the fact that it is not a text file doesn't negate the utility of the latter. For example, you can give tools like 'git diff' a custom command to run to compare certain files, such as a visual diff tool specific to a WYSIWYG document format. Even though existing source control tooling leans heavily towards text files, that doesn't mean they aren't still useful for binary files.
- glouwbug 4y agoI love all the subtle segues we do into our personal projects and side gigs on HN
- hinkley 4y agoYou do? Can you let me know when you see one?
- mathgladiator 4y agoIt's great because we can explore a space wider. I'm building a new platform, and im curious to check out anything in this space.
- beachy 4y agoThese are good points. I have seen this over and over again - e.g. in a SaaS which is data configured, how do you a) develop and test your work in a sandbox instance, then b) ship those changes across to a prod instance. This is especially complex in highly data driven platforms, e.g. when you can set up custom fields, then base your custom screens on those fields. Then you want to move a screen from one instance to another and it is dependant on several custom fields which may or may not be already present, but may not be at the latest version. Unfortunately virtually no customers nor RFPs ask about these things, so they are a low priority until late in the piece and most platforms do a shit job of it. Your approach is interesting, though most customers in our space at least would blanch if you said words like Python or JS to them, and would not know their git from their got.
- swatcoder 4y agoDon’t fret, Airplane is far from unique in that. Using code as the underlying format for low-code/no-code products is common and long-practiced; sometimes editable and exposed to the user, sometimes just to take advantage of existing code/text tooling. People have been building NCLC systems for decades, but they tend to thrive best when they settle into a specific domain focus. At that point, nobody outside the domain hears about them and nobody inside the domain even thinks of them in the terminology of “no-code low-code” If you start squinting though, you can spot them all over the place.
- smaudet 4y agoThis is what the concept of DSLs are/were... Famous example, Photoshop. UI that makes complex things seem simple...and a scripting language under the hood which ties into the (incredibly complex) internal operations, for the multitude of things you really can't do in a UI... and instead you get "plugins" with specialized code doing those complex, not possible to generalize in a simple UI, tasks.
- a4isms 4y ago> No-code or low-code still means you're creating software, even if you're using a drag-and-drop UI to do so. And if you're building software, you're going to want things like version control, environments, code review, etc. Unfortunately, most of these tools have zero ability to do these things, or have really half-baked imitations of them, and as a result the apps you've built in no-code/low-code are unable to scale as your company grows. This. A phrase that captures this sentiment is that no-code and low-code is "Duck Programming:" It may be marketed as being not-programming, but if it walks like programming and swims like programming and quacks like programming, it's programming. And the code itself is just part of the practice of programming: https://raganwald.com/2012/01/08/duck-programming.html https://raganwald.com/2012/01/08/duck-programming.html HN discussion: https://news.ycombinator.com/item?id=3442419 https://news.ycombinator.com/item?id=3442419 (The original submission was on a now-defunct site, the link above is current.)