Well, we tend to forget what we have learned in programming languages over a period of time, mostly because we don’t use everything we have learned, we might use a few libs more often than the others, creating this blog will help me organize what I have learned, in a single place and revisit the things which I have once learned, without spending additional time looking for the concepts from different websites. This might also help people find solutions to some of their errors, as I am also going to share a few errors to which I haven’t found the solutions online and had to solve them on my own.
The Background Story…
I was a Mechanical Engineering student, deeply fascinated by physics in my 11th and 12th, I opted for the stream. I had a different idea of Engineering back then, I thought it would be more practical, but then it wasn’t true, we weren’t allowed to do much of the practical stuff in our labs as they had expensive equipment, and feared we wouldn’t do it properly and damage them, and also it wasn’t a feasible option for us to buy the equipment and do it at our home either, which gave me the push towards computer science, as all I had to do was buy a laptop.
I became more interested in programming languages, mainly because of my teacher and that the subject being contrastingly practical to my current stream. We had C and C++ as common subjects in our first and second semesters. I liked the way we had to write algorithms, they were like small puzzles or rather say brain teasers, to me. Although I didn’t like C and C++ much, I liked the concept of telling a computer what to do and getting it done, it was so practical, it was like I learn it now I implement it the next second.
Next, I learned Java, I learned it from my college library, but then my first two semesters were done, which meant no more practical use of what I learned, as there would be no assignments, so I learned how to develop android applications, it felt so good, I was back at it again, to the brain teasers, and the puzzles. The thought that I could develop what I wanted to on my phone was amazing, I developed a few Android applications, I was the first one to create an app for my college and put it on play store, then there came many apps rivaling a mechanical student’s app LOL. After that, I had to take a break from coding, as it was a crucial period of my life, and I had other things to concentrate on.
A few months later, I met a friend who wrote a computer vision script which identified what was fed to it through his webcam, I was blown away, I wanted to learn AI so bad, I learned python as it was helpful for learning AI, then I got more comfortable with python than I ever was with Java, it was much more interesting.
I got a job, not a technical one, as I was from Mechanical, and there is this strict policy here in the place where I live in, that only people from computer science or electronics or people from IIT’s, NIT’s and BITS colleges are only eligible for the interviews of technical jobs, which is ridiculous, anyways, I started to develop automation for the job I had to do, then started helping people by writing the scripts, lessening their work, I am still continuing to do it, I enjoy every bit of writing scripts and the automation part, and to which there is a sad and boring part of my job, which I am yet to automate.
Nevertheless, I have learned a lot in this non-technical job as I am the one who has to think creatively and come up with solutions to real-life problems, how cool is it that you have to invent something that makes your job as well as your teammates’ jobs much easier, on a daily basis, and about doing all this in a normal job, well, I have a different perception of this, I am getting paid to learn, that’s amazing, right? I have been working for around 6 months, and damn these are the best days, I learned so much within a short span, and will continue to do.