This content originally appeared on DEV Community and was authored by Maxi Contieri
TD;DR: If you are a good software designer Copilot will not help you very much.
What is GitHub Copilot?
GitHub Copilot is an AI pair programmer.
It was trained with a huge coding database of common small routines.
It also can recognize bad comments and create imperative code from them.
Code Smell 05 - Comment Abusers
Maxi Contieri ・ Oct 24 '20 ・ 2 min read
GitHub copilot is a text transformer similar to GPT-3.
It was developed by the same company: OpenAI.
I've Recently Learned About GPT3 - This is my Journey
Maxi Contieri ・ Apr 9 ・ 2 min read
How does it work?
The OpenAI Codex engine powers GitHub Copilot.
It was trained with a lot of source code and also natural language.
To use it, we must apply to their waiting list. The approval process is fast.
We add it as a Visual Studio Code Extension that interacts in real-time with GitHub.
Benefits(?)
Autofill
Copilot can predict anemic structures once we describe their accidental data.
Code Smell 70 - Anemic Model Generators
Maxi Contieri ・ May 18 ・ 2 min read
They are suitable for implementative and anemic code generation.
Code Smell 01 - Anemic Models
Maxi Contieri ・ Oct 20 '20 ・ 2 min read
Code wizards are a present problem. Copilot is a brand new one.
Laziness II: Code Wizards
Maxi Contieri ・ Feb 3 ・ 4 min read
Bad comments to code
It converts bad comments (those that should never be present in our code) to straightforward algorithms.
We can assume that the training set was filled with bad implementative commented code.
We shouldn't rely much on the algorithm's declarative.
Structural tests
CodePilot can generate tests on setters. These tests are coupled to implementation and fragile.
Code Smell 52 - Fragile Tests
Maxi Contieri ・ Jan 4 ・ 2 min read
They test our getters, so they don't add much value to validating our system's behavior.
More insights here.
Should we worry about it?
Not now.
If you read the benefits above, most of the Copilot code belongs to the code smell area.
Very soon, transformers like Copilot will replace lazy and implementative programmers.
What should be doing right now?
We need to be cleverer than it.
We need to create great behavioral models far from implementative structural data
The One and Only Software Design Principle
Maxi Contieri ・ Oct 13 '20 ・ 5 min read
The problem copilot is solving right now tackles software main mistakes. Thinking of programming as just dealing with data instead of behavior.
Once we decide to grow up and build serious software instead of dealing with strings and dates, we will push our jobs a few years away from this fancy robot.
Please do write me a line below with your thoughts on this.
This content originally appeared on DEV Community and was authored by Maxi Contieri
Maxi Contieri | Sciencx (2021-07-03T15:40:38+00:00) Why GitHub Copilot is not a Threat for your Job. Retrieved from https://www.scien.cx/2021/07/03/why-github-copilot-is-not-a-threat-for-your-job/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.