Archive for the 'Bangalore India 2006' Category

My Agile Worry, Part 1: Marrying Code

Thursday, August 17th, 2006

So we’ve started delving a little deeper into Agile Development today at TWU. Today we discussed the balance of quality and timebound delivery, as well as iterative software development and adaptive planning. Below I’d like to discuss an issue that is near and dear to my heart, an issue that really worries me about Agile methods, or really any kind of development that advocates the writing of code at an early stage.

In an Agile project, it is likely that a development team begins to write computer code nearly immediately when starting a project, or at least that’s my perception. By immediately, I mean to say that code is created within the first week of the project, if not the first or second day. Meanwhile, a team of Analysts goes and studies the work processes to help the customer figure out exactly what kind of software will be needed. I’m going to assume that at an early stage of a project, the development team makes some assumptions about what will be needed, and commits some ideas to code before they are sure that it will be needed.

This, for me, is where the problem begins. Whenever computer code is created for its own sake, or without proper research, there is potential for the developer to become married to their code. Here’s a scenario:

The team comes to a work site and meets with the client, who has asked that an internal system be created that helps employees communicate with each other, despite the fact that they are distributed around the world. One of the developers immediately thinks of a *great* feature: real-time chat. In the next few hours, he creates a web-based chat tool that can easily be plugged in to a system. He is really excited. This is something he has wanted to try to do for a long time, and finally has had the opportunity to do.

Meanwhile, one of the analysts has been chatting with some of the employees and realizes that all of the collocated employees in each office have no problem keeping in contact with each other simply through face to face communication. The problem, however, is that employees who work in different locations also work in different time zones, and are rarely ever working at the same time. Logically, this means that real-time chat is not a feature that will improve the communication system.

Now we have a real problem. Our developer has fallen in love with an idea, has created it, and will likely be reluctant to let it go. The analyst has evidence that the feature is not needed, and requests that the tool be removed. Now what? Is it an interpersonal problem? Will the developer take this personally? What about his precious time that was spent creating the tool?

Since the feature was created before the development and analysis teams really understood the nature of the design question at hand, it ran the risk of being unneeded. In this case, the tool turned out to be unneeded. The developer may take this event as a war story about “that time the analyst stole the glory and made him remove the best feature.”

But what about the users? The users don’t need it…so why code it? This is just one of the things that bugs me about Agile…code is created so early. Maybe I’m exaggerating the story a bit, but still, nobody likes to throw out work, right?

Maybe some of you agile experts out there can shine some light on the subject and help your soon-to-be peer clear some things up… :-)

My work is the big building ahead on the left

Thursday, August 17th, 2006


00007.jpg

Originally uploaded by josh.ev9.

This is Airport Road, the main road outside the office. We have to cross this road one or more times per day, and the concept of crosswalk doesn’t seem to exist in India…

Coconut Graveyard

Thursday, August 17th, 2006


00012.jpg

Originally uploaded by josh.ev9.

Up the street from the office in Bangalore lies a coconut graveyard, complete with barbed wire…

Independence Day

Tuesday, August 15th, 2006

Today is Independence Day here in India. That means nobody goes to work, at least in the normal offices. (Restaurants and things tend to be open, I think.) So what does a group of weary foreign travellers do on a day off in India? Well, we go in to the office, of course. We have legitimate reason, of course. Most of us don’t have internet access in our apartments, so we have to feed our respective addictions to the ‘net. Either way, let me explain some things that are going on…

Yesterday we had our first day of training. This included an Introduction to the TWU program, a lecture about the history of ThoughtWorks and another about the TW India office, and finally we had a discussion about the cultural differences among the people in the program. At this point we’ve got people from the entire world. The TW offices represented are the US (SF and Chicago), UK, China, India, and Australia, but the people here are from a various assortment of other countries. It’s great to get to interact with all these people from so many different places, and our discussion helped to understand each others’ thoughts and ways of life.

But anyway…I’m sure the work part is less important to many of you. I think a lot of people would rather I discuss India and what’s going on here. So I’ll do that.

The first thing that I must say is that I have been shocked because I am yet to see a single Mosquito. Strange, no? I thought so. However, the monsoon season will soon be upon us, changing the current bugless state.

The other day I went shopping on M.G. Road and Brigade Road in Bangalore. There’s tons of shopping to be done there. I bought some beautiful (I think) curtains for the place in Chicago. I’m kind of excited about those. I also picked up some CDs to listen to since I don’t have any music on my work computer.

Here’s an interesting tidbit…the most exciting part of one’s day in Bangalore is when we cross the road to get a meal. I think I might have already said something about how crazy the driving is here. The honking is ridiculous, and constant. We can hear it from the office at all times. Anyway, the interesting part is when we try to cross the street. Basically, all you have to do is wait for a small gap in the traffic, then run with all your might to the middle of the road…then do it again to get all the way to the other side. Quite exciting…and a great replacement for a morning caffeine kick.

I’m trying to think of other things…but I can’t at the moment. The food here is fantastic, if you enjoy Indian…and cheap as well. A dish at a rather nice restaurant across the street costs 130-200 rupees…$1 = 46 rupees. Yum.

I’ll check in again when I think of more. Keep on keepin’ on.

TWU Expecations

Friday, August 11th, 2006

What are your expectations for ThoughtWorks University, in 30 minutes or less?

The only reason for the time limit is the fact that my meeting with one of my coaches in about 30 minutes, so I better get to it. Here goes…

I’m just going to put my biggest expectation/goal out there right up front. My goal at TWU is to end the course with an understanding of how I will apply User-Centered Design practices with the methodologies currently used at ThoughtWorks. I think this is a somewhat ambitious goal, which will probably continue and develop throughout my work at TW, but I think this goal is at least partially attainable in the next few weeks. I’m in a somewhat unique position with my background in HCI. The path for me in this realm is somewhat uncharted, so at this point I don’t know what to expect.

In order to achieve my goal, I’ll first have to have some sort of understanding of Agile Methods, which I’m assuming we’ll learn right at the start. I hope to learn to use Agile to my advantage, but be able to tweak it enough so that truly great software can be created. To be honest, at this point I am unsure about the process, and uneasy about the idea that code may be written on day 1 of a project. This gives very little time to do the research needed in order to really understand the nature of user needs, right? How can people be interviewed, analysis made, and prototypes created in a matter of hours? Is this possible at all? I wonder.

Another big question: Do agile methods create software that regularly meets user demands? I don’t mean the (simple) explicit demands that a customer makes, but the implicit ones that come from really understanding the nature of the work at hand. Are these customers just appeased in the end…sufficiently happy with the software…or are the pleasanly delighted at the way their work practice is changed? At this point, I just don’t know.

Of course, there are other things that I want to practice. At the bar last night I had a discussion with a group of my peers who will be developers and realized that I have never really had to think deeply about implementation details in my projects. These people have a huge focus on implementation, so I really think I need practice working with them.

What else…oh! Life! I expect to be able to get outside and have a life. This should not be all about work, but the experience…both in and outside the classroom. I want to see India. Eat the food, smell the spices, do some shopping, go on hikes, see the sights, etc. I also think I’m the type of person who needs help practicing the whole “work/life balance” thing…so that’ll be much needed.

Mostly, I want to be challenged and prepared for my real work life. I know it won’t be exactly the same, but I want to be able to practice my job in a place where mistakes are acceptable, and learning is expected. I want to have fun and get to know my peers from around the world. I want to have it all. So let’s go get it.

Lunchtime @ TWI

Friday, August 11th, 2006

Lunchtime at ThoughtWorks India is great. They have a small cafeteria with plenty of table space (if you’re willing to squish a little). The meal is an Indian Buffet with different choices each day. Then you sit down to eat and all of a sudden you’re next to a bunch of different people, some that work with you, others that you’ve never met. Everybody is relaxed, and ready to take a break.

I love it. I think in American society we’re much less likely to really take a break in the middle of the day. At my previous job we constantly had working lunches. It was a rare occasion that people took a nice 30-60 minute break to chat and eat. In grad school we went to lunch regularly, which was nice…but I thought that would end as soon as I entered the working world. Well, I guess I’m barely in the working world at this point, but at least I still get to take a lunch break. :-)

TGIFridays? In India? Yep.

Friday, August 11th, 2006

Where did I eat dinner yesterday? DAMN! Good guess! Oh, you saw the title…right. So yeah, a group of us went to the local TGIFridays for dinner last night. Immediately I felt like I was back in the US. Surreal. The food was mostly the same, but the happy hour was damn near all night long. Drinks were 2 for 1 so the beer flowed…It’s safer to drink that than water.

After that we went to the local resort hotel, Leela, for drinks at the bar. It was absolutely beautiful. We had a great discussion about our expectations here at TWU, which will be followed up by our first meeting with our coaches today.

I’m getting psyched for the University classes to start. The way things work here are great. I keep seen parallels with summer camp. Everything is really light and easy, but still you learn from your experiences.

Anyway, I’ll check in again later. Time to get a new mobile phone…

TWU Day 1: Slooooooooooooow

Thursday, August 10th, 2006

The first day of work in India is about to come to an end. For those not in the know, TWU stands for ThoughtWorks University, the training program I’m attending to start my job with a bang. They sent us to India, and now we’re ready to work…well, kinda.

To be honest, we’re all a little too jetlagged to get any real work done, but still we’ve been in the office all day. I think the trainers want us to get de-lagged as quickly as possible. Thus, we’ve been sent to the office to do “work,” though we don’t have any assignments as of yet. Needless to say, it’s been a slow day of surfing, installing, and getting to know the new coworkers.

Everybody here is awesome. Literally. I’m still quite surprised by this. Everybody I’ve met has been awesome, smart, and on their A Game, jet lag or no. We’ve connected with the crews from the UK (~7-8 people), Australia (1), and, of course, India (10-15). I can’t wait to get to work…isn’t that lame?

People have been really genuinely interested in my HCI rants, which is positive. I hope to influence a lot of the work I do with others via my User Centeredness…I’ll let you know how that goes.

Anyway, the workday seems to be ending, so I think I’ll head out. Peace out. :-)

Welcome to India!

Thursday, August 10th, 2006


IMG_7484

Originally uploaded by josh.ev9.

I made it here to Bangalore. It was quite a long journey: 2 nine hour flights, back to back. Craaazy. We went from Chicago to Frankfurt, then Frankfurt to Bangalore.

It’s nice here, and the office is really cool. Today we’re meeting people from different offices and just sort of settling in. Unfortunately I’m still quite jetlagged and feeling a bit out of it. Should get more sleep tonight…we’ll see.

We had dosa for breakfast…yum!

Alright, back to socializing. :-) Talk to you again soon.