Automation Part 1
We are not working on Windows 98 anymore and neither do we hear the awesome sometimes irritating sound of a dial-up modem. Apart from just revealing that I am super old, I want to mention that we're living in pretty good times. Most operating systems are smarter and we carry supercomputers in our pockets.
Well, but it's not all merry and smooth, though. One of the things that bother me the most are the rote repetitive tasks one has to do because there is no other option.
Right now, I work in a corporate office where I had to do a ton of Excel reports, daily. I have to pull data from 3 different sources, work on it in excel, sort it accordingly, format it in a presentable format, save and send it over to my boss and the field.
I've always wanted to learn Visual Basic For Applications and I thought I'd experiment with it. I watched the tutorial from Lynda <link> and since I had learned the basics of coding from CS50 at Harvard online, I started wondering how I can automate my reports.
This was a fun experiment and I don't consider myself a programmer so this was a huge undertaking. The first hack to writing this code I found was the macro recorder function in Excel. You basically do the repetitive task once and let the macro recorder write the code for you.
Now, it's not as simple as that. I had to tweak edit and troubleshoot (debug) the code based on what my goal was but since I didn't know much about VBA, the macro recorder was doing the bulk of the coding for me and taking care of the syntax it should be written in.
So I started doing really small experiments. I tried doing tasks which were too easy to do, like, changing the color of a particular cell or copying one cell and pasting the values in a cell located at two positions on the right.
Simple tasks generated simple code for me and I was slowly learning how this beast works.
I realized that all the complex reports I made, if observed in super slow-motion, were just a bunch of commands and key strokes. So if I had the base data in my main sheet, I can break the things into micro tasks, record them in the macro recorder, get the script and add the scripts together to work on the whole report.
After a lot of trials, iteration and debugging, I figured it out!
All I had to do now is pull the raw data, save the files in a specific folder and Excel will automatically format, apply formalae, sort, subtotal and make the final file for me.
Below is basically what the macro did for me. The total time was reduced to 3 mins from 1 hour!
I couldn't believe that I actually did it! I dropped out of computer science school, I haven't received education in this and have failed at almost everything I've pursued until this point (Sept 2014). I am no programmer but after looking at all of the code, I was really proud of my work.
I started coming to work with a huge smile and with a feeling of certain accomplishment. I was testing this huge macro I made and it was working like magic. I was delivering reports in time and the time saved in the rote work was now spent in researching more ways on how I can provide more value to the company.
For some reason, however, I wanted to keep this a secret. I didn't want my boss knowing that something that takes me an hour, just takes me a few minutes. Seth Godin's video Stop Stealing Dreams explains it a perfectly.
In the video, Seth asked the audience to raise their hands just as high as they possibly can and then, he asked them to raise them a little higher... and they did!
Then, he asked, "Hmm, what's that about?"
His instructions were pretty clear yet everyone held back. How come? He shared that, we've been taught since we were 3 years old to hold a little bit back. Because if we do everything, if we put all out, then your parent/teacher/coach/boss is going to ask for a little bit more and the reason they will is because we are products of the industrial age.
He speaks more on this topic and I highly recommend you check out the whole video.
This is what I was afraid of. First, I thought, if I automate this, they won't need me anymore and they will fire me and second, even if they don't fire me, they will give me more work that I may or may not want to do. Keeping this a secret and doing "business-as-usual" felt like the comfortable choice to make.
I had 27 years of similar training about things and life when I was in India and as I went deeper and deeper into self-improvement, something started to shift and something was changing. I no longer wanted to keep this a secret. I have been a big fan of Ramit and a part of RBT where individuals similar to me were sharing their own stories about authenticity and top performance.
So I decided to share this with my boss and it was received really positively. He emailed the whole company saying that I will be working with every department on automating their rote work.
That was awesome!
I am not holding back anymore and this blog is the perfect example of it.
PS I like to think of this process as making the machines work for us.
PPS I am still not a programmer and it will be arrogant of me to call myself one but I think, I like programming :)