feat(post): add 'When to Use AI While Programming' post
This commit is contained in:
parent
a1fa4db8b0
commit
1ef005a6e4
@ -0,0 +1,53 @@
|
|||||||
|
+++
|
||||||
|
title = 'When to Use AI While Programming (And When Not To)'
|
||||||
|
date = 2024-09-24T14:50:04+02:00
|
||||||
|
draft = false
|
||||||
|
tags = ['AI', 'Programming', 'Software Development', 'Best Practices', 'Coding', 'Artificial Intelligence', 'Development']
|
||||||
|
+++
|
||||||
|
|
||||||
|
## Preface
|
||||||
|
|
||||||
|
As I was working on a project in Golang, a language I've been learning for a few
|
||||||
|
weeks, I realized the importance of balancing AI assistance with hands-on learning.
|
||||||
|
I had been relying too heavily on Copilot, and it ultimately led to frustration
|
||||||
|
and burnout. This experience made me think about the situations in which AI should
|
||||||
|
be used—and avoided—while programming.
|
||||||
|
|
||||||
|
## When You Want to Learn Something New
|
||||||
|
|
||||||
|
It's common sense, but worth repeating: if you want to learn a new skill or technology,
|
||||||
|
don't rely on AI for repetitive tasks. Doing so can hinder your progress and prevent
|
||||||
|
you from becoming proficient. Can you truly say you're fluent in a programming language
|
||||||
|
if you've completed a large project without knowing how to perform basic tasks like
|
||||||
|
reading a file?
|
||||||
|
|
||||||
|
## When You're Uncertain About the Basics
|
||||||
|
|
||||||
|
Many of us, including myself, turn to AI when we're unsure about a particular
|
||||||
|
concept or technology. However, this approach can be counterproductive. To work
|
||||||
|
efficiently, we need to have a solid grasp of the underlying concepts. Instead of
|
||||||
|
relying on AI, it's better to take the time to read the documentation and understand
|
||||||
|
the fundamentals.
|
||||||
|
|
||||||
|
## Working with New Technologies and Libraries
|
||||||
|
|
||||||
|
Most AI models are trained on relatively old data, which can lead to outdated suggestions.
|
||||||
|
This is particularly problematic when working with new technologies or libraries
|
||||||
|
that are constantly evolving. AI may suggest code that's no longer recommended or
|
||||||
|
has been deprecated.
|
||||||
|
|
||||||
|
## Writing Sensible Programs
|
||||||
|
|
||||||
|
When working with sensible code, it's generally not a good idea to let AI write
|
||||||
|
code for you. For example, if you need to implement cryptography, you should do
|
||||||
|
it yourself after learning how it works and the best practices to follow. Neglecting
|
||||||
|
this can lead to insecure systems.
|
||||||
|
|
||||||
|
## A Balanced Approach
|
||||||
|
|
||||||
|
I'm not advocating for a complete ban on AI usage. In fact, I use it daily, and
|
||||||
|
it's been a game-changer for repetitive tasks where I'm confident in my ability
|
||||||
|
to spot logical errors. However, if you find yourself in one of the situations mentioned
|
||||||
|
above, take a step back and invest time in learning the documentation or
|
||||||
|
seeking out alternative resources. Failing to do so can lead to a lack of motivation
|
||||||
|
and a plethora of hidden bugs in your code.
|
Loading…
Reference in New Issue
Block a user