In the Figma plugin demo, web developers can quickly create a mockup for a website. This comes in handy to quickly create a website, especially for non-developers. All a user would need to do is type in what type of website they want the tool to generate. What GPT-3 does is predict what action to take based on the written language. It can be English or another language, based on the tool’s own features. At the backend, the tool attempts to predict what the user described and then generates it for them.
It Can Replace Humans
The amazing thing about these tools, is that they can replace a human at the task it performs. If you are development manager, you can start things off in the project using a tool with GPT-3 features to build the foundation of the application. By this I mean the skeleton from which the rest of the application will be built upon. The manager can simply type their requirements and the tool will generate what the manager wants. This saves project requirements for additional staff who would otherwise be responsible for building the initial application. After the skeleton has been generated, more advanced developers can come in with the rest of the project requirements to complete the application.
While it is replacing people, can it overall replace everyone on the project team? It is possible if you intend to build a fully automated tool to accomplish a task. It is more likely that full automation cannot really be carried out due to the nature of application development. It must still follow a software development life-cycle that can suddenly change in the middle of the project. You will still need people to update code, test for quality assurance, perform system hardening and deployment. Though these stages in software development can be automated, it is usually not automated from beginning to end.
Replacement For Software Developers?
Tools like this are not meant to totally replace developers, in my opinion. I think it has the potential to increase productivity and assist software developers and engineers in their daily tasks. As a developer, I find it useful if you can just describe what you want to generate in a few words or sentences, and get the immediate results. This does not mean you can ignore the fundamentals. Some of these tools can be used by non-coders, but overall it will be just as useful to coders especially when it comes to more complex tasks. It depends on the type of application that is needed.
A simple GUI and website to establish a presence for a company can be generated for non-developers. In fact, many website tools are now available that does not require coding. When GPT-3 is applied, it can make things even simpler by allowing the user to describe what they want and then they can customize it later. Other examples of applications that don’t need extensive coding experience include simple smartphone apps, widgets and applets. Users can simply use a tool to that generates the code and builds the application. For the most part, these are non-commercial applications.
For advanced users (i.e. software developers) GPT-3 can help with building commercial applications. This can help game developers build virtual worlds by simply describing it while the tool renders the output. A UI/UX designer can describe layouts while the tool generates an interface that will be used to interact with the application. An smartphone app developer can quickly build modules by describing it while the tool generates it. What this does is save time for the developers, allowing them to complete tasks much faster than before. That helps boost productivity as it gives more time for developers to focus on the project and not stress about deadlines.
Closing Thoughts
GPT3 is a really powerful tool. Having 175 billion parameters gives it so many possible perspectives that is available from the entire store of knowledge on the Internet. These vast sources of data allows the model to use the parameters for network calculations that gives it the ability to learn from simple input, and generate complex output. In some examples of GPT-3, not related to software development, users have been able to get an entire story written through AI.
GPT-3 is like tapping into a brain that stores the best knowledge and information. It uses the parameters to calculate weights and probabilities to come up with answers to what a user requests. Most all of the world’s code in programming languages like C++, C, Python, Javascript and Java is already available on the Internet through public repositories like GitHub. The GPT-3 model uses these sources to learn and create knowledge. It is much like how a student goes to school to study and learn computer programming.
With persistence and determination, an ordinary human can learn to code and build an application in a few weeks to months. With AI using GPT-3, it only takes a matter of minutes. I think that you can use GPT-3 to accelerate software development and human learning as well. You not only generate the code, but it also helps the developer learn and improve their own education that can only lead to better applications. For example, a developer could use GPT-3 to help build better and more efficient code that results in improved application performance.
After seeing the demos, it is not a farfetched idea that you can generate an application by simply describing it in simple human language. Just typing “a payment app” leads to the actual app itself in a matter of minutes. No more need to code for hours at a time, but will this have an effect on how people function in the real world? Critics might say that this can lead to laziness and a total reliance on technology. It may also be misinformation if the model is not using reliable data. AI will address the part about misinformation, because the training and learning model is optimized for gathering the correct data based on weights and deep learning techniques.
Using a GPT-3 tool is something I find beneficial for developers. You get instant results with little effort, so it seems. We are already dependent on technology, which makes things better and more efficient so we continue to use it. We should not neglect the foundations of software development in any case. Instead, learn the basics and when you are more advanced it is actually easier to understand and work with GPT-3. Then you can use GPT-3 to help advance learning and development, harnessing the information learned from the best reliable sources.
Credit: BecomingHuman By: Vince Tabora