## My 1 year Journey Who inspired me to use emails? "Gaurav sir" Motivation to write this e-mail? "George Zaronikas (Red Hat)" My GSoC Mentor. How this email can be beneficial to my Co-workers? 1. You will know how I handled redundant, neck-paining, difficult and annoying work, on 1.6GHz i5 processor laptop. (Not relevant or comfortable way). 2. Unlimited Discount Coupons*. After long and competitive months of pre "Google Summer Of Code" in June, the reward was a chance to work with the RedHat Engineering Manager and the Senior Software Engineer. From Google Summer Of Code, every year, around 1000 students get selected from all over the world, for working with Open Source. My developed tool is now serving the famous website Bugzilla. And my idea to add Reinforcement learning technique to the tool may get posted next year. Those 2.5 months were exactly like a dream as I met no one like these people I worked with. I wish I could meet them in person. #Then, I joined Axslogic's Development team. #First, the task assigned to me was to extend a tool to read csv's, each of size 200mb who could send some manipulated data to DB. In the beginning, it required nearly 2 minutes to do this. So, I carefully analyzing it and I realized some optimization should be done to reduce time complexity. Which led me to write code able to complete the task in 0.8 sec. This was a huge difference(120 sec to 0.9 sec). And after more optimization with the help of Moiez and Kshitij, the code was completing the whole work in 0.6 sec. Moiez wrote a beautiful readable whole code for the tool. Yes, Moiez's code helped me realized how important clean and maintainable code is. Earlier I had only read about it in the books. #Recently, the task assigned to me was to code 96 java classes which would have ~9% redundant code, and ~1,60,000 line of new code to add according to Java standards. I was supposed to do this for 6 products, and 1.5 days were assigned for each product, i.e., 1.5×6 =9 days. I always had an evil thought in my mind "This work is not for me." But, even though I enthusiastically coded for 2 days, the evil thought took over me. So I spent the whole night coding some python scripts and the next day at the office I tested and completed the whole work in nearly a few hours. #A few weeks back I was assigned to convert Cognos queries to painless language. I created nearly 30-40 which were just there for POC in 2 days, without thinking of good stuff like reusability. And 3 days back I had to write elastic queries for all Cognos queries which roughly counts 4,000 for 6 Mandiri products. I started with two new java entrants Supratim Chakravarty aka The SuuVolution who is, maybe, the funniest guy in the office and proofread this document for me, and Raj. We might do 80 queries in a day which was again not perfect or even clean and had many errors, so it took us the next day to reach at a point to think about forwarding, but still, it was not good enough to be added comfortably. So, I calculated that in a day, 3 humans can do 60 queries means 1 human can do only 20 perfect queries in a day. So, Total time To Finish = (Total Queries)/ (queries converted by one human in a day) or 4,000/20=200 days or 9 months. This frightened me a lot. I realized that this same thing happened in the past as when I joined, Puspyant sir and many other employees were working in frustration for months on a nearly same task. That night I was not able to sleep until 3 am. I stood up and started analyzing redundant work first and then coded, which could solve 20% of the whole work. I then wanted to sleep but it had already passed 5'o clock, so I tried writing code to clean Cognos queries. Finally, I went to sleep at 6 am. When I reached the office I told others that I have coded to generate 40% of work automatically. Long story short: I finally included some code in the original CognosModelReader to generate 100% of work and spent the rest of the day in making my code error free. I found it like a fairy tale. 9 months of work done within 1 day of investment in coding. Hope you will find my experiences from last year inspiring to handle most of laborious, redundant, frustrating, boring, etc whatever you call it, type of work using Computers. Being able to save time and doing it faster than supposed to be done and moreover saving valuable resource (coworkers time) is smooth inner peace :) I believed this whole year, no place is created with bad intentions, and tasks can't be categorized into "good task" or "bad task", it is just we humans who can drift tasks to one side. Quote from Coding World "Whatever part you touch, handle it with care, and no matter how bad it is put it back making it more useful and clean for others" And your Discount Coupon Code is: "examin" You may not be able to code yourself or find coding hard, so one can reach out to me with this COUPON code after working hours and I will develop code for your Boring work. I am Polyglot Coder, I will not hesitate to jump to any technical work. And about our laptops: I have realized most of our laptops are capable of ticking(frequency) 1.8 billion times every second. Packed along with Caching, Instruction Pipelining, Multicores for more parallel instructions . That is the reason why they are capable of doing work faster in some cases than us, Things we find boring can be done by them, computer will do it for you without complaints. If you find this email helpful, Please write Back your feedback with criticism and do write whatever you found awful about me which I could change in me. I promise I will never judge.