How To Get Any Programming Project Ideas?
Tags: portfolio, codenewbie, programming, beginners
Published: 2022-01-11 08:07:10

## Disclaimer
> This article may be opinionated because it is based on my personal experiences. But at least it can be your reference on your working for the portfolio as a programmer.

## Introduction
Several days after I published my article titled **[How To Get Hired Without Applying](https://yehezgun.com/articles/how-to-get-hired-without-applying),** some of my friends asked me, `How you easily can get some ideas to create your project for your portfolio?`.  This is the same question when I knew a friend who routinely develops his projects and publishes them.

I knew exactly when we were just graduated in 2020 before getting a full-time job, he routinely publish his projects through Linkedin, Twitter, and his site. You can see some of his projects at [https://sznm.dev/projects](https://sznm.dev/projects)ss. That time, I asked him the same question as the question in the previous paragraph.

In general, these are what I got from his answer. This answer makes me realize that it’s not too hard to generate some ideas in your head.

## Start From What Problem You’ve Faced
Remember, **the “How” will not exist without “Why”.** When you want to create a solution, there must be a problem to be solved. This is the most crucial thing that I’ve tried when I wanted to switch jobs to another company last year.

When I switch to React from Angular, I have to create something using React to strengthen my fundamental skill. That time I felt exhausted when I have to initiate a project from scratch, especially when I have to face the “config things” like husky, ESLint, and Prettier config.

Like I said in my previous article titled **[Why Making A Starter Template Matters?](https://yehezgun.com/articles/why-making-a-starter-template-matters)** then I made a starter template using Next.js, Chakra UI, and Typescript. It may be confusing and exhausting in the first place, but when I want to create some projects in the future I just use the starter template that I’ve made before without getting burnout due to “config things”.

Another example, when I post a microblog on Linkedin, I felt I need a link shortener. I think it’s better if I have my own link shortener so I can customize it with my own preferences. Then I made it at [https://link.yehezgun.com/](https://link.yehezgun.com/).

Got the point? **You can find out the problem that you’re facing**, then make a plan to solve it. After that, implement what you’ve planned.

## You Don’t Need to Create Something from Scratch
Thanks to technology, we now can search for information that we wanted through the internet.  I remember a time when I watched an online talk between Pak Sandhika Galih (Web Programming UnPas) and Mathdroid. The talk is titled **[Tips Belajar Programming, Indie Hacker & Reverse Engineering](https://www.youtube.com/watch?v=LKATs6MDeCw).** You can watch it on Youtube (the talk is in Bahasa Indonesia).

> In this modern world, when you want to create a project, especially a coding project, you can easily google for it, search the references that you need, then implement it into your project. You can even imitate someone's project, manipulate it then remake it by your preferences. **~Mathdroid**

That statement was so inspiring for me. For your information, I actually have tried this method and because of it, I can get a new job.

It will be exhausting when you create a coding project from scratch. But remember that they're so many tools or libraries out there that can be used for your project. **For learning purpose, it will be better to create something from scratch to understand how it works in general, but in long term,** **you will need tools that help and boosts your productivity due to deadlines or something else prior.**

But don’t be wrong about this. **The latest tools don’t mean the best. Find suitable tools for your problems!**

## You Even Can Remake A Project That Already Existing
Can’t create something original? You can remake an app or project from what’s already existing. For your information, when I made my own [Next.js + Chakra UI + TS Starter Template](https://github.com/yehezkielgunawan/yehez-nextchakra-starter), I actually just imitate the idea from my friend, you can see his project at https://github.com/sozonome/nextarter-chakra.

Imitate doesn’t mean I remake it with 100% similarities. I took the layout reference and what tools can be useful for me, then I remake it based on my needs. Don’t worry, by remaking it actually you also learn how to make it step by step. **When you already know what to do, it will be easier for you to do the next step.**

**Analyze, imitate, then modify.** This is the very simple thing that enables a country in Asia which currently is one of the most developed countries. Yeah, you must know what I mean.

Another example is when I made my [Yehez-Shortin](https://link.yehezgun.com/) (link shortener). It actually a common idea. Most newbie web developers even made this when they just learned a new programming language. But I modified the layout and the feature based on my preferences, like dark mode and custom URL alias.

## Closing
> In this modern era, you can easily find the idea. You just need an internet connection then google it by yourself. Even actually you can find an idea around you.

Sometimes you tried hard to generate or find some ideas to create a coding project. Remember that, coding actually is problem-solving. So start to define or find a problem that you want to solve, then go ahead to solve it.

Thanks for reading, hope it can trigger you to develop your project, LOL. I’m sorry if there are still many grammar errors due I’m learning to write in English properly.

Reference: 

- Bangkit Academy Class 6: Idea Generation & MVP Planning
- Agustinus Nathaniel’s Portfolio ([https://sznm.dev/](https://sznm.dev/))