What are they and why you should make them a habit too.
Almost anyone who has done even a slightest bit of programming knows about StackOverflow. It is a haven where you can get solutions to all the programming related problems in a blink of an eye, if you know how to ask a question.
100DaysOfCode is an online coding challenge aimed at creating a consistent habit of coding for an hour everyday for 100 days. Many newbies take part in the challenge , commit themselves to it and in the end what they get is several completed projects under their belt or learning a new language\framework\technology, which in the long term are all beneficial. Most importantly a habit is developed and you cannot go one day after that without writing code.
So what is the relationship between StackOverflow and 100DaysOfCode? It’s pretty straightforward in my opinion. You code for an hour 100 days straight on StackOverflow 🤔🤔🤔.
Just 2–3 months on medium and a thought popped into my head that I should myself write some articles and that’s what happened. Bad Idea! I thought to myself, as the first 4 articles which were self published(didn’t knew how publications worked until I read How to write for x, Become a part of y) had a collective view of 3 after a week of publishing them. L😂L. But that didn’t let me down and the writing didn’t stop. It didn’t affect me because the writing thing was just to utilize some time and moreover it was expected. I was prepared for the same and in the end I never thought of myself as a writer anyway. Around that time on twitter, I came to know about the 100Days challenge on twitter, and without giving a thought joined it. I kept writing for Medium sent some articles to publications and got rejected by every last one of them. Some were kind enough to reply
we can’t accept your article as it does not matches our standards and some didn’t even cared for a reply.
Eventually after a number of rejections an article of mine got me added as a writer on 3 publications and thereafter kept on publishing without any aim, but it quite helped me learn new topics and brush up on the old ones. One morning I received an unexpected mail from Medium saying that I am now a top writer in the tag Technology. At first I didn’t believe myself, as I published only 13 articles, but I went with it and that is that.
Creating your own side project is a great way to actually practice what you have learned. I created many small projects, some of them were created by myself & some were just created through watching tutorials. Out of the n projects, 2 stood out for me. Not because they were super advanced or something but because I learned a lot during developing them.
First is a weather service. It fetches weather data from a free API, and displays the data according to you location. You can also see forecast for the week and according to the weather the weather icon changes. Super basic stuff but it taught me how to make ajax calls for sending and receiving data between server and client, how to deal with JSON data, retrieving your current location using the Geolocation API and much more.
The second one is Netflix type streaming service(sort of) which can stream movies and videos inside a LAN. Many new technologies and frameworks were used to make it such as Node.js, Express, PouchDB, jQuery. I learned a lot about how HTTP works, how we can create chunks of data i.e. Breaking large files into small chunks of data, which is a must for streaming because a file whose size ranges in several GB’s cannot be sent at once to the client. I learned a lot about file handling in Node.js due to the nature of the project there was a lot to deal with files Again the project required me to exchange data between the client and server, but totally new approach had to be used for the same. I also learned how to broadcast the server from on a LAN so all the users present on the LAN can join, by logging into the application. All the user info is stored on the database so CRUD in a NoSQL db also got added to the list.
I joined a lot of freelance sites as well as StackOverflow. I joined StackOverflow with the aim of helping people who are just getting started with programming as it can get tough sometimes. All of the above helped me get started but joining StackOverflow was a game changer for me as it helped me go further with what I already knew and learn a new concept or technique on every other question posted on the site.
StackOverflow has one of the best developer community on the internet.
- You get the personal take of n users for a single problem. If there are 10 answers on a question, you may be guaranteed the 8 of them will have a different and unique approach to the problem.
- Most of the high reputed users on the site are either authors of books on JS or related technologies or else are professionals. The answers they give are small, swift and mostly are the best or the recommended way to solve a problem.
- StackOverflow has info about all the coding related technologies/languages/frameworks, so there is something for everyone.
- It’s totally free!
When I started answering questions I was faced with a lot of downvotes on every other answer because some answers were plain wrong, some did’t answer the question directly or till I answered someone else has already posted the same and mine became a duplicate. With downvotes came criticism in the comments. The good thing was that the criticism was constructive, even with the negative comments I learned the right way to do it and where I went wrong. Till date I am on the website whenever I get free time. I try to give at-least an hour of my day to it. I answer some questions and almost every day I have A TIL moment.
This is how I got familiar with the language of my choice. It worked for me pretty well this far and I know this will help me in future too as the coding and development world is constantly changing and evolving. The way it worked for me, may not work for you as everyone has a different learning curve or their own way they like to get the job done. This is what worked for me and wanted to share with everyone.
If you liked this, be sure to leave a comment below!