AI in Development: A Powerful Tool, But Use With Caution
Samuel blackwell
Principal Tech Lead @ BAE Systems Digital Intelligence | Solution Architecture, Engineering Leadership
AI: the buzzword that's taking the world by storm! It's hard not to get caught up in the hype, right?
As someone who misses writing code every single day, I usually unwind after a long day by tinkering with a few side projects; keeping my skills up to date, and because...well, it's fun! Whilst the wife is no doubt a great lawyer, I can't rely on her to be a coding buddy; not to worry; I recently found a new buddy to help me out: ChatGPT. You've probably heard of it or even used it, so I won't dive into the details.
I decided to see how much of a helping hand my AI friend could offer while I explored some uncharted AWS territories for a hobby project. Here's my take on the different ChatGPT versions:
ChatGPT v3: It's decent for quick answers to common queries, but not much more than that.
v3.5: A step up! It can assist with problem-solving but sometimes gets a bit tangled in its own thoughts.?
v4: A real game-changer! It pointed out errors, suggested solutions, and guided me through the unknown.?
Here's my thought though: you aren't going to stick just anyone in front of ChatGPT and expect it to whip up a whole system from scratch. So no, my job isn't in jeopardy, nor is yours. In fact, I believe ChatGPT is a decent addition to my toolkit.
领英推荐
My thoughts on the use of AI in the software development field:
It obviously has to read my code to understand and provide solutions; could this be a problem? Are we blindly giving the owners of AI a lot of very valuable knowledge about our employers?
When we use open-source code, we do so knowing it is open-source. When I pay for ChatGPT 4, what am I paying for: the service or the outputs of the service? Is the code that comes out of ChatGPT 4 open-source by definition? Well, I asked ChatGPT and got this response:
"When you pay for ChatGPT 4, you are paying for the service itself, which involves the use of complex algorithms and advanced natural language processing capabilities. The outputs of the service, such as code suggestions and solutions, are not inherently open-source unless the AI developers have made them so."
Are we unknowingly setting ourselves up for issues? At times, I was so excited by the prospect of ChatGPT solving a problem that I almost threw caution to the wind. If I had just accepted its suggestions without reviewing them, I would have encountered several problems (like misconfigured security groups and potentially expensive AWS resources). It's crucial that we remain knowledgeable about the code we add to our codebase, even when using AI assistance.
Ethics... The leap from v3.5 to v4 was astounding; at times, I could have sworn I was chatting with another developer on Slack. However, I was interacting with a neural net trained on an unfathomable amount of data, and it's important to remember that this data is not necessarily neutral or unbiased. AI models can be trained on data that perpetuates harmful stereotypes and biases, which can then be reflected in their outputs. As developers, it's our responsibility to ensure that we are using AI ethically and not perpetuating these biases.
AI can be a powerful tool in our development toolkit, but it's important to use it thoughtfully and with caution. For now, it should always be a human that takes responsibility for reviewing and verifying the outputs AI provides. Additionally, we should be conscious of the ethics of AI and ensure that we are using it in a way that does not perpetuate harmful biases.