You can find my project here.

Over the past 3 months I have been working on a project. I learned a lot, as it was my first consumer facing application. Most of my work has been involved with enterprise software, and a stock analysis project that I have yet to be successful at contemplating and making good decisions that outway the magnitude of the bad decisions.

Build an MVP, build minimal functionality and get it out there.

I wanted the application to handle a lot of requests, but I wish I could go back and change the work to only handle the minimal amount of load. The reason is because no one is using it yet. Build your projects to the minimal amount of size. I am not a large enterprise releasing a project that will automatically gain thousands of users on day one. I am instead a no name developer with not enough time to get projects done. The more I work, the less I do. The reason is the amount of time I had to put into the project to write code to enable caching, misses, reduce race conditions, and much more. Overall I learned about the sync library very well in the golang programming language, but it added 1 and half to 2 months of development. Development that could have been stalled later in life.

Chrome Extension

The amount of issues I had spent figuring out how to inject code was a lot, but worth it. Overall I learned how to communicate with the backend of chrome extensions. How to transfer communications from the front end to the chrome extension back end. I learned that removing code from a Single Page Application would break the code of the website. I had to learn how to navigate around this.

GoLang

Learned alot about the Golang library, and threading in Golang. Pretty much all a success.

Lets Encrypt

Learned about Lets Encrypt and setting up an instance on Debian OS.

Advertising your Projects

I have not advertised the project at the least yet. If I am going to get users I am going to have to learn how to connect and share my ideas and implementations. Also I learned that having a name that applies to your project helps out a lot as well. The original name of my project was YT-Commenter and I will change this to Youtube-Commenter so that people can find Youtube related items in the chrome store. YT is not Youtube and people would be looking for Youtube. I have never experienced some of these things. Some of these things I should have experienced by now, but never ventured out enough to do them. As I look at my life and the experiences I learn, I hope that I can push things out quicker and more lean. Lean so that I spend minimal time on something.