How Developers Can Use ChatGPT as a Powerful Development Tool
June 07, 2023

Jeremy Jackson
Shift Lab

There's no buzzier technology right now than ChatGPT and for good reason. Because while the hype over how blockchain was going to transform trust, financial systems and even the business of selling art has yet to materialize, ChatGPT and, more broadly, generative AI are already delivering real value. In fact, ChatGPT is already so powerful, there are many who worry that generative AI will ultimately replace creative and information workers.


ChatGPT is not yet ready to produce code unsupervised

When it comes to software development, I personally believe that there will always be a need for talented human tech practitioners who are able to solve difficult, complex problems. But whatever your beliefs on that matter, the fact is, ChatGPT is not yet ready to produce code unsupervised, and doesn't take much time working with it to see why. Ask it enough complex questions, and while you'll always get something that sounds good, do a bit of digging and you may discover that it has completely invented some of what it says and may have even manufactured non-existent references. That said, in my experience, the code it produces can be helpful. In fact, in the hands of a seasoned developer, ChatGPT can be a very powerful tool.

Developer Use Cases for ChatGPT

ChatGPT can significantly increase the speed of development and the time it takes to create a solution … so long as it's used properly. As I noted above, it's not safe to use the code it generates without checking it first, which is why it's important that developers hone their instincts for what looks like well-formed code and what doesn't.

We've all pulled code from forums and sites like Stack Overflow, and no responsible developer would use that kind of code sight unseen. Treat code from ChatGPT in the same way. After all, it's likely the AI lifted the code from a site just like Stack Overflow and, perhaps, modified it a bit.

But even though it needs to be checked, the code ChatGPT generates is great for producing a framework on which to build. Note, however, that ChatGPT is best at creating code for specific, relatively simple tasks that are frequently repetitive. I often use it, for example, to create code for software testing and data connectors between applications. The more unique or complicated the task is, though, the more likely ChatGPT will produce flawed code.

ChatGPT is also an excellent tool for training developers and building knowledge. Hazy on how to create a higher-order function in Typescript? Fire up ChatGPT and type, "Explain the concept of higher-order functions in Typescript and provide three examples."

You're an expert with Ruby, but just getting your feet wet in Python? Type "Explain how to form class objects in Python and provide several examples."

Finally, ChatGPT is great at creating documentation, a task that most developers truly dislike doing. Again, you don't want to use ChatGPT to document complex, unique code, but for simple, straightforward code such as the expected outputs and inputs for a connector, the AI does a good job. You'll want to read through and edit it, of course, but that's much faster than creating the documentation from scratch. As a result, developers can spend more time doing what they truly love: building.

ChatGPT Best Practices

ChatGPT is a new tool in the developer's repertoire, but already, best practices are emerging.

Understand what an accurate answer will look like: ChatGPT is not a great tool in the hands of a programmer who's still wet behind the ears, because you need to have a clear understanding of what the code should look like so you'll know right away if anything is out of whack. Without this understanding, there's no way to use ChatGPT efficiently and safely.

Create prompts that are very specific, especially about the context of your query: Context is very important when you ask ChatGPT to provide code. Also, don't forget that you can specify in what format you want it to produce information. You don't have to settle for a wall of text and a snippet of code. For example, you might say, "I'm using React as my language, and as a programming assistant, I need to connect an AWS-hosted Postgres database to another application. Provide a connection string that substitutes any connection parameters with a curly brace. If I need more, I'll provide follow-up questions."

Never share identifying or proprietary information: Researchers can read your input and use it to further train the AI, which means there's a possibility that any code or information you give ChatGPT could show up as output for someone else at some point in the future. The ChatGPT FAQ is clear on this. If you're using the API, the terms say that your input won't be used in training — even so, it's best to err on the side of caution.

There's little doubt that ChatGPT and other forms of generative AI are going to change how developers work, and it's only going to get better over time. Smart, experienced developers should begin now learning how to use these tools to generate frameworks, improve their knowledge, and become more efficient. The future is here — we'd all best prepare.

Jeremy Jackson is CEO of Shift Lab
Share this

Industry News

December 19, 2024

Check Point® Software Technologies Ltd. has been recognized as a Leader in the 2024 Gartner® Magic Quadrant™ for Email Security Platforms (ESP).

December 19, 2024

Progress announced its partnership with the American Institute of CPAs (AICPA), the world’s largest member association representing the CPA profession.

December 18, 2024

Kurrent announced $12 million in funding, its rebrand from Event Store and the official launch of Kurrent Enterprise Edition, now commercially available.

December 18, 2024

Blitzy announced the launch of the Blitzy Platform, a category-defining agentic platform that accelerates software development for enterprises by autonomously batch building up to 80% of software applications.

December 17, 2024

Sonata Software launched IntellQA, a Harmoni.AI powered testing automation and acceleration platform designed to transform software delivery for global enterprises.

December 17, 2024

Sonar signed a definitive agreement to acquire Tidelift, a provider of software supply chain security solutions that help organizations manage the risk of open source software.

December 17, 2024

Kindo formally launched its channel partner program.

December 16, 2024

Red Hat announced the latest release of Red Hat Enterprise Linux AI (RHEL AI), Red Hat’s foundation model platform for more seamlessly developing, testing and running generative artificial intelligence (gen AI) models for enterprise applications.

December 16, 2024

Fastly announced the general availability of Fastly AI Accelerator.

December 12, 2024

Amazon Web Services (AWS) announced the launch and general availability of Amazon Q Developer plugins for Datadog and Wiz in the AWS Management Console.

December 12, 2024

vFunction released new capabilities that solve a major microservices headache for development teams – keeping documentation current as systems evolve – and make it simpler to manage and remediate tech debt.

December 11, 2024

CyberArk announced the launch of FuzzyAI, an open-source framework that helps organizations identify and address AI model vulnerabilities, like guardrail bypassing and harmful output generation, in cloud-hosted and in-house AI models.

December 11, 2024

Grid Dynamics announced the launch of its developer portal.

December 10, 2024

LTIMindtree announced a strategic partnership with GitHub.