It’s the Future

You may have heard of “low-code” platforms, or you may not have.  They’re worth knowing about because we’re about to move away from human software developers re-inventing the common aspects of web and mobile solutions, and then re-re-inventing them again as framework fashion shifts…  Humans are great, but they should be working on the really important and interesting parts of your project and not on the “every app needs this stuff” parts, and probably not on the security aspects of a project either.

In short, low-code platforms are forging the path to the future; a future where humans do what humans are best at, injecting creativity and really understanding what people want from a solution.

Alright, so that’s a broad, forward-looking position.  But let’s talk about what low-code can do today, and why you might want to look more closely at what it can do for you – whether you are a developer, product manager, in charge of the TCO, or in fact trying to “get that app” you’ve been dreaming up over the past few years.

Low-code

The term was coined in the 2016 Forrester Low-Code Platforms Wave and has since become the dominant term in the industry.  Forrester define low-code as:

Products and/or cloud services for application development that employ visual, declarative techniques instead of programming and are available to customers at low or no cost in money and training time to begin…

The key is that “low-code” doesn’t have to be “no-code”.  The emphasis is on productivity, efficiency, predictability, and low build/lifetime costs.  But that doesn’t have to be at the expense of integration capability, extensibility, platform lock-up or the ability to write code when you need to, or where it really makes sense to.

Low-code is not a new area.  In fact it is an area whose maturity is timing-in nicely with a growing demand for digital transformation, going mobile and becoming efficient, and with a growing acceptance of the role of artificial intelligence (AI) and automation in all of our futures.  The most well-established and successful low-code players have been active for upwards of 15 years, and the rubber has really started to hit the road in the last few years.  We are now at a time when businesses must consider whether their traditional approach to software development is capable and appropriate for a future that demands rapid transformation, consistently high security standards, and emphasis on human creativity rather than repetitive tasks for expensive resources.  Low-code solutions seek to answer that question.

Helping Developers

Essentially low-code application development platforms help developers by:

  • Automating things that you otherwise have to do manually, for each new project (think setting up servers, databases, designing for security, designing a reasonable UX, etc);
  • Applying meta-programming techniques to quality, performance and security-check “code” before it has a chance to cause problems;
  • Integrating with existing in-house and external systems and data sources;
  • Allowing the rapid creation of slick, functional UI/UX, without having to retain a digital design team;
  • Providing strong DevOps capabilities and integration, to vastly improve the experience of ongoing solution ownership;
  • And the list goes on…

Helping the Business

They help developers, but also they help businesses and stakeholders.  Why? Because stakeholders care about things like:

  • Ensuring predictability of delivery time;
  • Minimising project surprises;
  • Reducing development costs to somewhere well below previous bad experience;
  • Having a much lower lifetime cost of ownership (TCO) for each application (like one third of the level you are used to);
  • Being able to retain a relatively narrow, full-stack DevOps skillset that doesn’t keen changing like fashion every year; and
  • Actually getting a production-quality, secure solution to market on or before stakeholders run out of patience and budget.

But How?

Here are some further headlines on the way in which the best low-code platforms actually help achieve things like this:

  • Full-stack visual development and DevOps (yes, full-stack, soup to nuts);
  • Use of meta-programming concepts that developers already understand:
    • Use your existing Object Oriented (OO) development knowledge, from pretty much any language/framework, and hit the ground running;
    • Take your RDBMS knowledge, from any particular database technology, and just start implementing – everything is familiar;
    • Write custom SQL when you really need to, or when you want to do something non-standard;
  • Get pretty and functional UI/UX right out of the box via drag and drop:
    • Customise that UI/UX with full Javascript, CSS3 and jQuery support when you want full control;
  • One-click automated deployment with continuous integration (CI), continuous delivery, and super Agile user feedback sprints;
  • Draw on libraries of pre-rolled components to extend functionality, refine the UI, and integrate other data sources and systems – all just plug and play; and
  • Focus on what’s important and unique to this application, and minimise the time spent on things that all applications need.

Mobile Low-code?

This is where it gets really interesting.  I guess it is easy enough to imagine how this sort of thing works for traditional web-app development – the sort that targets the desktop browser and actually works well enough on mobile also.  But what if you are after a mobile-native experience, with access to all the mobile UX, device sensors, offline storage/sync, push notifications, and deployed in the usual way through the App Store or Play Store?  Let’s face it, there is a difference between a responsive web-app and the experience of a mobile app designed expressly for the mobile experience.  Well, leaders in the low-code space, like OutSystems, have some fantastic capabilities for mobile app development in their arsenal.  Yes, you can do all of the things you need to do to produce a fantastic, functional, cross-platform mobile app, from the comfort of the same low-code IDE you use for all your other apps.  Think of the team-wide productivity that flows from a single skill-set that can write, deploy and DevOps both desktop browser and mobile native solutions, all from the same place.

Leading the way

There are now a number of participants in the low-code space – each offering a slightly different angle.  Forrester and Gartner are two entities that help distinguish the offerings, capabilities, vision and maturity of the various products and approaches.  OutSystems appears at the top-right of the two Forrester waves, and of both the Gartner “Mobile App Development” and “Enterprise High-Productivity Application Platform as a Service” Magic Quadrants.  They have invested heavily in “low-code without lock-in” and in mobile-native applications development, and they have an ambitious roadmap that includes micro-services and containerisation.  Plus, they are directly supported (by us!) right here in New Zealand, for both on-premise and cloud-based rapid web and mobile development.  We think you should take a closer look.

The Bottom Line

Low-code is a well-established and recently blooming solution to the historic experience of overdue, expensive development projects that cost even more to own and run than they did to develop.  Low-code is a reasonable and predictable response to paying for expensive (no doubt skilled, and lovely) humans to do “I’m not quite sure exactly what, but it must be important or it wouldn’t have taken so long”, on each new project.  But more than anything, low-code helps the best of your people (developers, product owners and stakeholders) really focus on what’s important; to get what they need as quickly as possible, to worry a bit less about the security of each new app or web site, and to get on with making the business more efficient, effective and a great place to be.

Talk to us about how quickly and easily you can get started with low-code today.  We’d love to help.

OutSystems