I don't know what to tell you because I have a hard time thinking of personal projects. I think some common answers to the problem of not having a personal project is to think of a problem you have and think of a way programming or coding can help, or try to find an existing application or website and reverse engineer it. If you're a beginner some common projects are to make a personal website, different types of calculators, a todo app, a note app. Those are the ones off the top of my head. However, what if you've done those? Now what? I suppose you have to get creative.

How about just not have a personal project? Is it absolutely nessessary? Maybe. I suppose if you already have a job that keeps you busy with new projects and you work on those for 8+ hours a day it would be completely fine to not have a personal project. Maybe it's more important that you spend that outside time refreshing your mind and body. Spend time with family and friends and nurture relationships. Have a creative hobby. There's many options.

However, lets say you're a beginner and you haven't landed a job. I'd say it's important to do something to have working examples of your work in a portfolio. You need to learn beyond tutorials, reading, and watching videos. You need hands on experience and have to have a way to motivate and challenge yourself. Personal projects will be good for you.

Here's another situation. This is possibly my situation. You're a junior level, meaning you have a job, but you're not really working on big projects. You're working on maintaining current sites and fixing issues and bugs that come in everyday. Sometimes the work is menial. You are learning a lot but you're working with a stack that is specific to your workplace and not really one that you want to work with personally. You listen to podcasts and read blogs about the newest technologies. You're curious. You've done all those beginner level projects.

Just spitballing. Here are some ideas.

Try out one of those new technologies you read or hear about.

Case study: Over the weekend, I did the beginner Gatsby tutorials (insert link here). In the process I learned more about React, JavaScript, GraphQL. I learned how to deploy to Surge.sh. It took up a few hours of 3 days. I came out with a lame blog but, I built a blog platform! I never done that. Even what I'm writing on isn't a blogging platform I made. It came with the basic starter theme in Jekyll. So in the end I don't have anything pretty or groundbreaking but I did learn something.

Think of a problem you are having or think of a way you can make something easier to do.

Case study: My partner and I like to shop for records. We have hundreds of those little 7-inch singles (or 45s). One issue we run into is forgetting what we have in our collection. We'll be looking at an interesting find but then think that maybe we already have it. Most times if we're not sure we decide not to purchase the item. So I thought that I could put all the records we have into a JSON file and then import and display our collection in a little application/website. We could do a basic search/filter to see if we have the record or not. I got it working. I just need to get all those items in the JSON file. That's my only hinderance - the data entry. Pretty boring stuff. To procrastinate on that I added an accordion to each item where I could include more info. I can add a thumbnail of the cover, a link to a YouTube video of the song, add a link to the band website or Wikipedia page. One day, I'll finish this.

Other thing you can make relating to this. Make a Chrome Extension to solve a browser related issue or just make something easier.

Contribute to an open source project on Github.

Case study: I honestly haven't contributed to much to other projects. If you haven't contributed to open source, it may seem scary. However, there repositories dedicated to making your first pull requests (insert link) and beginner level projects that are open to newbies (insert link). I participated in October's Hacktoberfest (insert link) this year. I did six pull requests. I contributed some css styling, some JavaSript, added some graphics to a game, refactored some code and other odds and ends. All my pull requests were approved. With one I had to make some changes to deal with conflicts but I made it through and learned something! It was fun.

Think of something frivolous and fun.

For example, parody sites, quizzes, quote/fact/image generators. Not everything has to be serious. You don't have to solve the world's problems.

In the end, just make stuff. Anything. Ideally, challenge yourself. If you're scared to do something, give it a try. Either way, if you try and succeed or try and fail, you have learned something and you are growing.