Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

    Andrew Begel

    Microsoft Research, VIBE, Department Member
    ABSTRACT Computer science education is fundamentally about transitioning students from novices to experts. As students learn new hard and soft skills, and master them, they grow more confident in their abilities and interactions with... more
    ABSTRACT Computer science education is fundamentally about transitioning students from novices to experts. As students learn new hard and soft skills, and master them, they grow more confident in their abilities and interactions with others. We are pleased to see them become big fish in a small pond. But, when college graduates enter the software engineering workforce, just how well do they fare? In this talk, I'll show you three surprising challenges that we saw newly graduated Computer Science students overcome as they began careers in software development at Microsoft. With the adoption of some innovative pedagogical approaches in Computer Science education already being taught in universities around the world, I think we can ease the transition and better prepare students for positions in the software industry.
    ABSTRACT In this paper, we present the results from two surveys related to data science applied to software engineering. The first survey solicited questions that software engineers would like data scientists to investigate about... more
    ABSTRACT In this paper, we present the results from two surveys related to data science applied to software engineering. The first survey solicited questions that software engineers would like data scientists to investigate about software, about software processes and practices, and about software engineers. Our analyses resulted in a list of 145 questions grouped into 12 categories. The second survey asked a different pool of software engineers to rate these 145 questions and identify the most important ones to work on first. Respondents favored questions that focus on how customers typically use their applications. We also saw opposition to questions that assess the performance of individual employees or compare them with one another. Our categorization and catalog of 145 questions can help researchers, practitioners, and educators to more easily focus their efforts on topics that are important to the software industry.
    Research Interests:
    Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 1997. Includes bibliographical references (leaves 86-87). by Andrew B. Bengel. M.Eng.
    This panel will address pedagogical needs for revisiting the role of computer programming for student learning. We will explore advances in programming platforms that enable students to create compelling projects with new technologies,... more
    This panel will address pedagogical needs for revisiting the role of computer programming for student learning. We will explore advances in programming platforms that enable students to create compelling projects with new technologies, and discuss the affordances of these new initiatives. We will address how these tools and techniques can be integrated into the curriculum of the classroom as well as informal learning environments.
    Web 2.0 technologies, such as wikis, blogs, tags and feeds, have been adopted and adapted by software engineers. With the annual Web2SE workshop, we provide a venue for research on Web 2.0 for software engineering by highlighting... more
    Web 2.0 technologies, such as wikis, blogs, tags and feeds, have been adopted and adapted by software engineers. With the annual Web2SE workshop, we provide a venue for research on Web 2.0 for software engineering by highlighting state-of-the-art work, identifying current research areas, discussing implications of Web 2.0 on software engineering, and outlining the risks and challenges for researchers. This report highlights the paper and tool presentations, and the discussions among participants at Web2SE 2011 in Honolulu, as well as future directions of the Web2SE workshop community.
    ABSTRACT In this paper, we present the results from two surveys related to data science applied to software engineering. The first survey solicited questions that software engineers would like data scientists to investigate about... more
    ABSTRACT In this paper, we present the results from two surveys related to data science applied to software engineering. The first survey solicited questions that software engineers would like data scientists to investigate about software, about software processes and practices, and about software engineers. Our analyses resulted in a list of 145 questions grouped into 12 categories. The second survey asked a different pool of software engineers to rate these 145 questions and identify the most important ones to work on first. Respondents favored questions that focus on how customers typically use their applications. We also saw opposition to questions that assess the performance of individual employees or compare them with one another. Our categorization and catalog of 145 questions can help researchers, practitioners, and educators to more easily focus their efforts on topics that are important to the software industry.
    StarLogo is a computer modeling tool that empowers students to understand the world through the design and creation of complex systems models. Star-Logo enables students to program software creatures to interact with one another and their... more
    StarLogo is a computer modeling tool that empowers students to understand the world through the design and creation of complex systems models. Star-Logo enables students to program software creatures to interact with one another and their environment, and study the ...
    ABSTRACT Learning a new platform is a common, yet difficult task for software developers today. A range of resources, both official resources (i.e., those provided by the platform owner) and those provided by the wider developer community... more
    ABSTRACT Learning a new platform is a common, yet difficult task for software developers today. A range of resources, both official resources (i.e., those provided by the platform owner) and those provided by the wider developer community are available to help developers. To increase our understanding of the learning process and the resources developers use, we conducted an interview and diary study in which ten developers told us about their experience learning to develop Windows Phone applications. We report on a preliminary analysis of our data viewed through the lens of self-directed learning. Using this lens, we characterize the learning strategies of our subjects as app-directed, and describe some of the particular challenges our subjects faced due to this strategy.
    Virtual teams, in which the members work from multiple locations, have become a common feature at many global organizations. In spite of this new reality, collocated teams experience difficulties in adapting their established processes... more
    Virtual teams, in which the members work from multiple locations, have become a common feature at many global organizations. In spite of this new reality, collocated teams experience difficulties in adapting their established processes and practices for a newly virtual working environment, greatly impeding their performance, productivity, and morale. In this paper, we present findings from a qualitative case study
    Abstract Software development organizations are changing from traditional enterprise or open source teams to decentralized, inter-reliant, multi-scale ecosystems of software developers. This transformation presents novel challenges and... more
    Abstract Software development organizations are changing from traditional enterprise or open source teams to decentralized, inter-reliant, multi-scale ecosystems of software developers. This transformation presents novel challenges and opportunities to those seeking to understand, evaluate, support, and influence these organizations. The goals of this workshop are to bring together researchers who are interested in the evolution of software development organizations, highlighting the role of collaboration technology, ...
    In recent years, a growing number of researchers and educators have argued that designprojects provide rich opportunities for learning. To support this type of learning,educational researchers have developed computational environments... more
    In recent years, a growing number of researchers and educators have argued that designprojects provide rich opportunities for learning. To support this type of learning,educational researchers have developed computational environments (such as Logo andLEGO/Logo) that enable children to design their own animated stories, simulations, andeven robotic constructions. The rise of the Internet presents an opportunity for new typesof design activities,
    Information discovery is a very dicult and frustrating as- pect of software development. Novice developers are of- ten assigned a mentor who preemptively provides answers and advice without requiring the novice to explicitly ask for help.... more
    Information discovery is a very dicult and frustrating as- pect of software development. Novice developers are of- ten assigned a mentor who preemptively provides answers and advice without requiring the novice to explicitly ask for help. A similar situation occurs among expert developers in radically collocated settings. The close proximity enhances communication between all members of a group, provid- ing
    ABSTRACT Background. The pressure to release high-quality, valuable software products at an increasingly faster rate is forcing software development organizations to adapt their development practices. Agile techniques began emerging in... more
    ABSTRACT Background. The pressure to release high-quality, valuable software products at an increasingly faster rate is forcing software development organizations to adapt their development practices. Agile techniques began emerging in the mid-1990s in response to this pressure and to increased volatility of customer requirements and technical change. Theoretically, agile techniques seem to be the silver bullet for responding to these pressures on the software industry. Aims. This paper tracks the changing attitudes to agile adoption and techniques, within Microsoft, in one of the largest longitudinal surveys of its kind (2006-2012). Method. We collected the opinions of 1,969 agile and non-agile practitioners in five surveys over a six-year period. Results. The survey results reveal that despite intense market pressure, the growth of agile adoption at Microsoft is slower than would be expected. Additionally, no individual agile practice exhibited strong growth trends. We also found that while development practices of teams may be similar, some perceive and declare themselves to be following an agile methodology while others do not. Both agile and non-agile practitioners agree on the relative benefits and problem areas of agile techniques. Conclusions. We found no clear trends in practice adoption. Non-agile practitioners are less enamored of the benefits and more strongly in agreement with the problem areas. The ability for agile practices to be used by large-scale teams generally concerned all respondents, which may limit its future adoption.
    ABSTRACT Enterprise software developers must regularly communicate with one another to obtain information and coordinate changes to legacy code, but find it cumbersome and complicated to determine the most relevant and expedient person to... more
    ABSTRACT Enterprise software developers must regularly communicate with one another to obtain information and coordinate changes to legacy code, but find it cumbersome and complicated to determine the most relevant and expedient person to contact. This becomes especially difficult when the relevant person has transferred teams or changed their personal contact information since contributing to the project. We conducted a year-long series of surveys and interviews to help us learn how, why, and how often software developers discover and communicate with one another. In response to what we saw, we designed, deployed, and evaluated a domain-specific, IDE-embedded, photo-oriented, communication tool. We overcame a significant challenge found in long-lived projects: uniquely identifying individuals years after their contributions to the project. After deploying our tool, iteratively refining it, and deploying it again on a company-wide scale, most users reported that it simplified the process of finding and reaching out to other developers and offered them a sense of community with their colleagues, even if those colleagues did not currently work on their team. The lessons learned from our study and tool development should apply to other large, multi-team, legacy software projects.

    And 31 more