Why you can trust ZDNET
:ZDNET independently tests and researches products to bring you our best recommendations and advice. When you buy through our links, we may earn a commission.Our process
'ZDNET Recommends': What exactly does it mean?
ZDNET's recommendations are based on many hours of testing, research, and comparison shopping. We gather data from the best available sources, including vendor and retailer listings as well as other relevant and independent reviews sites. And we pore over customer reviews to find out what matters to real people who already own and use the products and services we’re assessing.
When you click through from our site to a retailer and buy a product or service, we may earn affiliate commissions. This helps support our work, but does not affect what we cover or how, and it does not affect the price you pay. Neither ZDNET nor the author are compensated for these independent reviews. Indeed, we follow strict guidelines that ensure our editorial content is never influenced by advertisers.
ZDNET's editorial team writes on behalf of you, our reader. Our goal is to deliver the most accurate information and the most knowledgeable advice possible in order to help you make smarter buying decisions on tech gear and a wide array of products and services. Our editors thoroughly review and fact-check every article to ensure that our content meets the highest standards. If we have made an error or published misleading information, we will correct or clarify the article. If you see inaccuracies in our content, please report the mistake via this form.
I'm preempting this expectation because every time I talk about how to build products, there are a few folks out there who either (a) want me to write them a million-dollar app, (b) want me to show them the one class or book that will teach them how to write a million-dollar app, (c) share with them the one secret tool or program that millionaire programmers all hide from the regular folk, or (d) introduce them to my programmer buddies, because surely one of them will write a million-dollar app for a stranger on spec.
The software business doesn't work that way. Software is very big and complicated. Many apps rely on connections to vast networks of other resources that all need to be integrated together. Essentially, many apps are merely front-ends to enormous computing infrastructures that do their work behind the scenes.
Other apps, games, for example, take teams of people with a wide range of skills, all working in sync, usually for years, to turn out an app.
How ChatGPT can help you create an app
Now, I do believe ChatGPT can help you with creating an app. But it's not going to do most of the work. That's up to you and your team. But it may be able to save you some time and reduce a lot of effort. And that's a win, all on its own.
So with that, let's look at how ChatGPT might help you create an app.
1. Plan your app
There are roughly 2 million iPhone apps and about 3.5 million Android apps. Finding a unique app offering is going to be difficult, but it's also probably not a good idea to make something that already has a ton of competitors.
Don't limit yourself to ChatGPT to do your research here. Certainly involve it, asking questions like: "Are there iPhone apps that count the days until retirement?"
But keep in mind that ChatGPT's data ends in 2021, so if you want to, say, produce an app that helps write ChatGPT prompts, ChatGPT wouldn't know what's in the app store -- but Google's Bard might. When I asked ChatGPT, it responded "There are no specific iPhone apps that are designed specifically for this purpose," yet Bard responded, "There are a few iPhone apps that can help you create ChatGPT prompts," and then went on to list the apps.
One other thing you could do is use ChatGPT Plus. ChatGPT Plus is the $20 per month version of ChatGPT that provides access to plugins, including WebPilot. With the WebPilot plugin enabled, ChatGPT can search the web. As you can see, there are more answers available. You'll have to refine your queries to really dig in, but you're no longer limited by the 2021 wall.
But there's a lot more to planning your app than just basic market research. You'll certainly want to plan out functionality and features, and then craft a user interface mockup. Continuing with the idea of building an app that helps write ChatGPT prompts, you could ask:
I want to build an iPhone app to help write ChatGPT prompts. What should the major and minor features be in such an app?
I recommend you type this into ChatGPT, because the answer it gave was surprisingly complete. It shows how ChatGPT could actually be useful in creating an app.
Next up is the user interface. While ChatGPT can't draw out a wireframe (yet), you can ask ChatGPT to guide you with regard to creating its main screens.
Can you describe the screens and user interface elements this app should have?
Again, I recommend you run this prompt, because the AI tool's answers were surprisingly well thought out.
Once you have your app idea and you've planned out some of the elements of the app, you'll need to think about development and deployment. You might try a prompt like this:
I want to build this app. What do I need to do in order to begin development and prepare for deployment?
I found the answer to be far too general, but probably helpful for a newbie exploring the process. Next I tried:
Help me set up and configure the Xcode development environment to write this app
This got me closer but was still too general. I went one layer deeper:
Help me choose a template and configure the Xcode settings for my project. Also, how should I configure Interface Builder?
That actually helped quite a bit. Keep digging in and asking questions, keep adding elements to your project, and feel free to ask ChatGTP along the way. But don't forget that there is a wealth of help for app development outside the new world of AI. Don't be afraid to use old-school web searches and dig around for examples and guides. This is a big project and you'll need to use all the resources available.
2. Build your app
This is where the rubber meets the road -- or the code meets the development system. It's where you actually make your product. And it is here that ChatGPT can offer some very interesting -- but very specific -- help.
Let's once again be clear: We're not yet at the point where you can tell an AI tool to make an app for you. Apps are often hundreds of thousands (even millions) of lines of code, spread across hundreds (or even thousands) of files. Today, ChatGPT doesn't handle that scope.
In terms of scope, think of an app as a book or set of books (all the way up to an entire library). Think of a function, method, or subroutine (different terms for what is essentially a small functional unit of code) as a paragraph or a small article, maybe a chapter in a book. ChatGPT can help you at the paragraph level. It can help you structure your chapter. But it has no idea how to handle the entire book.
But that doesn't mean it can't be a big help. Earlier, I showed you how it might be used to help define user interface elements. You can use ChatGPT to give you specific instructions to put them together. For example:
Explain how to set up outlets and actions to initiate a search for a prompt in an existing set of saved prompts.
That asks the AI to explain how to set up one function in the user interface. You could repeat that over and over with different elements of your user interface. You can also ask it to write a specific function or set up data elements. Let's create a storage mechanism for saved prompts. Here are two you could use one after the other:
Help me configure a storage mechanism for saved prompts.
Walk me through using Core Data to save prompts for later access.
The first recommended three storage mechanisms, and I decided to ask it to help with the second, using Core Data. Here, it even wrote some basic code that helps get started with that data storage mechanism.
First, it helped to set up the storage mechanism itself:
Then it gave an example of how to save a prompt. You can use these bits of code as a starting point, and then add your own code on top of it. But with ChatGPT's help, you've got a good starting point.
It also showed how to retrieve a prompt. Here's where you'd get the data back, but also format it and present it using your own user interface style.
I'm not going to go into more prompts for generating code, but you should get the idea by now. Use ChatGPT to write small, very well-defined bits of code and give you guidance. Think of it as a very talented junior developer who understands the code but doesn't really see the big picture.
Finally, don't expect all of ChatGPT's code to work. As I discussed previously, sometimes the AI's code is perfect and other times it's a complete fail. Kind of like code written by us humans, in fact.
3. Deploy your app
In this example, I'm assuming you're building an iPhone app, but these procedures are similar for apps of all platforms. Fundamentally, you don't just finish building your app and it magically appears on folks' devices. Instead, you have to follow procedures specific to each app store to prepare the app, and then to publish it.
To get started with that, you might want to issue a prompt like this:
Walk me through the steps necessary to deploy my app
When I asked ChatGPT, it gave me these six steps, along with a short paragraph description summarizing the steps:
Register for an Apple Developer account.
Configure your app's settings.
Prepare your app for distribution.
Submit your app to the App Store.
Wait for app review.
Release your app.
Here's another good place you can get more value from ChatGPT. You can take each of those steps and ask for more detailed instructions. For example:
Tell me exactly how to configure my app's settings for deployment.
Tell me exactly how to submit my app to the App Store.
Keep drilling down. If there's a step that ChatGPT glosses over, ask it for clarification. Imagine you're in a courtroom during a trial and a witness gives an incomplete answer. Keep digging, asking more and more pointed questions, until you get what you want.
Now, if you're very, very lucky, you've positioned your app as unique from all other apps, have built up a customer base, are raking in the big bucks, and are beginning to think about what model Ferrari to buy, as well as what your next app should be. More likely, though, you'll be supporting customers, fixing bugs, adding features, and trying out new marketing approaches.
No matter what, if you've made it this far, congratulations. Back in the day, I wrote 40 silly little iPhone apps, and ChatGPT would have definitely been a huge help. Just think of it as a tool like all your other tools, not as the only tool, and you'll be fine.
Is it better to make an iPhone app or an Android app?
Both are huge markets. If your app is successful, you'll probably want to deploy it to both platforms. Depending on what you want your app to do, it may or may not be more suited to one platform than another. For example, one of my favorite Android apps is Tasker, which lets you customize a lot more of the Android experience than Apple's rough equivalent (Shortcuts) lets you do on iOS. If you were building a Tasker-like app, you'd probably focus on Android.
Overall, pick the platform you feel most comfortable with and build your app there. Then move it to the other environment.
How can I make sure my app is visible in search results?
If you're talking about search results in the app store, you're going to do a mix of keyword testing and graphics. First, make sure you have a compelling icon and include enough screenshots and videos. Don't leave those out. Then, it's all about the SEO. You're going to need to find the right keywords that make your app stand out. There are many tools for doing just that, and you can ask ChatGPT what some of them are and ask for some help.
What programming languages can ChatGPT help me with?
Short answer: Anywhere from a week to three years. Longer answer: It all depends. How big is your app? What is it trying to accomplish? How experienced are you and your team? When I built my 40 apps (most of which were very similar to each other), the first one took almost a month, and the others took a day or so each -- not counting the 10 or so days it took for Apple to approve each one.
But other apps can take years. An app to save and recall ChatGPT prompts is way different from, say, the Facebook app. If you're trying to build a Facebook, an Instacart, an Uber, or anything else big, you've got a long road ahead. But if you have a fun idea, expect the process to take somewhere between a few months to a year.