6.1.3. Figuring Out How To Build Your Idea
I find another key problem students face is not knowing how to build what they want to build. They have an idea, but they don't know how to turn that idea into a reality.
Here are some strategies to help you figure out how to build what you want:
Use LLMs to Drill Down​
Sometimes you have an idea, but you don’t even know where to start.
For example, imagine you know nothing about Deep Learning, but for some reason you’ve decided that’s what you want to build your first personal project around. Instead of getting lost in endless Google results, you can ask an LLM targeted questions to help narrow things down:
You could start by asking a Large Language Model (LLM) like ChatGPT:
"What would be a good first project to learn deep learning?"
"What are some beginner-friendly tutorials for building a deep learning model?"
"What are the key concepts I need to understand before starting a deep learning project?"
Here is ideas I actually when I asked ChatGPT "What would be a good first project to learn deep learning?":
- Handwritten Digit Classifier (MNIST dataset)
- Simple Image Classifier (Cats vs. Dogs)
- Spam vs. Not-Spam Email Classifier
- Recognize Simple Voice Commands
Let's ask chatgpt: "how would I make a Handwritten Digit Classifier (MNIST dataset) with a single python file?":
Heres what it gave me`
import tensorflow as tf
from tensorflow.keras import layers, models
# Load dataset
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
# Normalize pixel values (0-255 -> 0-1)
x_train = x_train / 255.0
x_test = x_test / 255.0
# Build model
model = models.Sequential([
layers.Flatten(input_shape=(28, 28)),
layers.Dense(128, activation='relu'),
layers.Dense(10, activation='softmax') # 10 classes (digits 0-9)
])
# Compile model
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
# Train model
model.fit(x_train, y_train, epochs=5)
# Evaluate on test data
test_loss, test_acc = model.evaluate(x_test, y_test, verbose=2)
print(f"Test accuracy: {test_acc:.4f}")
Ask it "explain me this code line by line like I'm a beginner who doesn't know anything about deep learning".
Anyways you get the point. You can use LLMs to help you figure out how to build your idea, even if you don't know where to start.
Just Start Building​
If you're exploring a new domain and not trying to create a complex portfolio project, then don't waste time trying to build everything perfectly from the start.
Just start building something, anything, and iterate on it as you learn.
Start with a single file and let it baloon untill it's unmanageable. Seriously.
Once you have something actually working, it's not going to take you the same amount of time to refactor it as it would to build it from scratch.
Having something working will fuel your motivation to keep going, and you'll learn a lot more by actually building something than by trying to plan everything out perfectly in advance.
Start From An Example Project​
When you are a beginner, starting with absolutely nothing is hard.
A great way to get started is to find an example project or a tutorial that helps you build something similar to what you want to build, then use that as a foundation to build your own thing.
For example, maybe you want too build a recipe app, well a tutorial in building a simple todo app is similar enough to be a good foundation. Both display a list of items in the UI, allow you to add new items, and let you delete items.
You can then take that code and modify it to fit your needs.
You can find example projects on GitHub, YouTube, or even in the documentation of the technologies you want to use. Look for projects that are similar to what you want to build and try to understand how they work.
Focus on One Thing at a Time​
If your idea feels too big, break it down into smaller, manageable pieces. One of the most common mistakes students make is trying to build everything at once — and then getting overwhelmed or stuck.
Don’t try to “build a new Facebook” or “the next big app” in one go. Instead, focus on building just the core functionality first. Ask yourself:
- What is the simplest version of this app that would work?
- What is the first thing I need to make happen on the screen?
Here are some examples:
-
If you want to build a chat app, start by getting two messages to display on the screen — hardcoded if you have to. Then work on sending and displaying one new message. Leave out authentication, emoji reactions, or group chats for later.
-
If you want to build a recipe app, start by displaying a single recipe in your UI. Then try loading that recipe from a file or hardcoded data. Worry about searching, saving favorites, or fancy animations later.
-
If you want to build a game, start with drawing one character or object on the screen and moving it around. Don’t jump straight to high scores, multiple levels, or saving game state.
When you break your idea down, you make progress faster. You’ll feel good about getting small things working, and that will motivate you to keep building.
Read the Docs (Really!)​
A lot of students skip documentation because it feels boring or hard to navigate. But most major frameworks and libraries (like React, Flask, or Django) have beginner-friendly tutorials built right into their docs.
Every docs site has a "Getting Started" or "Tutorial" section that walks you through building a simple app step-by-step.