Have you ever had that fleeting thought after finishing up a really cool script, "I should blog/share/tweet/GitHub this thing. It's very cool"? But then, your mind argues, "Well, it's probably not good enough right now. It doesn't have very good error control, documentation, I'm hacking together this and that just to get it to work and it probably won't work until all circumstances depending on the environment it's run in".

Sound familiar? Probably.

I'm guilty as charged and am just as bad as everyone else. I take pride in my work but what it takes to get the job done in your environment is usually completely different than what it takes to make it publicly available to others. If you intend to share something, you do need to meet a few minimum requirements:

  1. At least comment-based help.
  2. Basic error control.
  3. Parameterizing anything that might change per environment.
  4. Possible commenting inline.

However, this doesn't mean it must be perfect. No v1 software is perfect. There will be bugs and there will be ways to improve it. If the script is more than a few lines long, there's no way you're going to know the perfect way to curate this script. That's why we have versions. Version it 0.01 if you want. Just get it out there!

I share my PowerShell content in two different places. First, I place it somewhere on Github in a sometimes ugly state. This is my "alpha" phase. Once I've had it out there for awhile, I'll then just spruce it up a little to meet my 1-4 requirements above and then publish it to the PowerShell Gallery.

I assure you that your work will help someone regardless of the state you have it in. Clean it up the best way you can and release it. If you're still concerned, ask someone in the community to review it for you. A lot of us are here to help. At the end of the day, just release it. You're not building the next space program here. Lives will not be lost if you have a bug in your PowerShell script. Even if you do, releasing it will help make your code better and help others in the process.

Join the Jar Tippers on Patreon

It takes a lot of time to write detailed blog posts like this one. In a single-income family, this blog is one way I depend on to keep the lights on. I'd be eternally grateful if you could become a Patreon patron today!

Become a Patron!