Usando o ChatGPT para turbinar seus estudos em programação
O que é o ChatGPT?
Segundo o próprio ChatGPT, ele se define como um modelo de linguagem treinado pela OpenAI que foi projetado para se comunicar de forma natural com os humanos em contextos de chat. Desde o seu lançamento, o ChatGPT tem sido usado em uma variedade de aplicações, incluindo chatbots para atendimento ao cliente, assistentes virtuais para dispositivos domésticos inteligentes, e plataformas de mensagens on-line. Algumas das principais vantagens do ChatGPT incluem a capacidade de compreender e responder a perguntas complexas, a flexibilidade para se adaptar a diferentes contextos de conversação, e a capacidade de manter conversas coerentes e bem-estruturadas. Em geral, o ChatGPT tem sido amplamente utilizado como uma ferramenta para melhorar a interação humano-computador e para oferecer suporte e assistência aos usuários em uma ampla variedade de tarefas e aplicações.
Como ter acesso ao ChatGPT?
Para utilizar o ChatGPT é simples:
- Entre em https://chat.openai.com/
- Crie uma conta
- Comece a fazer perguntas no Chat
Como utilizar o ChatGPT para estudar programação?
Você pode utilizar o ChatGPT para fazer perguntas e obter respostas sobre conceitos e técnicas de programação. Por exemplo, você aprendeu que pode iterar sobre uma lista em python usando o for, mas gostaria de aprender outras formas de iterar. Perguntando para o ChatGPT ele nos traz 4 outros métodos:
#Usando enumerate
lista = [1, 2, 3, 4, 5]
for i, item in enumerate(lista):
print(i, item)
#Usando range
lista = [1, 2, 3, 4, 5]
for i in range(len(lista)):
print(i, lista[i])
#Usando map
lista = [1, 2, 3, 4, 5]
for item in map(lambda x: x*2, lista):
print(item)
#Usando while
lista = [1, 2, 3, 4, 5]
i = 0
while i < len(lista):
print(lista[i])
i += 1
Podemos ir mais além e perguntar quais dos métodos acima é o mais rápido sem precisar passar muitos detalhes. Isso porque o ChatGPT vai armazenando o contexto da conversa e consegue formular uma resposta baseada no conteúdo da mesma. Eis a resposta:
O método mais rápido para iterar uma lista em Python depende de vários fatores, como o tamanho da lista, o número de operações que você precisa realizar em cada iteração e o hardware do seu computador. Em geral, o método mais rápido é o laço for usando o método range(), pois ele tem uma complexidade O(n) e é implementado de forma eficiente na maioria das implementações de Python.
No entanto, é importante lembrar que a velocidade de execução não é o único critério a ser considerado na escolha de um método de iteração. A legibilidade e a facilidade de uso também são importantes e podem influenciar a escolha do método a ser usado. Por exemplo, o laço for usando o método enumerate() pode ser mais fácil de ler e entender do que o laço for usando o método range(), mesmo que seja um pouco mais lento.
Uma resposta chama outra pergunta que chama uma resposta e assim por diante e de forma involuntária você se vê engajado numa conversa muito produtiva com uma IA. Ou quem sabe até numa discussão.
Essa fluidez na conversa ajuda num ponto muito importante: Persistência. Muita gente desanima ou se sente desmotivado nos estudos quando um assunto começa a se tornar complexo. Nesse momento o ChatGPT pode fazer toda a diferença, pois na interação com o chat, você não estará aprendendo passivamente como quando você lê um livro ou assiste uma aula. Na interação com o chat, você estará participando ativamente fazendo perguntas.
O ChatGPT não substitui os livros ou aulas, mas ajuda muito você a entender conceitos, preencher lacunas de conhecimento e a avançar nos seus estudos. Uma verdadeira ferramenta para turbinar sua produtividade.
É possível utilizar o ChatGPT para encontrar soluções de problemas que você possa estar enfrentando durante seus estudos. Por exemplo, você não está conseguindo compilar seu programa em C e não sabe o motivo. Cole a mensagem de erro no ChatGPT e receba uma lista de possíveis causas que estejam causando o problema. Isso pode ajudar você a economizar um bom tempo navegando no Google em busca de uma solução.
Se você sentir que ainda não está dominando um assunto muito bem, pode pedir para o ChatGPT criar um exercício personalizado para você. Aqui um exemplo quando foi solicitado um exercício para praticar triggers e functions no Postgres.
Exercício: Crie uma trigger que verifique se o campo idade de uma tabela pessoas é maior que 18 quando um novo registro é inserido ou quando um registro existente é atualizado. Se a idade for maior que 18, a trigger deve inserir a data atual no campo data_maior_idade da tabela pessoas. Caso contrário, o campo data_maior_idade deve ser definido como null.
Outra grande utilidade do chatGPT é a ajuda na refatoração de código. Quando foi solicitado ao chatGPT a refatoração da seguinte função em python:
def soma_idades(a, b):
c = a+b
return c
O resultado foi este:
def calcular_soma_idades(idade_a, idade_b):
return idade_a + idade_b
Além de remover uma linha que não era necessária, ele renomeou a função e os argumentos de forma mais adequada alinhado com princípios de clean code.
Importante
Nem tudo é perfeito. Algumas respostas do ChatGPT podem estar erradas ou imprecisas, principalmente se você está procurando por código ou comandos prontos. Por isso é importante buscar entender o que o ChatGPT está fazendo e não só copiar e colar o código.
Conclusão
O ChatGPT pode ser uma ferramenta poderosa quando usada para os estudos. Para finalizar deixo aqui a mensagem que a própria ferramenta enviou quando a informei que estava escrevendo este artigo:
A minha mensagem para os leitores seria para explorarem todas as possibilidades que o chatGPT oferece no processo de aprendizado de programação. O chatGPT é uma ferramenta muito poderosa e versátil, que pode ajudá-los a praticar e aprofundar seus conhecimentos em diferentes linguagens de programação. Além disso, recomendo que eles aproveitem a oportunidade de conversar com um modelo de linguagem treinado por OpenAI, como eu, para obter ajuda e orientação ao longo do caminho. Nunca deixem de perguntar e de buscar novas formas de aprender! ChatGPT (2022)
Fonte: https://chat.openai.com/chat