Anand Chitipothu had very humble beginnings and he made sure he worked hard to make the best use of whatever he had to make an impact on the world. Our Techie Tuesday for this week works at archive.org and is a Python enthusiast to the core.
The impact of the kind of work which Anand has been doing is not limited to one person or even a country. If you have a website or just browse the internet casually then there are chances that you might have clicked an archived link and visited a backed up version of a webpage at some point of time. Anand works on Open Library - A project under Internet Archive, which aims to have a web page for every book ever published.
Anand comes from Lingarao Palem, a small village near Guntur in Andhra Pradesh and had his early schooling in Telgu medium. It was only when he started studying in class 12th (intermediate as it was called then) he switched to English medium. In his first attempt Anand couldn't get a seat in EAMCET - The common Entrance Exam conducted by Jawaharlal National University Hyderabad. Anand waited for a year and joined the electrical Engineering Course at Regional Engineering Collage (Now NIT) Bhopal. It was here that he was introduced to computers embarked on a journey which would change the course his entire life also affect a huge number of lives in the years to come.
They were introduced to PASCAL but the experience wasn't good. The only things they could manage was to compile and run very basic programs on a DOS machine. Also the access the computer was a luxury even in the premier engineering college. Anand remembers, " The computer center would close soon after the college hours and they wouldn't let us skip the classes to use the computers. The only available time was lunch break and an hour just after the college times. " To overcome the problem Anand and his friend decided to pool in some money and bought a computer for themselves to practice.
During the holidays Anand bought C programming books and practice reading and writing programs on paper. Once the college would reopen he would then go and practice those programs on the computer. The year was 1996 and Internet was not easily affordable by everyone. The only means available for Anand was to install Linux distros which used to come with magazines like PC Quest and language they could play around was C. Anand made best use of all the tools he had. He would look at a math equation and then figure out a way to plot a curve for that equation using C on the computer.
There was never a dearth of problems for them to work on and for Anand it was always a new challenge. Once he wrote a simulator for the 8085 microprocessor when the actual device started giving problems. Anand recalls, "8085 is microprocessor that is taught to electrical engg. students. It requires you to type in the machine code of the program in keyboard. In the lab, the instrument always used to give some error due to some hardware issues. So I wrote a simulator to try it without having to go to the lab and hold a physical device."
Anand had moved from C to VC++ and from VC++ to Java. Each language was better than the previous one. There was ease of use. Talking about his migration from VC++ to Java, Anand says, "I hated VC++ because of the way it works. It generates a lot of code and asks you to modify that. It used to become a mess very quickly. On the other hand Java was very beautiful, everything that you want to do is specified in the code. What happens on a button click, what is the title of the button etc, are all in the code. But in VC++, it was driven by UI. "
By the time Anand passed out, he knew that his heart lie in computers and not in electrical engineering. Anand tried to get a job in programming but it was in vain. He decided to pursue higher studies in Computational Sciences and appeared for GATE. He got a seat in IISc. IISc proved to be a blessing in disguise.
After IISc, Anand took a job in a Strand Life Sciences - A startup from IISc itself. Which is where the introduction to Python happened and the interest in Python grew. After experimenting with Python for some time to automate workflows and developing tools in Jython (Python on a JVM) Anand started looking around for more Python related communities and joined Bangpypers - The Bangalore Python Group where he attended Python meetups and met likeminded Python enthusiasts.
Working in a startup, it was evident for Anand to read and follow the startup community. He started following Paul Graham very closely and decided to plunge into web programming after getting to know about viaweb(the startup Paul Graham sold to Yahoo in 1998). Anand tried to learn different frameworks like Django, Plone but found them too complicated.
Aaron Swartz released web.py framework at the same time and Anand took to it. Soon he started web programming and also after looking at the simplicity of Python, the dislike for Java crept in. Anand Says, "I knew how to build websites, my hands were itching to build something using the new things that I learnt. By then I started disliking java, after tasting Python. Java is too verbose. It takes too much code solve something. It was like 'I knew what to do, I knew how to do, but takes 3 days of coding to finish it'."
Anand quit Strand and started consulting for a startup called Picsquare. The required a custom photosite for events. Anand implemented it using web.py. During this time Anand also started working with Aaron Swartz, Anand recollects," I remember seeing this page couple of times and dreaming about being there. http://web.archive.org/web/20051201022645/http://infogami.com/ though I hadn't seen the code of Infogami, I tried building a clone of that for fun. It was very crude, but I could make one.
Reddit.com and Infogami.com were launched around the same time. After few months of helping the startup, I saw an email in the web.py group from Aaron that he is looking for someone to help him on a web.py project.
I replied to that email saying that I'm interested.He was looking for someone to build the next version of Infogami and I showed the clone that I built. He liked it and I started working with him on building Infogami. While I was working on Infogami, I started contributing to web.py and took over the maintenance of it from him."
It was in 2007, Aaron asked Anand if he can move to US for a project, Anand decided he can be a part of the project from India itself and would work remotely. The project Aaron wanted Anand to work on was openlibrary and Anand was one of the first members on the team. Aaron moved on to activism while Anand continued working with the openlibrary project.
Like most of us in the open source community, Aarons death came as a surprise to Anand.
"It was a shock.
I never expected Aaron would do that. A friend of mine started working with Aaron on a project just couple of months before his death. I heard his big plans for future and what kind of things he wanted to build. I miss him dearly.
We worked pretty well together. He had very good trust on my abilities and I enjoyed working with him. He asked me 2 months before his death if I wanted to work with him on a long-term project. I couldn't accept because I wasn't ready to quit the archive at that time."
Anand is also actively involved in organizing PyCon India and have been in the organizing team since its inception. He is also leading an initiative on organizing Python workshops around the country with his initiative PythonExpress.
For people just starting out in technology, Anand refers them to read an article by Aaron Swartz.
His advice to students is, "Be passionate, work hard, try new things. World is full of interesting problems waiting to be solved. There are lot of interesting problems around us, we just need to look around."
Want to make your startup journey smooth? YS Education brings a comprehensive Funding Course, where you also get a chance to pitch your business plan to top investors. Click here to know more.
- Software Engineering
- Aaron Swartz
- Computer programming
- Paul Graham
- Bangalore Python Group
- Jawaharlal National University
- Anand Chitipothu
- web.py project
- Open Library
- web programming