It's a leap of faith to put your code out there. You have to have tough skin sometimes. Mean people will say it's crap. Many years ago (93-94?) I worked on a piece of software called FoolProof Desktop Security. I was just a few years in the industry full time and working on this cool new project that would keep kids in schools from breaking into Windows machines. I was pretty proud of the work. I did the 16 bit Windows, 32-bit Windows, and DOS Clients (in Turbovision!).
A new employee arrived on the project and a week later, perhaps as a way to prove themselves, they sent email to the whole team with the subject "Top 10 FOOLISH Code Mistakes in FoolProof."
And 7 of the 10 mistakes were in my code.
It's gonna happen, and while it's not OK when folks are cruel, I am accountable for how I take the feedback. I decided to double my efforts and take the valid technical feedback (a lot of my code was poor, I was new) and ignore the tackiness of the message itself.
When you write code you're putting yourself out there, even if no one sees your code, they see the result. It's hard to be a creative, to write, to sing, to act, to code. Coding and producing is a declarative statement and as they say:
He or she who is most likely to make declarative statements is most likely to be called a fool in retrospect.
The code I wrote today was AWESOME. The code I wrote yesterday was CRAP! ;) If it wasn't, I wouldn't be growing.
You likely have some code on your machine you're holding off to publish. Perhaps a private or hidden repository somewhere. I hear several times a week things like "I'm not ready for people to see my code." But let me tell you, while it may be painful, it will make you better.
Books are made better by editors. Coders are made better by pair programming and code reviews. If you love it, let it go.
Yes, some people will be unkind, but not the people that matter. Publish your project!
If you're a more senior person, be kind and coach. Share your wisdom.
Sponsor: Thanks for my friends at Octopus Deploy for sponsoring the feed this week. Their product is fantastic. Using NuGet and powerful conventions, Octopus Deploy makes it easy to automate releases ofASP.NET applications and Windows Services. Say goodbye to remote desktop and start automating today!