Why you should make a toolbox repository
As a software developer, you're probably no stranger to writing code. But have you ever stopped to think about the benefits of keeping a personal repository of your code? Think of it like a digital scrapbook, where you collect and organize all your coding adventures, tips, and tricks.
I keep one called Toolbox
that I use for everything. It's a place to put things that don't belong anywhere else.
One-off Learning
Let's face it; we've all had those "A-ha!" moments where we figured out a tricky problem or learned a new skill. But what happens to that knowledge when you move on to the next project? It gets lost in the void of your brain, right? Instead keep a personal repository. You're creating a journal of sorts, where you can store those "A-ha!" moments and reference them later. Think of it like a digital version of your favorite recipe book – only instead of cakes, you're collecting coding gems!
Journal of Skills You Learned
When you revisit an old piece of code or a problem you solved in the past, it's like re-examining a familiar friend. You'll catch yourself thinking, "Ah, I did that! And look how clever I was!" This process reinforces your skills and helps solidify them in your long-term memory. It's like exercising your coding muscles – the more you use them, the stronger they get!
Examples I have in my toolbox
Now, let me give you some examples to illustrate these benefits:
Daily Note-Taking
I'd bet most developers keep a scratch file somewhere. Used to pasting an error you're working on, quick tasks to remember to do. Meeting notes. Yeah, I keep all those in my toolbox repo. I even have a utility script so that when I run the command today
to creates a markdown file in my toolbox named with date of the week.
`
If you find that useful you may find other "Zettelkasten method" apps like obsidian or Evernote useful. I've tried but just a weekly scratch file I can search has been what I've found most useful.
SQL
Remember that one off tricky SQL query you wrote using Common Table Expressions (CTEs)? I use them so rarely but having an example in my own style always making re-learning how to do them much easier! YOU can revisit that code and recall the logic behind it. Boom! One-off learning and skill reinforcement!
Bash Script to fix a Problem
Ah, yes, those pesky shell scripting issues! How does awk
work again, or is it sed
I should use in this case. When you write a bash script to fix a problem, you might think it's just a one-time solution. But what if you need to use that same or similar script again?
Other
Just odd things that don't really have a place.
- Profile Pic I normally use
- It's where I used to keep most of my dot files before moving them to their own public repo here
- etc.
Less Time Spent Re-inventing the Wheel
Your personal repository becomes a treasure trove of tried-and-true solutions!
Conclusion
And hey, if you're still unsure, I'll give you another thing to consider: imagine having a collection of 10-20 code snippets or scripts that you've written over the last year. Now imagine 5-10 years. Those might seem insignificant on their own, but when combined, they become a valuable resource for learning and growth.
Now, go forth and create your personal repository! It doesn't have to be public, mine isn't.