A sunny Saturday at BeaglesLoft.

Siva sent me, Krace, Kartik and Sayan an email asking whether we would be available on the 7th of June to volunteer for the first offline Django meetup. I was only too happy to receive the invitation and replied saying “I believe I can make it”.

The next mail in my inbox is where I found TechBuilders. The email was from the BangPypers mailing list posted by someone called Niranjan. This is the link that was in the mail:

http://techbuildersbayesianreasoning.splashthat.com/

Even during my time at HasGeek last year, I used to keep wondering why isn’t there any learning related to Math happening among all these Computer geeks who were working on Python, JS, Ruby, etc. I even had a decent conversation regarding this with the one person whom I found to be interested in the Math aspect of computers. His name is Abhijith and we became friends at the Fifth Elephant conference last year when he signed up to volunteer for it.

Suffice to say, visiting that link, when I saw that these people were trying to bring Math and Computer Science together, I knew it was something that I could not miss at any cost. I sent Siva and the rest of them an email then and there itself saying I had stumbled upon this TechBuilders meeting and might not be able to make it for the Django workshop.

I love teaching and hence was extremely upset about missing the Django workshop. However, on the other hand, I felt like the TechBuilders people had read my mind. It was, as Paulo Coelho would say, a calling. I could not resist going. Also, I had to give up on my Saturday writing as well.

It was being hosted at Haggle’s office. The people working at Haggle were the ones behind BeaglesLoft (a playground for creators and innovators) and also behind TechBuilders, their initiative to teach the Bangalore tech community something that it is lacking. The office was just a 5 minute walk away from my home.

The mail which we received from Asya, the quick witted community manager at BeaglesLoft, on the day before had asked all of us to be there at the venue exactly at 10:30AM and not to follow the “Indian Standard Time”. Little did they realize the inevitable force they were reckoning with. The meeting started at 11:00AM.

The event was supposed to start off with Sandipan from JustDial giving a talk on how they were using Bayesian theorem at their company. Unfortunately, he had some emergency and could not make it. So Niranjan, who is the founder of Haggle, took the stage and started off by introducing us to what the whole deal was about.

The thing that I liked about Niranjan was that he was not pretentious. He really observed Math was not a part of the IT culture, along with the liberal arts being treated as a completely separate entity as well. He wanted to create an atmosphere where these things would co-exist and would value each other’s importance. There, he was doing it.

Not just that. I have heard many people twisting their words to indirectly mean “spread the word”. Niranjan directly told us to do it. His conviction to doing this impressed me. Apart from taking the initiative to build the community, I must say he is a really good teacher too. He taught me Math and that, is amazing.

If you were to meet me before my 4th year of college, I would have told you, without question, that I was going to become a Math teacher. So when he talked about Mass Probability function and the Bayesian theorem in a way that I could understand after more than 2 years of staying away from it, it felt really great.

You must read his series of blog posts on Bayesian Reasoning here: http://beaglesblog.tumblr.com/tagged/techbuilders

We were asked to read them before attending the meetup. Having been the college kid, I put it to the last moment as usual. An hour before the meetup! I finished off all the posts within 45 minutes and it was time to leave in order to reach the venue on time. That dreadful feeling of not having revised what you had learned that dawns upon you on the morning of the exam day was on me. I know, it is funny. But to know that it was not something to worry about, made me feel even more excited to attend the gathering.

Towards the end of his session, he proposed a few use cases where Bayesian reasoning could be applied so that we could break up into teams and work on modelling them.

One was about a Rikshaw driver. Suppose you were one and someone came and asked you to take him to Jayanagar, how would you apply Bayesian reasoning to know whether it would be profitable for you to take him there.

Second one was about the problem given on the blog itself, identifying a person whom you meet in the US as being from Bangalore or not.

The third one was the famous Monty Hall problem. Even though I say it is famous, it was the first time I was hearing of it. It is an interesting problem which makes you realize why Math ain’t your gut feeling. It is a bit crazy, but yeah, read it.

We decided to then split up into three teams of 5 each. The decision was followed by an interesting 5 minutes of trying to figure out an algorithm to split us up. Whether the count should start from 1 and go until 5 before the 15 us were through or whether it should start form 1 until 3 until all of us were through. The confusion was funny enough to have while we were learning Math!

I was in team 2 consisting of:

Sandeep, an IIITB graduate who was going to join Haggle in a few months. He was sharp. The moment we gathered around a table to “brain-buzz”, he came up with this idea of building a recommendation system which would analyse the social media streams of users and figure out what sort of restaurants he preferred to eat out of.

Ashray, who was working with Haggle already. A strong and silent person, I would say. He was as keen as the rest of us on learning together.

Ashutosh, who is Sandeep’s junior at IIITB. He is awesome. When I was struggling to get the basics really strong, he took my pen and paper from me and taught me the reasoning from step 1 patiently, with examples and proper explanation. I hope to see more of him over the coming days.

Last but not the least, Fasil. I would define him as exuberant, but not the BSing kind. He was very outspoken but knew exactly well what he was speaking about. He was working on his own startup.

By the time we had discussed and modelled our recommendation system, it was time for presentations.

Oh, and I forgot to mention the drinks and biscuits that were there all along! No, no, seriously. What kind of a chump would I be if I did not mention this after eating 6 of those delicious cream biscuits right under the nose of my team mates while they were busy building the recommendation system!

Asya, Reya and Tania made sure we had the best atmosphere for thinking and solving the problems at hand. These are the times when I really see the importance of good community managers. They make other people’s lives easier. I never saw myself like that when I was at HasGeek I guess. I just hope others did at least.

It was time for the presentations and team 1 was the first one to go in front. They had build a model around detecting the person who was sarcastic. After analysing manually a few 100s of a person’s tweets and identifying the sarcastic ones in them, each person was assigned a probability of being sarcastic based on how many times he was sarcastic among his past 100 tweets.

This was done for more than a few users. After having built the prior data, when a new tweet came in, you could use the Bayesian reasoning to find out what was the probability of that tweet being sarcastic given it was from a particular user. They had a few numbers as well for demoing this.

Second one was us. Well, I have already explained what we did. The interesting point that Niranjan made was to use more than just words for our probability calculation. Because if we were to just look at words like “Pizza”, “Burger”, etc, then we would miss out on differences between sentences like “I hate pizza” and “I love pizza”.

Once ours was concluded, team 3 came in. They had a funny use case. I have learnt to take things in a lighter note and I hope people don’t jump around reading the use case. It was about the probability of a girl going out with you given the fact that she smiled at you. As funny as this was, for a few of them to think of something like this, would mean that the social media that we have today would have already gone miles ahead in terms of taking advantage of  us on similar terms. It was scary.

Niranjan came up to conclude the presentations. This is where he asked us to spread the word and help build the community. He left the rest of the afternoon as an open invitation to do anything sitting together or to move out.

They were taking memberships for the community and I “sold my soul”, as Asya put it. We hung out with each other for an hour or more, getting to know each other better.

I met Samarth, a smart lad who was a Hardware hacker by passion working at Infosys. His face was familiar and there was only one question that I could ask him about it. “Were you there at any HasGeek events?”. Yep, he was there for Droidcon 2013.

Then there was Vamsee, who was a kindred soul when it came to people calling him “Vamshee” adding that all-too-horrible “h” right in the middle! We shared our grief with each other over how inconsiderate people were towards our feelings.

Then there was Ashutosh, Jha (because I really can’t remember his other part of the name), Fasil, Prateek, who asked me, “Hey, aren’t you that guy who wrote that Eventifier blog post? That was amazing”. I was so happy! Jon from Minsh was there. It was good to meet him after such a long time. He was the first few geeks whom I interacted with as soon as I had joined HasGeek. Definitely a part of what made me grow.

We shook hands and were about to leave when I met this unassuming young fellow at the stairs.

“Hey, don’t I know you?”

“I am Rishab. Umm.. Do you know me?”

I unleashed my secret weapon once again.

“Were you at any HasGeek event before?”

“Oh… Were you at MetaRefresh 2013?”

“Yeah, I was a part of the organizing committee”

“Okay. Maybe you heard about that guy who gave a talk on CSSDeck?”

“Oooh! It was you! Now I remember… Cool man”

So that was him. He had generated a whole lot of buzz with his flash talk at that conference. He said he was working on his own startup now. I bid him goodbye and was on my way.

Now I have an excuse to learn Math. I hope these folks keep at it. It was amazing.

My beginning and journey so far with Eventifier

The beginning
——————-

“Yawn”.

I was quite irritated being disturbed from my peaceful sleep by my phone ringing. With sleepy eyes, I looked at its screen. It said:

“Jaseem Abid calling…”

“Oh man, not now.”, I thought. Not because of any personal reasons, but just because I was craving for that deep sleep and my mind working was the last thing I wanted at that point. I put it to silent, ignored the call and peacefully went back to sleep.

When I woke up after an hour or so, I found a message that Jaseem had left.

“Hey, there are these guys looking for a Python dev. Wanted to talk to you about it”

(Detour)

This happened sometime in September 2013, while I had already submitted my resignation at HasGeek. I had talked to other folks and was looking around quite desperately to find another job. There were a handful of people whom I talked to before I made the decision to resign. If not for the support offered by people like Arpan & Vamsee, I would have probably gone into a state of depression. They were kind enough to let me learn from them by staying with them in case I wanted to polish up my programming skills. Sajjad was another person who gave me hope by introducing me to Gautam and considering my engagement with Akshara Foundation. That, however, had been on hold since they were trying to figure out a road map for the next year and said they would need at least a month before letting me know.

Even Kiran had introduced me to Sameer from Next Big What. He recommended me to them as an excellent writer. Discussions were going on with them where they wanted me to complete a few tasks before they could take it forward. Since I expressed my interest, as delicately as possible, to write code, they gave me a data set, asked me to Visualize it using JavaScript and write a report on it. JavaScript! Visualizing data sets! I was doomed. For all the Data Visualization hacknights and JSFoo conference I organized and was a part of, I had never written or read a single line of JS.

However, if not then, when I was going to learn programming? I intended to give it my best shot. I had not quit HasGeek then. I was a full time employee. Hence, I had to do this task in the midst of all the emails and organizational activities. I had one week time. At the end of piling up all the tutorials, copy-pasting code, trial and error fixes, I finally managed to do a really, extremely crude bar graph visualization of the data set. No one would be able to understand the joy that I felt at being able to do that. Also, since I had finished this by the evening of the day on which I was supposed to submit it, I had to finish writing the report in an hour, which I did. I think it was a sad piece of work and that they were not quite amused. Suffice to say, there were no further interactions.

You can find the code as well as the report here: https://github.com/harisibrahimkv/d3_viz

The situation was really quite dire. I had no industry skills in terms of programming apart from the few incomplete pet projects I tried to do during my time with HasGeek. Since my job was mostly related to organizing, emails, community management, etc, I never could find an uninterrupted stretch of time to dedicate to learn writing code. After all, I do realize that managing humans is far more rewarding and complicated than managing code.

You must be thinking how I found the courage to actually submit my resignation without having another job or the necessary skills to attain one. Well, I guess many people do it and it is not so much of a big deal. Let me tell you though, it was and still is a really big deal for me. Anyway, there was a person behind me finding courage to take the step forward.

(Following is one day before I submitted my resignation)

Sudar Muthu is a loving Husband, a caring Father and a passionate programmer. Even though I had heard his talks before at HasGeek events, we got to know each other better when I approached him for doing a hands-on public workshop on “Processing Data using Pig”. We used to keep in touch after that and we met each other again at PyCon India 2013, which happened at the very end of August. That was my first ever PyCon and I was glad I attended it. I was catching up with friends over breakfast. I could relax and take my time to do it since I was not a volunteer (although I ended up pushing boxes, selling T-shirts and packing participant kits).

In the midst of breakfast, Sudar walked past me. I called out to him.

“Hey Sudar!”

“Hey Haris, how is it going? It has been a while.”

“Not bad. My first PyCon. You have a talk today, don’t you? Looking forward to that. Feels glorious not being responsible for anything that is happening around me for a change”, I added with a chuckle.

We chit chatted for a while. At some point, the conversation shifted in the direction of me explaining that I was in a troublesome situation where I wanted to shift to a programming career and I could not leave my current job unless I found another job, which was quite impossible in the current state of affairs. He had just one question to ask.

“Do you need to have a job?”

That caught me off-guard.

“W-What?”, I asked, stuttering.

“Are you in a situation where you need to have a job? Where people are depending on you or you have big loan to repay or something?”

“Uh, no. Not really….”

“If you really believe that you are not doing the right thing, then this is the time to make the difference. Before financial aspects become a responsibility and burden. Take some time off and make *absolutely* sure that you make the most out of it. Otherwise it will be an even worse situation”

I could only look at him with wide open eyes. I would not say I was in a shock, but it was something quite close. I could feel my brain rewiring, dropping certain assumptions, bringing up new plans, constructing alternate routes, opening up new doors, and a little devil at the corner who would damn my soul if I were to fail myself in taking and executing the right choice. All happened in a split second.

We chatted for a while more regarding this. However, my innards were bursting with a sense of anxiety and excitement.

“This is it. I am going to do it”

On September 2nd, I submitted my resignation.

(Coming back to where we left off)

I called Jaseem then itself. He explained that there is this company called Eventifier being run by three friends.

“They are not hardcore techies, but are really nice guys. I am planning to work with them for a month and see if we can continue the engagement. I’ll whatsapp you Jazeel’s number. He is the CEO of the company.”

This is back when I had whatsapp and the Nexus4, courtsey of HasGeek. He went on for a while longer talking about the company. He ‘whatsapped’ me Jazeel’s number.

Quite frankly, I was not amused. Due to my extreme ego of thinking I was destined to be the greatest person in the world, I thought, “Well, yet another startup somewhere. The Akshara one looks more promising. And oh! These people are building a product having something to do with social networking!”

Whatever is the opposite of fanboy-ism, I used to be that when it came to social networking sites. I never had any proper justification for my thoughts I guess.

I tucked the idea away in a corner of my mind and moved forward. October came and whatever I explained in terms of Akshara and Next Big What happened then. I was at home for a week during October for Eid. One of the days, while I was watching some movie on my laptop at around 8’o’clock in the morning, my phone rang. It was an unknown number. I attended the call.

“Hi, is this Haris?”

“Yeah, this is Haris”

“Oh hey, I am Jazeel. Jaseem must have spoken to you about me. I am calling from Eventifier”

“Ah yes! I remember. I am so sorry. The days have been too busy that I forgot to call you”

“Its alright. He said you were looking to move out and find another job. How are you placed now?”

“Well, I am talking with a few people, but nothing confirmed yet”

“Yeah, the thing is, we are also looking to hire a Python developer. We just moved to Bangalore a couple of month’s back and are planning on expanding”

Jazeel went on to explaining what Eventifier does.

“Also, we got funded by Accel. So, would you like to meet and talk sometime soon?”

“Ehm well, you should know about my Python development experience as well. I don’t have any experience writing production code. I have used it for my projects at college as well as to do some pet projects which you can find on my Github profile. I guess that is about it”

“Oh cool. Let’s talk about it. Are you in Bangalore now?”

“Uh no, I am at home in Kerala. I’ll be back on Wednesday. Maybe we can meet Thursday early morning? Say, around 9?”

“Sounds good. I’ll just confirm with the rest of my team and let you know over email”

“Cool”

“Okay, bye. Oh and how old are you?”

“Uh, 24. Why?”

“Nothing. Just wanted to know. I’ll send you an email”

“Alright. Bye”

“Bye”

On Thursday morning, standing in front of the Accel partners office, I just cut my call telling Jazeel I had arrived. After a few minutes, someone tapped on my shoulders. I turned around and saw this handsome looking young man with a slightly golden colored beard and hair, standing behind me with a smile.

“Haris?”

“Yeah”

“Hey, nice to meet you. I’m Jazeel. Let’s go in.”

We shook hands and he led me in. I had to sign in my name in the visitor’s register, after which we went to one of the meeting rooms. He asked me to wait while he fetched someone else whose name I did not quite catch. At the moment, tension started creeping up my spine. I thought to myself,

“What the hell am I doing here? I haven’t even prepared for an interview! Heck, I should have at least read something up about their company. Oh my God…”

My thoughts were cut short by Jazeel entering the room along with the “someone else”.

J: “Hey Haris, meet Saud. He is the Chief Designer of Eventifier”

I was a bit amused. The CEO was as old as me and now he brings in another 25 year old saying he is the chief designer! “Gosh, this must be like an army of Ershads!”, I thought. Ershad is a friend who dropped out of college during his second year. A genius hardcore programmer and a Free Software enthusiast. He used to be the winner of all tech competitions around Kerala.

S: “Hi. How are you doing?”

Me: “I am fine, thank you. How about you?”

S: “Good, good.”

J: “Yeah so… Nazim will be here in a bit. He is the CTO”

Augh! What am I going to tell him, what am I going to tell him! Technology scared me.

Me: “Ah okay. Well, maybe to begin with you could elaborate a bit on what we discussed that day? I mean, about how you guys founded the company and what it is about?”

Jazeel and Saud together explained their adventure. That story is already told and hence I won’t go over it. Towards the end of it, the door opened again. A simple looking cool person with long hair and an almost-French beard entered.

J: “Meet Nazim”.

Me: “Oh hey, I’m Haris”

N: “Yeah hi, I’m Nazim”.

He had a really soft voice.

Me: “Well, as I was telling Jazeel, you guys should know I don’t have any experience writing production code. Only a few pet projects and a handful of tutorials is what I’ve got. Apart from attending and organizing the best workshops on Python and Git, I’ve never actually quite gotten down to using them.”

There was laughter around the room.

Me: “What do you guys use and what sort of a workflow do you have?”

I could not believe how humble the three of them were. Very down to Earth, soft spoken and very gentle. I have met a lot of people during my HasGeek days and I must say almost every one of them had one point or the other where they would try to sell themselves showcasing their talent or skill and asserting they are good at it. Nothing of the sort came from these three. As far as I am concerned, after having accomplished so much and establishing a company, if you can be so humble, that is quite an asset.

N: “Yeah so… We use Django and Python. And we have made a git repository on Github where we push the code. We pull from there onto the server and deploy it”

Me: “Uh okay. Um, is that it?”

N: “Yeah, that is pretty much it”

Me: “Cool”

J: “We’ll get Ajay, our adviser, to meet you now”

With that, the three of them went out. I sat there for a while. Ajay came in and asked me about my previous job and a few metrics related to it. It was a short conversation. After that he went out. Jazeel and Saud came in.

J: “Yeah, we are happy to have you onboard. Ajay also felt you would be a good fit”

Wow. That was fast. Was it that they did not hear what I said about not having any experience or whether they chose to simply ignore it? Whatever it was, I thought getting to be in the company of these people would be an unmatched asset. I had almost made up my mind.

J: “So what do you feel?”

Me: “From what you have told me, I’m interested in going forward as well. But you should know that I won’t be able to contribute to your code from day one onwards. Maybe you can send me a small task that I could work on in order to get acquainted with the technology?”

J: “Sounds like a good idea. I’ll tell Nazim to get in touch with you regarding that”

We discussed the joining date, which would be on November 11th, a Monday, since I was leaving HasGeek on October 31st and would be at home for a few days after that. We decided on a salary as well, after which we parted.

I was leaving for Goa that day along with Kiran and Zainab to attend NitroDroid. I remember calling my Mom and Dad while I stood waiting to embark on the KSRTC bus to Goa and telling them I had made up my mind to join Eventifier.

On Octoer 31st evening, I was sitting with mixed feelings. I tweeted out this the day before: https://twitter.com/harisibrahimkv/status/395799344231616512. I believe those emotions are better kept inside of me and hence I shall refrain from writing them. Around 5, I packed my bags and got out. My eyes watered slightly.

The Journey so far
————————-

I have never pulled an all-nighter in my life. Until the day came where I had to finish Nazim’s task. I finished them on the 9th of November at 6:00AM, having sat through the entire night. No coffee, no energy drinks. Just working.

On Monday morning, at around 9:00AM, I tweeted this and got out. Full of excitement, I reached there only to find Jaseem there. He waved to me from the great glass building and asked me to come in. I obliged and went in, thus starting my first day with Eventifier!

PS: Meanwhile in the Founders’ home.

“Nazim, Nazim! Wake up! Haris has tweeted! I think he is already there.”, Jazeel was frantically trying to wake Nazim and Saud up, having himself only woken up at about 9:45AM.

“Wha, what?”, Nazim stuttered, waking up lazily and rubbing his eyes. “Oh! We have to go now.”

They had hired their first employee.

***

Bryan Adam’s “Summer of 69” is one of my favorite songs of all time. There is one line in that song which says, “Those were the best days of my life”. That is exactly what I have to say regarding the past 6 months. On different levels, it has worked out really great.

First of all, establishing a routine. I was adamant about establishing a work life balance. Although a few people advised me against doing that during the early days of joining a company, I did not pay heed to it. I should say it has worked out quite well. From day 1, I would wake up at 6, finish off my chores and prayers, bath and leave to office around 7:30. Breakfast would be from the Madhurai Idly Shop near my office. I reach my desk by 8:15 – 8:30. I check my mails and Twitter for half an hour and then jump into work. Usually it is even earlier. Since the office is a shared space, two other companies use the space as well. However, none of the employees come in before 11 or so. Hence, I get a lot of peaceful time to work. I would leave back for home latest by 4:30PM every day. This way, I avoid the rush hour traffic both in the morning and in the evening. Weekends – absolutely no work. Even if I laze out completely, I used to refrain from work. This was not the best of things to do, and I am rectifying it slowly. I was more than glad that the company allowed me to maintain this.

I took up cycling. A gazillion thanks to Sam Kocsis for letting me have his bike, a Bergamont Vitox 6.2, while he was going back to the US. It has been a tremendous experience the last 6 months cycling wherever I go. The concept of having to wait for transport has become so alien! The best part is, the grey areas of traffic where a cyclist can easily find his way through traffic. However, I must say most of the motor vehicle drivers are inconsiderate towards cyclists. They blow their horn and give looks that says, “Why the hell are you even on the road butt head?”. Anyway, I am enjoying the ride.

Cooking was another interesting practice I started. It is amazing how the human mind and body works once you decide on doing something. It adapts pretty well and delivers. Although not a master chef, I can make decent food for myself hence eating home cooked food and bringing the cost down as well.

All this would not have had its fun if my work did not go well along with it. I was amazed at how pleasantly all three welcomed me into their team like a family. At times when I get excited about something that I am working on, I stay back late and feel lazy to cycle back home. During those days, all of us go back together to their home, which is close by to the office and I spend the night there. We kick up a ruckus now and then with the football they have in their home. However, lately, Nazim skilfully bent the ball to go and hit the mirror hanging on the wall just above the basin. Suffice to say, they are ‘mirrorless’ now.

I started learning Django. The craft of software production, at least to get things done, was not so hard as I had thought it to be. I started delivering within two weeks. From then on, things moved forward with quite a pace. Exploring different ways of doing things, looking into cleaning up code, a couple of rewrites, etc.

The most interesting part is working with Nazim. Being the CTO, he is the one who wrote the entire code base single handed. Jazeel was on Marketing and Sales while Saud was on Design and Administration. Hence, for a person with 3 years of hands-on experience with Django, he has always let me do my stuff. Elaborating on that, whenever I am building something, I would discuss now and then about it with him. The funny thing is, he would know that the implementation would have a bug if done that way. However, he would never say that up front. He would let me do it. I would happily do it, test it on local or staging and it would fail. I try to isolate the bug and ask advice on what might have gone wrong. He would sit back on his chair, legs crossed and say,

“I am not sure, maybe something went wrong with <that particular part of the code>?”

Guess what? That would be the exact part of the code which would be causing the bug. As such, my respect for him has continuously grown.

I believe I am off to a good start on my plans to get into teaching. The learning experience has been amazing although I myself think I have not worked hard enough. Well, it has only been 6 months and I believe there is a lot to come.

Saud is the one who comes earliest to office among the three. Around 10:30 to 11:00AM. A pleasant soul to talk with. He always inquires about how life is, about family and in general whip up a sweet conversation. Someone to whom you could open up to completely and he will sit and listen patiently until it is over. Now that Praseetha has joined us, he has the job of being a mentor as well.

Jazeel, being the face of the company, is the cool dude around. Lately he has switched over the US timings since all his calls with clients are during the night. He usually comes to office around 3PM or so and starts his day then. He has his own strong opinions on matters which he is not even in the slightest sense afraid to shout out. Conversations with him leads to insightful discussions. I guess getting through to the customers is the greatest skill that a sales ops should possess.

Oh, and at times, we go around working from different places as well, like the Ants Cafe and Mr. Beans It has been amazing so far and I pray that it continues to be so. Our team goes strong with 6 including me, Jazeel, Nazim, Saud, Nawaz, who is a sales ops and Praseetha, whom I have written about aplenty before.

—————————————-

Comments from Twitter:

Jitendra Vyas and The Bangalore Front End Developers

The following blog post was written a while ago. Due to one reason or the other, it never got published. Well, the wait has ended!

It is just like “Wolverine and the X-Men”, but a way more creative bunch.

******
Jitendra Vyas
 is one among those who were enthusiastic about art and design even before the Internet was widespread in India. Passionate about experimenting and learning new ways of web design, he was always on the lookout for further knowledge and experience. As such, it was important to him to find people who knew more than him; to share what he knew, and to learn what he knew not. It was this yearning of his that led him to bring together the Bangalore Front End Developers community.

According to him, in this world where tools and technologies are changing so fast, the ability to understand and start using a tool is equally important as having a thorough understanding of the basic concepts related to web development. “It is one thing to say you know HTML and CSS really well, but it is completely another when you use notepad to type in your code”, says Jitendra. “You have to pick up tools that will make your life easier, tools that increase your productivity. Without them, you will be left behind in no time because these days, speed is as important as quality”.

His career as a web designer primarily started when he joined a software firm in his home town Bikaner, Rajasthan. There he started experimenting with HTML and CSS as a way of bringing his design skills onto the web. He found Dreamweaver to be extremely helpful in this regard. With fiery enthusiasm, he explored and experimented on his own, thereby learning a lot. Even though his company fared well, his thirst for exploring new horizons couldn’t be quenched remaining there. After 3 long years of work, he quit.

His thoughts on design as a profession were quite insightful. According to him, finding a good designer is not that hard if you stop comparing them with each other. The trick is to search for them at the right place and be open to hire them from any part of world. However, it is a bit difficult to always give them the correct combination of interesting work as well as good pay.

He thinks that as far as a company is concerned, just hiring a good designer is not enough. You have to listen to them, give value to their thoughts, give them the freedom to experiment, give them time to read UX blogs, invite them to attend product meetings, send them to design conferences if you can afford to, buy them good books, etc. Designers should not be considered just as a pixel decorator. The more he understands the expectations from a project or product and about who the target audience are, the better he can design. Also, a good design is not a guarantee of good user experience. There are many cases where even fantastic graphic designers tend to lack in UX skills. Due to that reason, everyone should be involved in design decisions. Good User experience is a team effort and everyone is a part of that – Designer, front-end developer, copywriter, back-end developer, product manager, etc.

From his experience in the industry, some (not all!) good designers don’t prefer to work at big companies because they think they would not be able to make good designs with their own vision, as well as because they might have to work with people who have less understanding of design than them. He quoted the following:

“The enemy of good design is rarely bad design; more often, it is politics, and poor understanding of the problem at hand”

Moreover, as a freelancer, you are free to choose your own clients and interesting projects and can earn even more money than a regular job, if you are really good at what you do. However, if you are able to find the right enterprise, this shouldn’t be that much of a problem. There are actually many good designers who work at big organizations as well, and these people make designs too.

FED

Being at Bangalore, he looked forward to meeting people with similar interests and learning new technologies related to front end development together. He used the most popular and easiest method of reaching out to everyone – Facebook.

He put down his initial thought on the UX India group. He received an amazing response as many people out there were excited to find a kindred soul. The replies and comments from them was the motivation that Jitendra needed to take the initiative to form the Bangalore Front End Developers group, comprising of a group of elite developers from Bangalore. The group came to be on 26th August, 2012. Read his first post in the group.

Things kicked off when Kavita Arora of the Bangalore Designers group invited Jitendra for giving a demo on SASS for one of their meetups, which was held at CIS. This was done as a joint workshop along with FED.

The group started growing when Jitendra started adding developers from his network to the group. The growth continued when his friends added their friends and so on.

Still being in the early stages of growth, they have not fixed any strict schedules for meetings as of now. Yet, the group is very much active, brimming with discussions regarding the latest and coolest front end technologies.

Apart from just geeks talking to each other about heavy duty front-end issues, they help each other out whenever one of them gets stuck at some point. They have online meetups every now and then, by which they are slowly moving forward on the beautiful journey that lies ahead.

The group is thriving with 800+ members today and instead of simply increasing the head count, they strive to keep the group alive and productive with the ones who are already there. In Jitendra’s own words, “It is easy to start a group, but to prevent it becoming useless, is hard”.

Jitendra specially thanks Praveen Kumar, Mikul Gohil, Maulik Suchak and Pulak Kanti Battacharya for helping him to keep the group going strong.

Maulik Suchak says

First, FED is not a term for me. Its a platform where Geeks becomes ‘SuperGeeks’. As we already know, there are lots of things that keep happening day by day in the Front-End world. This is the group where you can share ideas, meet front-end geeks and share tricks!

Talking about the future of the group, I must say it looks very bright. If we do something with good cause, people will surely admire it. Moreover, all of us are putting in our best to keep it alive.

Personally, I like the group because the people there are very enthusiastic and active. We even have plans to take this discussion out from Facebook to our own website if we can achieve it. We are thinking of organizing outings as well.

Mikul says

FED is great! I have never seen such an active group. The good thing is that people are friendly. We joke, we fight and we help each other out. It is just like family to me.

FED has many talented people in the group. I would love to work with them if I ever get a chance. It has helped me in many ways as a developer as well. I had an illusion of knowing a lot about front end development, but after joining this group, I realized that there are still lots of things out there that I need to learn and explore, things that I did not know of in the past.

Bangalore is the place where people come to develop and educate themselves, to make one’s self the best there is. This group has many such motivated people and to have people like that around, makes a lot of difference in your work as well. From getting help to fix issues when you are stuck at some point, to getting to know the latest trends in the market.

If you want to learn something new, then this group has a lot to offer you.

Praveen says

Jitendra started this group after we were discussing about SaaS in User Experience India fb group. We decided to organise a meetup where we got to meet many other front end developers and got a chance to discuss about the workflow each one uses. We also pledged to never hoard the knowledge we learn/acquire and always share it in the group. Then we had a Google Hangout on various CSS frameworks. Non-bangalore folks joined in as well.

I was under the impression that all good designers and front end developers had moved to the valley and nobody stayed back in India. However, the group proved me wrong. I think it encouraged a few of them to come to Bangalore (to attend events like Meta Refresh and then meet other members)

So far, I’ve learned a lot from the discussions we’ve had in the group and I see regular meetups/learning sessions happening in the near future. I hope this encourages developers from other parts of India to start their local user groups as well.

It would seems that Christian Heilmann is an active member of the group. Check out what he had to say once: https://twitter.com/codepo8/status/405747481201229826

In a interesting turn of events, Praveen accidentally made the group a secret one, which unfortunately, was an action that Facebook doesn’t let you revert. So if you want to join in, you should be friends with someone who is already in the group and they have to send you an invite. You can see the current members here: http://labs.apnerve.com/bangalore-frontend/

Well, that’s it for now folks! Here is to the future!

Being a part of the Mozilla community.

It would be appropriate to start by saying that this is my baby step, the first step in trying to contribute back to the Mozilla community for all the effort that they have put in in order to connect people around the world and make amazing products. To be quite frank, I used to have an impression (as is my impression about all things amazing) that all this talk about “community” and “contribution” were only meant for the elite and masters of technology out there, two of whom I know being Sajjad and Nigel, two hardcore techies.

Now I know am wrong.

This realization came about due to two reasons, which I will come to later.

I started using Firefox almost 7 years back, when I first got my computer, about which I have written here. Chrome was not there then. As mentioned in that post, I was quite new to computers and my understanding of browsers was that they were what people referred to as the “Internet”. So I went on using “Internet”, unaware of the fact that I was using Firefox for about a year. Thinking about it now, I am not quite sure when I started understanding about browsers for what they were, but since then, till the December of 2012, I continued using the same.

I was employed by this time and the pressure of having to learn and understand technology was on me. In my journey of understanding more about computers, I used to do the online courses at Udacity and Coursera now and then. However, one day during the course, the video classes started to crash with a message, “An error occurred”. A reload used to solve that, but this kept on happening until one day, I just could not watch any of the videos.

I got irritated. Showed it to my colleague who tried opening up the same video link in his Chrome browser. It worked. I switched.

For the past 10 months I’ve been using Chromium, until recently, after I shifted my career to becoming an Engineer, when I found out my RAM was being eaten up by Chromium. I tweeted out saying this and without further delay switched to using Firefox. I would have been happy using it and simply going forward, if not for Firefox’s response. It was not too much of a big deal, but I was touched. At that instant, I felt I was a part of something bigger.

This was one of the reasons why I had the realization that I mentioned earlier. I came back home and started looking for opportunities so as to how I could get involved even further. I landed up on their contributions page. I filled up my email id, chose my area of interest as “Documentation and writing” since I was more confident in my writing skills than my coding skills at the moment, and submitted the form.

This is when the second reason for the realization hit me. My friend Haseeb. He was passionate about the Urdu language as well as about community development. Both these combined led him to take part actively in translating Mozilla to Urdu. His contributions were not at all gone unnoticed when he received an invitation to be a part of the Mozilla Summit in the U.S. a couple of months back. So have an open mind to contribute, with whatever you know and whatever you are passionate about. Hence, here I am, having reached the point where I had submitted my volunteer form.

All this was done in that adrenaline rush, which I knew had happened to me more than once before. However, nothing of the sort would continue as all would end up in a couple of automated emails that I would receive asking me to act. The same happened here as well. Though things would have continued like that, even before I had the adrenaline rush die down, I received one more email. This time from a certain human being who goes by the name of Janet Swisher.

Even though she told me that technical documentation was where they were best setup to bring in new writing contributions, she did not discourage me on what I had pointed out saying I was better off as a story teller or a biographer than a technical writer when it came to writing. With the promise of passing on my remarks to their creative team and reading my blog posts to provide her feedback, she ended the mail.

That part where it conveyed it was not just about them and what they wanted, but also it being a part of what I was and what I could do, was quite heart warming. I replied and we exchanged a couple of emails where she pointed me to a couple of links as well as read a few blog posts that I had already written, complementing me on them. It was her suggestion to take the first step by writing a personal blog on what Mozilla means to me.

At this point, more than just thinking in terms of Firefox, I was inclined to think of a bunch of nice people trying to strengthen human relationships across the globe around technology. Hence, I was inspired to write about how touched I was with their effort to actually take the time to reach out to a complete stranger and offering to help him out. And here I have written about it. May this be the first step in a journey of  a thousand miles.

Learned Web2.0 the hard way.

So, Kiran decided that he wanted to make “funnel” (http://funnel.hasgeek.com/) as a separate application so that people could use it for their own events and stuff. After all of us at HasGeek had a face to face discussion regarding the matter, we reached the point where we had to think of a new domain name for the app. The discussion was left off at there, only to be reinitialized again on the IRC last Friday night.

People jumped in and started suggesting names – funnelit, thefunnel, heyhofunnel and funnelwhatnot. The list went on and on and on. It is hard to contain one’s temptation in such a situation and yours truly had his own share of contributions to make. Well, until what happened next.

Yours truly is “kaakku” on IRC and he came up with a brilliant name. See what followed:

* chandan_kumar (~chandan@112.79.36.144) has joined #hasgeek
<kaakku> Funneller.com?
<jace> fnlr?
<anandology> funnelr.com is web2.0
<jace> funnelr?
* tazz (~gaurav@115.114.59.182) has joined #hasgeek
<anandology> 🙂
<jace> yeah, we’re not 2.0

There you go! Kaakku was sitting there in front of his computer thinking what the heck was going on with all the sudden web2.0 references and the misspelled rip off of his brilliant suggestion. He did feel something fishy going on, which took his thoughts to the man, the machine, street hawk. Err.. I don’t where that came in from all of a sudden, but what I meant is that I went to Mr. Jonnalagadda, and expressed my state of ignorance in front of him, only to be faced with a roar of laughter from him as well as the King, Krace!

Ha! Laugh or no laughs, I was not going to go until I got my answer. I was there on a mission, a mission from God. Or, Whatever..

So Kiran decided it was worthwhile to take a few minutes off his coding spree and explain to a certain geek herder what Web2.0 was all about.

Well, it seems Tim O’Reilly coined this term, Web2.0, meaning that web had evolved into its next phase from what it was with just the static pages hosted on a lot of computers. (Man, I just have to say this. Oh really!) Anyway, this thing caught on and people started coming up with all-things-2.0.

Kaakku found the story really amusing and funny. However, he thought, “Yes, that is a really amusing story, but what the heck does that have to do with me suggesting ‘funneler’?” He thought that through his mouth, which carried it to Kiran.

Kiran continued with the story. Somewhere around 2005 or so, a certain photo sharing site was born, or rather, was built by a certain excited group of people who always would shout out with joy. They came up with the idea of the site and a perfect name for it too. However, unlike human names, you were not allowed to have more than one website with the same name. These guys thought hard and long and finally came up with a solution, a solution that made Mr. Kaakku embarrassed on a certain Friday night on a certain IRC channel.

The guys omitted the ‘e’ from ‘flicker’!

Just as the Web2.0 revolution, the idea of ‘omission’ caught on which led to a wildfire of startups and projects all having misspelled names, omitted letters and what not.

“Ah! Here we are!”, thought Kaakku, feeling enlightened and less stupid, having learned Web2.0 and spelling mistakes the hard way.

But come on guys! I suggested “funneler”! Who the heck took out the el’s and eeeeeee’s!

Lesson learned: When someone mentions Web2.0, they are making fun of you. Lol!

 

Debian – Choosing between stable, unstable and testing.

After installing Debian, one of the problems that I faced was which version to use. Version as in stable, unstable or testing. Since I personally knew a Debian developer, Praveen A, I turned to him for guidance. The reason why I got into this state was because I found out that Debian squeeze stable had python 2.6 in its repositories. However, I wanted python 2.7 for my work.

I asked him what these versions mean and how I could switch between them. He gave me the following explanation:

“Sid is where all development happens, all new packages come there. Then it moves to testing when certain requirements are satisfied. At a certain point focus is shifted to fix all bugs in testing and this is called freeze.

So main distributions are stable, testing and unstable. There are nicknames for each. Unstable is always called sid – that kid in toy story who always break things. Current stable is squeeze, testing is wheezy and next testing is jessie. When wheezy becomes stable, squeeze becomes old stable and jessie becomes testing. A copy of testing is made and it is called stable, testing is renamed and freeze is lifted for next release cycle.

So change to testing means change stable/squeeze with testing/wheezy in /etc/sources.list and do apt-get/aptitude update and dist-upgrade. If you choose wheezy, you’ll get stable when it is stable, if you choose testing, you’ll always be on testing. Same for sid as well.”

Since testing sounded stabler than unstable, I decided to go with testing. So here is how my /etc/apt/sources.list looks like:


#

# deb cdrom:[Debian GNU/Linux 6.0.5 _Squeeze_ - Official i386 CD Binary-1 20120512-13:45]/ squeeze main

# Line commented out by installer because it failed to verify:
deb http://security.debian.org/ testing/updates main
# Line commented out by installer because it failed to verify:
deb-src http://security.debian.org/ testing/updates main

deb http://ftp.us.debian.org/debian testing main
deb-src http://ftp.us.debian.org/debian testing main

deb http://ftp.us.debian.org/debian testing-updates main
deb-src http://ftp.us.debian.org/debian testing-updates main

I’m still not sure whether I should add any other repositories, but as of now, this has worked well for me. Once you make the changes to the sources.list file, you have to run:

$ sudo apt-get update && sudo apt-get dist-upgrade

Prepare yourself for long hours of download. It took me almost 8 hours to have my distro upgraded. Have fun!

Is execution important than vision?

I had a pretty tiring day.

Being at the town, I started walking from a certain point, under the blazing hot noon sun, visiting each and every slipper shop on the way, trying to get hold of a certain brand which I had been using till now. I walked and I walked and to my surprise and dismay, reached back at exactly the point that I had started, without any luck whatsoever. Tired and wounded, not to mention disappointed, I went and had a drink. I sat and rested my overworked feet for a while. I got up again and started walking towards the bus stand in order to catch a home bound bus.

Just when I had taken 4 or 5 steps, there was this shop to my left. Out of inertia of having asked at each and every shop that had slippers in them, I simply stood outside and with an air of sarcasm , asked the owner whether he had the brand that I was looking for. I got what I was looking for from there.

The lesson that I learned from this happening is that always start the things that you want to do just before you  are  actually going to start doing it. In the philosophical sense, this thought has many implications. However, having experienced this first hand in real life, I’m bound to start applying this thought to the various aspects of life.

Anyway, that was just the icing of the cake and the above three paragraphs were not in my mind at all until I thought about how to begin this post that I wanted to write.

Reaching back home, I turned on my laptop and checked my mails. I happened to stumble upon this thread. I simply went through the replies and happened to click this link, with no particular reason. That was Diaspora page of Jishnu. Since I was tired from the day’s happenings and wanted to rest, I was simply browsing and as such, scrolled down along his posts. There I stumbled upon the following video, which is the primary reason for this blog post.

Usually I had this idea of talks by technical people getting boring and monotonous. This was exactly the opposite. Moreover, this was not a talk but rather a sort of Q&A session. I was not planning to sit through it completely, but the more I listened, the more I got interested to listen to the rest and hence, I finished it in one shot.

Mind you, I’m not saying that Linus is the epitome of perfection or anything of the sort. He maybe, he maybe not. I just wanted to think and improvise on some of the things that he mentioned during that session and that is exactly what I am going to do.

The fist and foremost being the title of the blog post. Is execution more important than vision? Vision as in, a dream of how something should be.

Well, according to Linus, he personally was in favor of getting things done rather than thinking and dreaming constantly of a bright future and end up doing bits and pieces. He takes the analogy of a man walking, looking at the stars. He has vision. However, unfortunately, he fails to see the potholes that are in the way that he walks because he is not looking down. Hence, he stumbles upon them and falls down. Linus does not completely criticize visionaries too as it is possible that the path that guy is walking upon might not have potholes and as such, he will achieve his vision.

This is a very interesting point because everyone can have ideas. People can have tons of awesome ideas. They can dream of things that should happen and keep on dreaming. As much as I admit that you should dream until your dreams come true, sometimes (most of the times), people simply end up only dreaming. That does not help.

What makes you different, or better, worthy of being alive, is when you get things done. Linus even quoted Edison where he said, “Success is 99% perspiration and 1% inspiration”. That is more or less true. Passion, inspiration, dreams, ambitions, etc all are just thoughts in the wind until you work hard for it, and achieve it.

With this thought in mind, I thought about how I have been over the past year and it was quite interesting to see the difference.

  • Started my blog – “Yet another guy who has access to Internet registers yet another blog on wordpress”
  • Wrote posts – “Yet another blogger who has to put in his blog, everything that happens to him”
  • Wrote posts consistently – “Hmm… Yet another consistent blogger”
  • Wrote stories – “Most definitely not a personal diary”
  • Technical posts – “Not just philosophy and stories. Useful posts”
  • Crossed 100 posts in a year – “Wow, I did not expect this guy to keep at this for so long. Still…”
  • Published a book – “Awesome. This guy is actually getting things done”

I sure as hell would like to meet that omnipresent dude who commented on my stages of blogging. However, the point that I was trying to make was that even though I hadn’t realized it till now, I was following my passion and getting things done.  I needed this push as I have in my drafts, 4 incomplete posts that I started writing and half way through, started thinking about how it should be and the impact that it should bring about to a reader. That thought is good, but it should not be as strong so as to pose a hindrance to what you are doing. Otherwise it ends up as the case mentioned earlier. I have these amazing vision and thoughts but I’m not actually doing anything for it. Now that I have that idea in my head, I’ll be finishing those posts soon.

Hence, as much as it is important to have a vision, it is as important to get things done as well.

Another interesting thing that he mentioned is being open about your feelings regarding something. He quoted his own example for this statement which was that one guy who worked on a certain kernel feature, got suicidal when Linus told him that the kernel did not want that feature. This would not have happened if people clearly knew about how Linus wanted the project to be.

I was not a big fan of extremism. However, taking into consideration the above scenario, there are times where being an extremist pays off. I mean, him being like that in regard to his project does not mean that he is like that with his family. The point being that there are occasions where you should stand like the Pole star and there are occasion where you should be diplomatic. I mean, Linus could have called that guy for a cup of coffee and started the, “Listen, I knew you’ve worked really hard” thing, but seriously, that attitude would have left the entire kernel project in once heck of a mess.

To the question of whether all the students should be made aware of the open source movement, his answer was thought provoking. The point is that everyone need not be made to learn programming or anything of th sort. However, the ones who have the spark in them should be given the chance and the proper encouragement for learning and improvising on it. He mentioned the cheap Raspberry pi board available where out of 100 boards, 99 of them might be lying in the dust. Still, the important thing is that one board gave an interested person the opportunity to learn and that is what matters.

This is true in real life also. When you try to do something for the people, instead of worrying and spending time on getting everyone involved and interested, you should be more set and concentrate on helping out those who are genuinely interested. We tend to forget that in our path of achieving a “noble cause”. Once you get through to those who are interested and when they start to do wonders, the influence will become bigger and will spread.

Well, that’s about it I guess. That session was something that I desperately needed and I’m glad I did not stumble upon it any later.

Thanks Linus.