Non-programmers are building more and more software around the world – a computer scientist explains “no-code”
Traditional computer programming has a steep learning curve that requires learning a programming language, eg C/C++, Java or Python, just to create a simple application like a calculator or a Tic-tac-toe game . Programming also requires substantial debugging skills, which easily frustrates new learners. The study time, effort and experience required often prevent non-programmers from creating software from scratch.
No-code is a way to program websites, mobile apps, and games without using codes, scripts, or sets of commands. People learn easily from visual cues, which led to the development of “what you see is what you get” (WYSIWYG) media and document editors as early as the 1970s. WYSIWYG editors let you work in a document as it appears in its final form. The concept was extended to software development in the 1990s.
There are many no-code development platforms that allow programmers and non-programmers alike to build software through drag-and-drop graphical user interfaces instead of traditional line-by-line coding. For example, a user can drag a label and drop it onto a website. The no-code platform will show what the label looks like and create the corresponding HTML code. No-code development platforms usually offer templates or modules that allow anyone to build apps.
In the 1990s, websites were the interface most familiar to users. However, building a website required HTML coding and script-based programming which is not easy for someone lacking programming skills. This led to the release of the first no-code platforms, including Microsoft FrontPage and Adobe Dreamweaver, to help non-programmers build websites.
By following the WYSIWYG mindset, non-programmers could drag and drop website components such as labels, text boxes, and buttons without using HTML code. In addition to editing websites locally, these tools also helped users upload the built websites to remote web servers, a key step in getting a website online.
However, the websites created by these publishers were basic static websites. There were no advanced features such as user authentication or database logins.
There are many current no-code website builder platforms such as Bubble, Wix, WordPress, and GoogleSites that overcome the shortcomings of early no-code website builders. Bubble allows users to design the interface by defining a workflow. A workflow is a series of actions triggered by an event. For example, when a user clicks the save button (the event), the current state of the game is saved to a file (the series of actions).
Meanwhile, Wix has launched an HTML5 site builder that includes a library of website templates. Additionally, Wix supports modules – for example, analyzing visitor data such as contact information, messages, purchases and reservations; assistance in booking hotels and vacation rentals; and a platform for independent musicians to market and sell their music.
WordPress was originally developed for personal blogs. It has since been extended to support forums, membership sites, learning management systems, and online stores. Like WordPress, GoogleSites allows users to create websites with various built-in Google functions, such as YouTube, Google Maps, Google Drive, calendar and online office applications.
Mobile games and applications
Apart from website builders, there are no-code platforms for developing games and mobile apps. The platforms are aimed at designers, entrepreneurs, and hobbyists who don’t have a background in game development or coding.
GameMaker provides a user interface with built-in editors for raster graphics, game level design, scripts, paths, and “shaders” to represent light and shadow. GameMaker is primarily intended for creating games with 2D graphics and 2D skeleton animations.
Buildbox is a no-code 3D game development platform. The main features of Buildbox include image drop wheel, asset bar, options bar, collision editor, scene editor, physics simulation and even monetization options. While using Buildbox, users also have access to a library of game assets, sound effects, and animations. Additionally, Buildbox users can create the story of the game. Next, users can modify game characters and environmental settings such as weather conditions and time of day, and change the user interface. They can also animate objects, insert video ads, and export their games to different platforms like PCs and mobile devices.
Games such as Minecraft and SimCity can be seen as tools for creating virtual worlds without coding.
The future of codeless
No-code platforms help increase the number of developers, at a time of growing demand for software development. The lack of code appears in areas such as e-commerce, education and healthcare.
I expect no-code to play a bigger role in artificial intelligence as well. Training machine learning models, the core of AI, takes time, effort, and experience. Code-free programming can help reduce training time for these models, making it easier to use AI for many purposes. For example, a no-code AI tool allows non-programmers to create chatbots that would have been unimaginable just a few years ago.
This article is republished from The Conversation, a nonprofit news site dedicated to sharing ideas from academic experts. It was written by: Tam Nguyen, University of Dayton.
Tam Nguyen receives funding from the National Science Foundation, Lam Research and NVIDIA.