Its been a couple of years since I wrote something here. Last time I quipped about how I should write often and not only when there is something "eventful". Well, there have been several eventful things in the last two years and I did not write anything about them either. So, no excuses this time for not writing. I just got to make it a point to write something, which may or may not be interesting to you.
Speaking of interesting, there is one thing that is got to be interesting to almost anyone and that is a nice 3 Minute Thesis talk or a 3MT talk. This is a competition for Grad students to tell explain their thesis or research statement in under 3 minutes. It should also be explained such that even a lay person should be able to understand. So, absolutely no jargons, technical terms and definitely no mathematical equations. Yet, the idea is to not dumb down your research or trivialize it. Here is a good example - https://www.youtube.com/watch?v=SI8XOGubJyY
So, I competed in one of the preliminary rounds at CMU, although I did not make it to the finals, it was a good experience. First, the preparation for the talk itself was a great exercise to sort of see where my research stands and what its implications were. Second, trying to explain it in extremely lay terms was super challenging, for example I could not use words, which were otherwise considered commonplace in my domain such as open-source, Github, Bug reports, etc. So with all this challenges, I spent about 4 days preparing for the talk and after two practice talks and a couple of revisions later I was here presenting in front of the judges. Here is a short transcript of my talk, if you read it through quickly it should take less than 2 minutes. Btw, you are allowed to have one static slide, following is a snapshot of my slide followed by the content of the talk. Enjoy!

Imagine you are a car manufacturer and the different components that you require to build your car are available for free and in unlimited quantities. And not just that, they also come in hundreds of different shapes, sizes, and colors for you to choose from. So, Would you then design and build your own components or just use one that is already available for free?
This is the exactly what building a software product these days looks like. For example, a software product such as a word processor may use several freely available components such as a spell checker or a component to say, format text. However, lets say there is a strange problem in the spell checker that causes the word processor to shutdown after every hundred spell checks in after every hundred spell checks. So now to resolve this problem the members of this word processor have to coordinate with the members of the spell checker. And the costs they might incur in the process are called coordination costs.
So now, the question is should even we care about these coordination costs? The answer is we don’t know yet. Because a) we do not know how to measure these costs, b) we dont know how wide spread these costs are and c) we dont know what factors drive these costs. and so my research aims to answer these three questions.
So, In the first part of my study i looked at discussions in online forums among members of a particular software product.
I found that about 20% of problems that appeared in these discussions were coordination problems, which were significantly higher than what we had previously thought of. I also found that the time taken to resolve these problems and the number of people involved in a set of discussions were good measures of the coordination costs incurred in this process. So In the second part, I scaled my study to a large number of discussions from different software products and found that the coordination problems were significantly expensive than other types of problems because they take about 26% longer to resolve, and require about 30% more members.
So in the third part of my study I plan to identify the specific factors that increase or decrease these coordination costs and build models to quantify the effect of each factor.
Finally, I would like to show that the implications of my research go beyond software development, such as in healthcare where certain components of prosthetics can be replaced by simply downloading a design of the component from a website and building them at home using a 3D printer. However, prosthetic owners could incur similar coordination costs from using these components. Therefore, I plan to show that my research can also be used to study coordination costs in these other types of settings.
Speaking of interesting, there is one thing that is got to be interesting to almost anyone and that is a nice 3 Minute Thesis talk or a 3MT talk. This is a competition for Grad students to tell explain their thesis or research statement in under 3 minutes. It should also be explained such that even a lay person should be able to understand. So, absolutely no jargons, technical terms and definitely no mathematical equations. Yet, the idea is to not dumb down your research or trivialize it. Here is a good example - https://www.youtube.com/watch?v=SI8XOGubJyY
So, I competed in one of the preliminary rounds at CMU, although I did not make it to the finals, it was a good experience. First, the preparation for the talk itself was a great exercise to sort of see where my research stands and what its implications were. Second, trying to explain it in extremely lay terms was super challenging, for example I could not use words, which were otherwise considered commonplace in my domain such as open-source, Github, Bug reports, etc. So with all this challenges, I spent about 4 days preparing for the talk and after two practice talks and a couple of revisions later I was here presenting in front of the judges. Here is a short transcript of my talk, if you read it through quickly it should take less than 2 minutes. Btw, you are allowed to have one static slide, following is a snapshot of my slide followed by the content of the talk. Enjoy!

Imagine you are a car manufacturer and the different components that you require to build your car are available for free and in unlimited quantities. And not just that, they also come in hundreds of different shapes, sizes, and colors for you to choose from. So, Would you then design and build your own components or just use one that is already available for free?
This is the exactly what building a software product these days looks like. For example, a software product such as a word processor may use several freely available components such as a spell checker or a component to say, format text. However, lets say there is a strange problem in the spell checker that causes the word processor to shutdown after every hundred spell checks in after every hundred spell checks. So now to resolve this problem the members of this word processor have to coordinate with the members of the spell checker. And the costs they might incur in the process are called coordination costs.
So now, the question is should even we care about these coordination costs? The answer is we don’t know yet. Because a) we do not know how to measure these costs, b) we dont know how wide spread these costs are and c) we dont know what factors drive these costs. and so my research aims to answer these three questions.
So, In the first part of my study i looked at discussions in online forums among members of a particular software product.
I found that about 20% of problems that appeared in these discussions were coordination problems, which were significantly higher than what we had previously thought of. I also found that the time taken to resolve these problems and the number of people involved in a set of discussions were good measures of the coordination costs incurred in this process. So In the second part, I scaled my study to a large number of discussions from different software products and found that the coordination problems were significantly expensive than other types of problems because they take about 26% longer to resolve, and require about 30% more members.
So in the third part of my study I plan to identify the specific factors that increase or decrease these coordination costs and build models to quantify the effect of each factor.
Finally, I would like to show that the implications of my research go beyond software development, such as in healthcare where certain components of prosthetics can be replaced by simply downloading a design of the component from a website and building them at home using a 3D printer. However, prosthetic owners could incur similar coordination costs from using these components. Therefore, I plan to show that my research can also be used to study coordination costs in these other types of settings.
No comments:
Post a Comment