Keep a git repository of all your practice code
Tags: learning, projects, showcase, algorithms
Published: 2019-10-13 18:59:22

---
title: Keep a git repository of all your practice code
published: true
description: When learning any programming language, or to program in general, keep a git repository of your practice code, algorithms, patterns, etc, it can be used to showcase your skill and review what you have learned.
tags: Learning, projects, showcase, algorithms
cover_image: https://justindfuller.com/learning-to-code.png
series: Learn To Code
canonical_url: https://justindfuller.com/posts/2019-10-13_Person-Knowledge-Repo
---

_This post originally appeared on [JustinDFuller.com](https://justindfuller.com/posts/2019-10-13_Person-Knowledge-Repo?utm_source=Dev.To&utm_medium=referral&utm_campaign=learning_javascript)._

Are you struggling to find projects to showcase to potential employers? Have you been practicing [LeetCode](https://leetcode.com/) as you prepare to interview for a Software Development job? Do you occasionally practice a Kata on [Codewars](www.codewars.com) to keep your skills from getting rusty?

If you answered yes to any of these questions, you should consider saving every practice problem you do in a public git repo, like [Github](https://github.com/).

I try to keep up with programming trends, and one question that I see come up a lot, [particularly](https://www.reddit.com/r/learnprogramming/) on [reddit](https://www.reddit.com/r/cscareerquestions/), is "What project should I do?"

Projects are a great way to learn, but most people don't have time to work on big projects in their free time. Another option is to work on algorithmic problems. You've got an almost 100% chance of running into at least one algorithm question if you are interviewing, plus they are a good way to learn a new programming language.

If you have been a developer for years, practicing algorithm problems is a great way to keep your skills sharp—particularly on a groggy Monday morning when you are having trouble getting started, or on a Friday afternoon when you are feeling unmotivated. A quick practice problem can get your brain moving.

## My knowledge repo

I recently started learning C++. To keep track of what I am learning I created a [practice problem repo of my own](https://github.com/JustinDFuller/problems) that I hope to see grow over time.

What do I plan to do with it?

1. Code review myself.
  * From time to time I will come back to the code and review it. I'll ask myself, "based on what I have learned, is this still the best way to implement this?" If the answer is no, I will create a new one and document what I misunderstood when I originally wrote the code.

2. Use it as a knowledge repository.
  * I may have a similar problem pop up in a real application in the future. Now I have a knowledge repo that demonstrates how I solved it the first time.

## Your knowledge repo

What can you use it for?

1. Learning a new programming language.
  * Practice each new concept you learn and save it for review later; make sure you don't just copy and paste examples, though!
2. Tracking your improvement over time.
  * Occasionally review your old code. What have you learned since you wrote it?
3. A personal knowledge repository.
  * When you get a tough problem at work, maybe you've done something similar before—now you have a way to remember.
4. A showcase for potential employers.
  * New college graduate or long-time developer, there's no better way to show your skill than to have a potential employer see your code.

---

Hi, I’m Justin Fuller. I’m so glad you read my post! I need to let you know that everything I’ve written here is my own opinion and is not intended to represent my employer. All code samples are my own.

I’d also love to hear from you, please feel free to follow me on [Github](https://github.com/justindfuller) or [Twitter](https://twitter.com/justin_d_fuller). Thanks again for reading!