'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 better get the bad news out of the way. If you think ChatGPT can write you an iPhone app with in-app purchases that will make you a million dollars, you're out of luck.
Also: Okay, so ChatGPT just debugged my code. For real.
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.
Also: How to use ChatGPT: What you need to know
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.
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.
There are roughly 2 million iPhone apps and about 3.5 million Android apps. It goes without saying (but I'm going to say it) that 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?"
Also: How to use ChatGPT to write code
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.
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 and useful. 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's answers were surprisingly well thought out.
Also: I'm using ChatGPT to help me fix code faster, but at what cost?
Once you have your app idea and planned out some of the elements of the app, you'll need to think about the 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. So, 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.
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 you can get some very interesting, but very specific, help from ChatGPT.
Let's once again be clear: we're not at the point where you can tell an AI to make an app for you. Apps are often hundreds of thousand (to 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.
Also: I asked ChatGPT write a WordPress plugin I needed. It did it in less than 5 minutes
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:
Please 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.
Also: How to make ChatGPT provide sources and citations
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.
Also: Bard vs. ChatGPT: Can Bard help you code?
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.
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:
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. Think of it as if you're in a court and a witness gives an incomplete answer. Keep digging, asking more and more pointed questions, until you get what you want.
Also: How does ChatGPT work?
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.
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.
Also: The 5 best AI art generators
Overall, pick the platform you feel most comfortable with and build your app there. Then move it to the other environment.
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 for some help.
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? I'll tell you that 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.
Also: I asked ChatGPT to write a short Star Trek episode. It actually succeeded
But other apps can take years. Keep in mind something like a tool 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 somewhere in the few months to a year range.
You can follow my day-to-day project updates on social media. Be sure to follow me on Twitter at @DavidGewirtz, on Facebook at Facebook.com/DavidGewirtz, on Instagram at Instagram.com/DavidGewirtz, and on YouTube at YouTube.com/DavidGewirtzTV.