Chris Wanstrath, Co-Founder, CEO of GitHUB - Keeper of Mega Code:
“Coding is not the main event anymore. Building software is the main event. Coding is just one small part of it. We think the future of coding is no coding at all. we think autonomous coding is a very real thing."
Late in the evening, i started building an algorithm for the future core of the NO-CODE platform. Everything came to me as a melody for a future composition, and I immediately started recording the first scores of the BEEPTOOLKIT framework.
The beauty of any idea is that if at some point you decide to start implementing it, you will be blindly obsessed with the idea of going towards your goal through the impenetrable jungle with adventures, gaining valuable experience in how to do everything correctly, optimally and elegantly. Sometimes it is useful to stop and do nothing, look around and look for straight roads, get out of the labyrinths and not enter the vicious circle. Along the way, you will encounter many adventures, compromises, discoveries, many friendly and confusing travel companions, partners, and more.
Only now I have come to a meaningful understanding of everything that I have been doing for 3 years. When I thought that the zero point of the beginning of growth appeared at the moment the idea was born, now, after so many years, it turned out that it is indecently below the plinth. When I started to bring the idea to life, I did not understand how much I still have to learn and rethink a lot.
April 21, 2021 - our product is presented on the showcase of the RobotShop trading platform, for wide audience and a new generation of specialists - No Coders.
Machine code, thanks to its new interpreters being developed, has been constantly evolving towards simplification since its inception.
A comfortable and intuitive development environment frees up the most valuable and irreplaceable - your time, what is necessary for accelerated development, bringing humanity closer to its future.
It is known that the biggest headache for R&D and V&V departments is endless verification and testing processes to roll back errors, development of testing programs for software and hardware part of the project. If an error is detected, chain consequences occur. Likewise, the statement of a complete error at later stages, while the satisfaction of these requests is sometimes difficult, long and painfully painful. And by that time there will be more new requests in the queue. It turns out that this is not a very pleasant and not painfully productive vicious circle, the main harm from which is the loss of time and money.
In an effort to respond more quickly to changing customer demands, companies are moving further away from long development cycles. It is from these trends that the legs of the popularity of Agile, DevOps, etc. grow. From the same area, we increasingly hear the magic combination of two words - No Code. You've probably heard this promising term. But is it really that important? How will this affect the work of your R&D team? How about the work of the entire organization?
Tooling platform No Code is a marketing myth or the future?
The No Code platform uses visual development tools instead of language programming. The visual development environment allows users without programming skills to independently make the necessary changes to the system, customize it or create applications at the level of the logical core of the platform, hidden under the graphical interface.
What could have taken months of hard coding for experienced developers a few years ago will be a matter of a few clicks for power users who don't know programming languages but have a talent for creating algorithms for an idea, and they need a simple, straightforward and accessible user tool.
Non-technical users create their own complete applications! Sounds too good to be true, doesn't it?
In an era of widespread digitization, when developers have become one of the key resources of many companies for the technology industry, the advent of code less tools means a fundamental change in the understanding of who “developers” are and how their work affects employees and the enterprise as a whole.
NO CODE - tool platform for creating automatics, robotics and smart systems. Implementation of the idea BEEPTOOLKIT.
This is how the No Code graphical console of the Beeptoolkit tool platform looks like, which allows you to set a set of instructions and real-time parameters for development automatics, robotics and smart systems. (Beeptec Engineering)
This is a software hardware solution based on a PC with a minimum configuration: Quad Core 1.8 GHz processor, 2-4GB RAM and 32-64GB onboard flash memory. In my case, this is a single-board SBC from the Chinese manufacturer LattePanda, which is not a minimum limit for what it goes about. Further speech. As an OS, you can install the final version of Win 10 (LTSC x64), we also consider one of the latest builds of Linux x32.
Concept and detailed description.
Instead of a language script programming, the developer uses an intuitive set of instructions and methods that fulfill a set of language specifications embedded in common DSP processor architectures.
The No Code BEEPTOOLKIT platform is a structured framework, the core of which is developed in the G language and consists, at the moment, of 160 FSM (Finite-state machine). Each FSM is a discrete software solution in the form of an I / O module with external USB communications, which has 10 input 12 bit channels and 16 output channels, which are in one state out of many possible at any given time. The number of possible internal states of input and output channels per port is finite. In this case, the behavioral algorithm of the entire scenario can be built both in the main infinite loop and in parallel loops with interruptions.
There is certainly the possibility of using the Watchdog function.The platform supports 3 types of automation:
* Remote control;
* RPA (closed world);
* RPA adaptive (feedback provided) in all their variety.
A set of states that we can include in the algorithm: The transition between states is a transaction from operations, that is, they all always happen together, in the correct order, and some other code cannot be inserted between them.
When the state changes from A to B, the following occurs: the code (in our case, an instruction included in the algorithm) for exiting state A is executed, the state changes from A to B, the entry code (instruction) into state B is executed. To switch to state A, you can organize a call to the state A method, which will execute the necessary logic and call set State (A).
The final equipment is connected via drivers to our USB I/O module. Bidirectional I/O module (5V power supply) consists of 2 output sub modules (16 channels of selectively assigned channels per 1 Port - automatic). Activation of channel numbers is indicated by software, binary logic "1 = 4.5 - 5V" and "0 = 0.3V" (by default) is formed, 20 mA per channel, response speed 50 ms. The input sub module ADC - 12 bit based on STM32, consists of 10 channels which simultaneously for 1 cycle (5 ms) or at the specified number at the inputs fix the voltage 0 - 3.300V. The I/O module USB), depending on the users' tasks, at their choice, can be completed with only an output sub module or an input sub module. During configuration, during the first connection, the user must specify the number of USB input sub modules. Their number (theoretically) can be 256 (! 1600 Channels, 10 for each port). The number of simultaneously connected input USB sub modules can be up to 4 with binding to 1 USB number (expanding, if necessary, the number of switched load drivers).
How it works. Development example:
In a couple of minutes, such a simple algorithm for controlling a stepper motor (to be honest, the time spent on the description here took many times longer than the process of visually entering the instructions for the script):
1. Run the script in automatic mode by default 15 seconds after loading the program;
2. Supply power to the stepper motor driver in standby 12V> ;
3. Apply 5V to the PWM generator with supply + CLK of the left-hand motor drive> ;
4.After 10 seconds, disconnect the 5V power supply from the PWM, the motor will enter hold mode> ;
5. Apply a 5V PWM signal to the motor drive -CLK clockwise> ;
7. Disconnect 5V from PWM. After 1 hour, stop the motor by holding> ;
8. Turn off the 12V motor driver> auto complete full script with full software download.
The scenario does not include touch communication with angle resistive sensors. If they are included in the algorithm, then the trigger value sets the motor rotation angles in the range from 0.001 to 3.300 V. An additional console is provided for setting, which is called during debugging. At the end of the algorithm, after checking each procedure (simulating software or connecting hardware), all the code saves the script with the USB communication settings to a binary file. In the future, we will be able to build libraries from such configurations, access them, make changes and save them under a new name. All values from the sensor system can be recorded in real time during a complete cycle or specific cycles of each procedure.
No Code BEEPTOOLKIT - Stepper Motor Control Algorithm (Beeptec Engineering).
This is how the FSM (Final Static Machine) console looks like, where you can enter instructions, set the cycle time before the input event, enter a trigger value, specify the conditions "if", "and", "or", and configure USB communications. Beeptec Engineering
In a specific case, there is a simultaneous collection from 10 resistive sensors, the trigger is set at 2.058V, in case of voltage> = 2.058V on 1 of the sensors, a logical "1" is sent to the output of channel 7, in case of failure to receive a signal at the input for 1959.69 s, channel 3 output opens with logic "1".
An educational video is presented on the site. As an educational lesson for RPA adaptive automation with feedback, the entire process of custom development (the option of sorting confectionery products based on their weight) is demonstrated, starting from the formulation and algorithmization of the problem, the construction of the software part and the hardware modular implementation.
Block diagram of the platform BEEPTOOLKIT.
No Code BEEPTOOLKIT design. (Beeptec Engineering).
Master kit on easily recognizable, inexpensive and affordable modular components.
Example of control of 5 stepper motors, DC / DC voltage converter 0 ... 17V, PWM generator, relay group, opto-coupler switches.
Advantages of No Code Platforms.
Since the development of automation, robotics and smart systems without code is done visually using pre-built instructions, the process is faster. This allows the organization to be flexible. Combined with the principles of CI / CD, the testing process also becomes automated. This will not only help expand the range of employees who can handle incidents or changes on their own, but it will also save programmers themselves from unnecessary work, increasing their productivity and allowing them to focus on tasks that really require their experience.
Financial savings.
The developers are expensive, experienced developers are even more expensive. At the same time, the less you need to write program code, the less programmers you need - this is saving on overhead costs. In addition, since No Code allows you to create applications much faster, such products will be cheaper in the long run.
Flexibility.
The problem with a traditional IDE is that you cannot change a feature or functionality immediately, especially when a particular programming language is new to you. Development without code is the complete opposite. If you need to change something, all it takes is new logic, and you can make that change in minutes.
Increased productivity.
Organizational flexibility and cost savings mean nothing without the actual work done. Back to the beginning of the article: R&D staff are often overwhelmed with requests from a variety of departments. And it gets in the way of both sides. As already mentioned, No Code allows employees to solve a number of their requests on their own, and programmers - to solve problems faster. In turn, fewer people will stand in the line of those suffering from emergency computer assistance, delaying the completion of their own tasks.
NO CODE, how important are they now?
Since the beginning of the information age, the need for developers has only grown. They are used by the websites and applications that we see and use every day. World system for managing this world and digital transformation continue to embrace more and more areas of life. The US Bureau of Labor Statistics predicts that the need for developers will increase by more than 21% from 2018 to 2028.