When I code something, I am usually just trying to make it work. I don’t care about how clean my code is, or if it could get the job done in a more efficient way. So long as my code works, and works the way I expect it to, I’m usually good with it.
This is a problem when you work in a Team Environment. Luckily, I was able to work with a group of guys last year that helped me up my game by reviewing my code, ensuring my comments and classes were well designed and clear. We were all effectively better programmers because of our peer review process. Even my personal projects saw an uptick in the quality of my code as a result.
Since moving, however, I’ve gone back to a “silo” environment, where everyone works on their own projects, there’s little collaboration, and there are no peer reviews or standards to account for. I miss the Kanban environment that we had at my last job, and I’m glad we are talking about implementing a similar strategy here. Unfortunately, it is going to take some time to get there.
You never get anywhere without a plan, though, so here are some steps that I intend to take to help make my code better in the future. These may help you, they may not, but I think they will help me.
- Implement Hungarian Notation
- Hungarian notation was very useful to me in my last job; knowing what a variable is meant to do before you hover over it was helpful, but it was also helpful in intellisense to be able to type str and get a list of all of the string variables.
- I have slacked off a lot on my commenting. Now, before I write a method, I plan to write the comment for it’s purpose first.
- Open Source
- I think putting your code out there for others to see is a great way to learn. I’m going to work on making more of my personal projects open source on Git Hub, and I will start working on more projects that are already open source.
- Time Management
- One of my biggest issues with projects and plans is that I am bad at time management. I am going to start using a calendar more often to ensure that I stay on track for what I want to accomplish.
I don’t think I’ll ever be satisfied with the way my code works, or how it looks. But that isn’t a bad thing, so long as I keep improving and keep growing.
Thanks, and have a great day!