How to use ChatGPT to write code

How to use ChatGPT to write code
sample-image-16-9-red.jpg

David Gewirtz/ZDNET

One of the more intriguing discoveries about ChatGPT is that it can write pretty good code. I tested this out in February when I asked it to write a WordPress plugin my wife could use on her website. It did a fine job, but it was a very simple project. 

How to use ChatGPT to write: Resumes | Excel formulas | Essays | Cover letters 

How can you use ChatGPT to write code as part of your daily coding practice? That’s what we’re going to explore here.

What types of coding can ChatGPT do well?

There are two important facts about ChatGPT and coding. The first is that it can, in fact, write useful code. The second is that it can get completely lost, fall down the rabbit hole, chase its own tail, and produce absolutely unusable garbage.

Also: I’m using ChatGPT to help me fix code faster, but at what cost?

I found this out the hard way. After I finished the WordPress plugin, I decided to see how far ChatGPT could go. I wrote out a very careful prompt for a Mac application, including detailed descriptions of user interface elements, interactions, what would be provided in settings, how they would work, and so on. Then I fed it to ChatGPT.

ChatGPT responded with just a flood of text and code. Then it stopped mid-code. When I asked it to continue, it vomited out even more code and text. I requested continue after continue and it dumped out more and more code. But… none of it was usable. It didn’t identify where the code should go, how to construct the project, and — when I looked carefully at the code produced — it left out major operations I requested, leaving in simple text descriptions stating “program logic goes here.”

Also: Okay, so ChatGPT just debugged my code. For real.

After a bunch of repeated tests, it became clear to me that if you ask ChatGPT to deliver a complete application, it will fail. A corollary to this observation is that if you know nothing of coding and want ChatGPT to build you something, it will fail.

Where ChatGPT succeeds, and does so very well, is helping someone who already knows how to code to build specific routines and get specific tasks done. Don’t ask for an app that runs on the menu bar. But if you ask ChatGPT for a routine to put a menu on the menu bar, and then paste that into your project, it will go quite well.

Also: How to use ChatGPT to create an app

Also keep in mind that while it appears ChatGPT has a tremendous amount of domain-specific knowledge (and it often does) it lacks wisdom. As such, it may be able to write code, but it won’t be able to write code containing the nuances for very specific or complex problems that requires deep experience to understand.

Use ChatGPT to demo techniques, write small algorithms, and write subroutines. You

Read More

I used ChatGPT to write the same routine in these ten obscure programming languages

I used ChatGPT to write the same routine in these ten obscure programming languages
gettyimages-171792113

An instructor at the Boston Latin School uses an IBM 1130 computer to teach Fortran to students on October 4, 1968. 

Photo by Underwood Archives/Getty Images

A few weeks ago, I took a look at using ChatGPT to write the same routine in a dozen of the most popular programming languages. But as a programming language geek, I wondered just how far ChatGPT would go. Would it program in a language from the 1950s? Would it program in a language that used its own character set? Could it write code in one of the languages that wrote its code?

Also: The best AI chatbots: ChatGPT and alternatives to try

And so, I dove in. I’ve used many of the languages I’m spotlighting here, so I’ll take a little walk down memory lane and include some stories about my experience with those I’ve used.

While I haven’t run the code itself, I’ve read through all the generated programs. Most look right, and show the appropriate indicators telling us that the language presented is the language I asked for.

Also: How does ChatGPT work?

I’m telling you this because the headers on all the screenshots are wrong. Most are listed as SQL. For some reason BAL is shown as VBNet, and Prolog is listed as Rust. ChatGPT didn’t make this error last time, but it made today, for all the languages shown here.

And with that, let’s dive in.

Fortran

Fortran (or FORTRAN, as it was depicted back then) stands for Formula Translation. It was developed primarily for scientific and engineering calculations. Even though it dates back to the 1950s, it was often the first language taught to engineering students in the 1970s and 1980s.

Also: This new technology could blow away GPT-4 and everything like it

For me, it was my fourth programming language, after BASIC, PDP-8 assembly language, and PDP-8 binary (yes, I wrote binary code so I could toggle it in on the front panel of an early minicomputer). My Dad generously drove me the hour down to Newark College of Engineering (now NJIT) so I could take their first-year programming course while I was still a sophomore in high school.

Fortran was never a favorite, although it would get most calculation-oriented jobs done. A variation of Fortran is still in use today, but it’s pretty limited to specialty scientific work since many other modern languages do Fortran-level analytics, and do it better.

Here, because of the use of the implicit keyword, it looks like ChatGPT is depicting code written in the Fortran-77 variant.

fortran-77

Even though the label is wrong, the code is Fortran.

Screenshot by David Gewirtz/ZDNET

COBOL

I was a teenaged COBOL programmer. I didn’t know COBOL at the time, but somewhere around 1980 I saw a want ad for a COBOL programmer at the Northeast Regional Data Center of International Paper in Denville, NJ. It was about 40 minutes from my parents’ home, and I needed a summer job. As soon as I managed to schedule

Read More

I used ChatGPT to write the same routine in 12 top programming languages. Here’s how it did

I used ChatGPT to write the same routine in 12 top programming languages. Here’s how it did
lang-1

David Gewirtz/ZDNET (with a little help from ChatGPT)

Over the past few months, we’ve all come to know that ChatGPT can write code. I gave it a number of tests in PHP and WordPress that showed both the strengths and weaknesses of ChatGPT’s coding capabilities.

Also: Okay, so ChatGPT just debugged my code. For real.

But how far does ChatGPT’s coding knowledge extend? In this article, I’m going to throw the classic “Hello, world” programming assignment against the twelve popular languages in O’Reilly Media’s popularity rankings for 2023.

Because “Hello, world” can often be coded in one line, I’m adding a slight wrinkle, having ChatGPT present “Hello, world” ten times, each time incrementing a counter value. I’m also asking it to check the time and begin each sequence with “Good morning,” “Good afternoon,” or “Good evening.”

Also: How to use ChatGPT: What you need to know now

That should give us a look at program flow and some intrinsic functions as well, but still keep the code small enough that I can include a dozen screenshots in this article.

Here’s the prompt:

Write a program in ____ that outputs “Good morning,” “Good afternoon,” or “Good evening” based on what time it is here in Oregon, and then outputs ten lines containing the loop index (beginning with 1), a space, and then the words “Hello, world!”.

For each programming language, I also asked ChatGPT to describe its primary use. Here’s the prompt I used for this query:

For each of the following languages, write a one-sentence description of its primary use and differentiating factor: Java, Python, Rust, Go, C++, JavaScript, C#, C, TypeScript, R, Kotlin, Scala.

Now, let’s look at each language.

Java

ChatGPT describes Java as, “A general-purpose language used primarily for building desktop, web, and mobile applications, and known for its ‘write once, run anywhere’ philosophy.”

Also: The best AI art generators to try

Java was originally developed by Sun Microsystems, but when Oracle bought Sun, it also bought Java. While the Java spec is open, the language is owned by Oracle. This has led to some spectacular legal fireworks over the years.

Here’s ChatGPT’s code:

java

Screenshot by David Gewirtz/ZDNET

Python

ChatGPT describes Python as, “A general-purpose language used for data analysis, artificial intelligence, web development, and automation, and known for its readability and ease of use.”

Also: How to write better ChatGPT prompts

My advice: if you plan to learn to code for AI applications, learn Python. Almost all AI code has tight Python integration.

Here’s ChatGPT’s code:

python

Screenshot by David Gewirtz/ZDNET

Rust

ChatGPT describes Rust as, “A systems programming language used for building high-performance and reliable software, and known for its memory safety and thread safety guarantees.”

Here’s ChatGPT’s code:

rust

Screenshot by David Gewirtz/ZDNET

Go

ChatGPT describes Go as, “A systems programming language used for building scalable and efficient network and server applications, and known for its simplicity and built-in concurrency features.”

Also: How to make ChatGPT provide sources and citations

Go is open source, but it’s

Read More

Desktops can write their very own code. So are programmers now out of date? | John Naughton

Desktops can write their very own code. So are programmers now out of date? | John Naughton

I examined engineering at university and, like most of my contemporaries, found that I sometimes necessary to publish pc packages to do selected types of calculations. These pieces of utilitarian software were being created in languages now regarded as the programming equivalent of Latin – Fortran, Algol and Pascal – and what I learned from the encounter was that I was not a born hacker. The software package I wrote was clumsy and inefficient and far more talented programmers would search at it and roll their eyes, significantly as Rory McIlroy could possibly do if demanded to enjoy a round with an 18-handicap golfer. But it did the task and in that feeling was, in the laconic phrase occasionally utilized by the wonderful pc scientist Roger Needham, “good sufficient for government work”. And what I took away from the expertise was a lifelong respect for programmers who can produce stylish, successful code. Any person who thinks programming is quick has hardly ever done it.

All of which goes to make clear why I sat up when, final 12 months, anyone realised that Codex, an offspring of GPT-3, a massive neural community qualified on wide troves of text gathered from the net that could crank out plausible English text, could generate applications, ie, quick laptop packages which includes buttons, textual content input fields and colors, by remixing snippets of code it experienced been fed. So you could check with the program to write code to do a simple task – “make a snowstorm on a black background”, for case in point – and it would publish and operate the required code in Javascript. In no time at all, there had been tech startups such as SourceAI aimed at harnessing this new programming device.

This was extraordinary, quirky and possibly useful in some contexts, but really it was just buying reduced-hanging fruit. Apps are tiny systems and the types of duties Codex can do are types that can be explained succinctly in standard language. All the program has to do is to look for by the enormous repository of pc code that exists in its database and discover a match that will do the job. No true inference or reasoning is required.

At this position, DeepMind, the London-centered AI firm, became interested in the challenge. DeepMind is popular for establishing the Go-playing environment winner AlphaGo and AlphaFold, the machine-finding out process that would seem far better at predicting protein structures than any human. Lately, it introduced that it had formulated AlphaCode, a new programming engine likely capable of outperforming lots of human developers.

In vintage DeepMind model, the firm resolved to see how its procedure would execute on 10 issues on Codeforces, a platform that hosts all over the world aggressive programming contests. Whilst these worries are not regular of the regular day-to-day workload of programmers, the skill to remedy the issues it

Read More

A.I. Can Now Write Its Own Computer Code. That’s Good News for Humans.

A.I. Can Now Write Its Own Computer Code. That’s Good News for Humans.

As soon as Tom Smith got his hands on Codex — a new artificial intelligence technology that writes its own computer programs — he gave it a job interview.

He asked if it could tackle the “coding challenges” that programmers often face when interviewing for big-money jobs at Silicon Valley companies like Google and Facebook. Could it write a program that replaces all the spaces in a sentence with dashes? Even better, could it write one that identifies invalid ZIP codes?

It did both instantly, before completing several other tasks. “These are problems that would be tough for a lot of humans to solve, myself included, and it would type out the response in two seconds,” said Mr. Smith, a seasoned programmer who oversees an A.I. start-up called Gado Images. “It was spooky to watch.”

Codex seemed like a technology that would soon replace human workers. As Mr. Smith continued testing the system, he realized that its skills extended well beyond a knack for answering canned interview questions. It could even translate from one programming language to another.

Yet after several weeks working with this new technology, Mr. Smith believes it poses no threat to professional coders. In fact, like many other experts, he sees it as a tool that will end up boosting human productivity. It may even help a whole new generation of people learn the art of computers, by showing them how to write simple pieces of code, almost like a personal tutor.

“This is a tool that can make a coder’s life a lot easier,” Mr. Smith said.

About four years ago, researchers at labs like OpenAI started designing neural networks that analyzed enormous amounts of prose, including thousands of digital books, Wikipedia articles and all sorts of other text posted to the internet.

By pinpointing patterns in all that text, the networks learned to predict the next word in a sequence. When someone typed a few words into these “universal language models,” they could complete the thought with entire paragraphs. In this way, one system — an OpenAI creation called GPT-3 — could write its own Twitter posts, speeches, poetry and news articles.

Much to the surprise of even the researchers who built the system, it could even write its own computer programs, though they were short and simple. Apparently, it had learned from an untold number of programs posted to the internet. So OpenAI went a step further, training a new system — Codex — on an enormous array of both prose and code.

The result is a system that understands both prose and code — to a point. You can ask, in plain English, for snow falling on a black background, and it will give you code that creates a virtual snowstorm. If you ask for a blue bouncing ball, it will give you that, too.

“You can tell it to do something, and it will do it,” said Ania Kubow, another programmer who has used the technology.

Codex can generate programs in

Read More