Photo of Andrew

Andrew Begel

4227 42nd Ave S
Seattle, WA 98118
Cell: (415) 602-3824
Email:
Facebook: Andrew Begel
Twitter: @abegel

Education

University of California at Berkeley August 1997 — December 2005

Ph.D. in Computer Science
Dissertation:Spoken Language Support for Software Development [pdf] [pptx]
Advisor: Prof. Susan L. Graham

Massachusetts Institute of Technology June 1996 — June 1997

Master of Engineering in Electrical Engineering and Computer Science
Master’s Thesis: Bongo: a Kids’ Programming Environment for Creating Video Games on the Web [pdf] [html]
Advisor: Prof. Mitchel Resnick

Massachusetts Institute of Technology August 1992 — June 1996

Bachelor of Science in Computer Science and Engineering
Advanced Undergraduate Project: LogoBlocks: A Graphical Programming Language for Interacting with the World [pdf] [html]
Advisor: Prof. Mitchel Resnick

Employment

Microsoft Research January 2006 — present

Research Focus: Human Aspects of Collaborative Software Development
[Job Talk: video pptx]

Massachusetts Institute of Technology: Teacher Education Program May 2001 — May 2007

Collaborator: Prof. Eric Klopfer
Architected and designed StarLogo TNG. Helped run teacher education workshops on complex systems modeling and experimental science.

Xerox PARC: Computer Science Laboratory June 1998 — August 1998

Supervisor: Michael Spreitzer
Developed object type system for HTTP-NG protocol supporting independent, anarchic evolution and extension.

MIT Media Laboratory: Epistemology and Learning group
 June 1993 — May 2001

Advisor: Prof. Mitchel Resnick

  • Designed, developed, and implemented programming languages for children (various versions of StarLogo, Bongo/Yoyo, LogoBlocks, StarLogoBlocks, and EvoLogo)
  • Explored parallel programming, genetic algorithms, complex systems simulation, compilers, virtual machines, web page construction kits, and programming language design.
  • Designed and implemented StarLogo kiosks for the Virtual Fishtank exhibit at the Boston Computer Museum.
Teaching Experience

INFO 461: Cooperative Software Development Winter 2013

University of Washington, Seattle: Information School

Teaching Techniques for Computer Science Spring 2001

University of California, Berkeley: Department of Computer Science
Instructors: Lecturer with Security of Employment Daniel D. Garcia and Andrew Begel
Received grant from GSI Teaching and Resource Center to revise and resign course.

Introduction to Compilers Spring 2000

University of California, Berkeley: Department of Computer Science
Instructors: Prof. Alex Aiken and Prof. George Necula

Introduction to Computer Science Fall 1997

University of California, Berkeley: Department of Computer Science
Instructor: Lecturer with Security of Employment Brian Harvey

One Day Seminar: TAing EECS Courses January 14, 2005

University of California, Berkeley: Spring Orientation and Teaching Conference for Graduate Student Instructors [html]

One Day Seminar: TAing EECS Courses August 27, 2004

University of California, Berkeley: Fall Orientation and Teaching Conference for Graduate Student Instructors [html]

One Day Seminar: TAing Quantitative Science Courses
 January 17, 2002

University of California, Berkeley: Spring Orientation and Teaching Conference for Graduate Student Instructors [html]

One Day Seminar: TAing EECS Courses August 24, 2001

University of California, Berkeley: Fall Orientation and Teaching Conference for Graduate Student Instructors [html]

One Day Seminar: TAing EECS Courses August 25, 2000

University of California, Berkeley: Fall Orientation and Teaching Conference for Graduate Student Instructors [html]

Publications

Conference Papers

  1. Nicolas Bettenburg and Andrew Begel. Deciphering the Story of Software Development through Frequent Pattern Mining. In the Proceedings of the 35th International Conference on Software Engineering, New Ideas and Emerging Research Track, San Francisco, CA, USA. May 2013. [pdf]
  2. Anja Guzzi, Andrew Begel, Jessica Miller, and Krishna Nareddy. Facilitating Enterprise Software Developer Communication with CARES. In the Proceedings of the 28th IEEE International Conference Software Maintenance. Industry Track. Riva del Garda, Italy. September 2012. [pdf] [pptx]
  3. Alicia Grubb and Andrew Begel. On the Perceived Interdependence and Information Sharing Inhibitions of Enterprise Software Engineers. In the Proceedings of the 2012 Conference on Computer-Supported Cooperative Work. Seattle, WA. February, 2012. [pdf]
  4. Andrew Begel, Khoo Yit Phang, and Thomas Zimmermann. Codebook: Discovering and Exploiting Relationships in Software Repositories. In the Proceedings of the 32nd International Conference on Software Engineering, Cape Town, South Africa. May 2010. [pdf]
  5. Andrew Begel and Robert DeLine. Codebook: Social Networking over Code. In the Proceedings of the 31st International Conference on Software Engineering, New Ideas and Emerging Research Track, Vancouver, BC, Canada. May 2009. [pdf]
  6. Andrew Begel, Nachiappan Nagappan. Pair Programming: What's in it for me?. In the 2nd International Symposium on Empirical Software Engineering and Measurement (ESEM), Kaiserslautern, Germany. October 2008. [pdf]
  7. Nachiappan Nagappan. Global Software Development: Who Does It?. In the International Conference on Global Software Engineering (ICGSE), Bangalore, India. August 2008. [pdf]
  8. Lucas Layman, Nachiappan Nagappan, Sam Guckenheimer, Jeff Beehler, Andrew Begel. Mining Software Effort Data: Preliminary Analysis of Visual Studio Team System Data. In the 5th Working Conference on Mining Software Repositories (MSR), Leipzig, Germany. May 2008. [pdf]
  9. Reid Holmes, Andrew Begel. Deep Intellisense: A Tool for Rehydrating Evaporated Information. In the 5th Working Conference on Mining Software Repositories (MSR), Leipzig, Germany. May 2008. [pdf] [html]
  10. Andrew Begel and Beth Simon. Struggles of New College Graduates in their First Software Development Job. In the Technical Symposium on Computer Science Education, March 2008. [pdf] [pptx]
  11. Andrew Begel and Nachiappan Nagappan Usage and Perceptions of Agile Software Development in an Industrial Context: An Exploratory Study. In the First International Symposium on Empirical Software Engineering and Metrics (ESEM), Madrid, Spain, September 2007. [pdf] [ppt]
  12. Ben Liblit, Andrew Begel and Eve Sweetser. Cognitive Perspectives on the Role of Naming in Computer Programs. In the 18th Annual Psychology of Programming Interest Group Workshop, Brighton, UK, September 2006. [pdf] [ppt]
  13. Andrew Begel and Susan L. Graham. An Assessment of a Speech-Based Programming Environment. In the IEEE Symposium on Visual Languages and Human-Centric Computing, Brighton, UK, September 2006. [pdf] [ppt] SPEED Movie: [mov (700 MB)]
  14. Andrew Begel and Susan L. Graham. Spoken Programs. In the IEEE Symposium on Visual Languages and Human-Centric Computing, Dallas, Texas, September 2005. [pdf] [pptx]
  15. Andrew Begel. Programming by Voice: A Domain-specific Application of Speech Recognition. In AVIOS Speech Technology Symposium — SpeechTek West. February 2005. [pdf] [pptx]
  16. Michael Toomim, Andrew Begel and Susan L. Graham. Managing Duplicated Code with Linked Editing. In the IEEE Symposium on Visual Languages and Human-Centric Computing, Rome, Italy, September 2004. [VL/HCC 2004] [pdf] Slides: [ppt]
  17. Andrew Begel, Steven McCanne, and Susan L. Graham. BPF+: Exploiting Global Data-flow Optimization in a Generalized Packet Filter Architecture. In the Proceedings of SIGCOMM '99. Also in ACM SIGCOMM Computer Communication Review (29)4. October 1999. [ps] [pdf. [Slides pptx]
  18. Mike Spreitzer and Andrew Begel. More Flexible Data Types. In the Proceedings of The Eighth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises [WET-ICE'99]. [ps] [pdf]

Journal Articles

  1. Andrew Begel and Susan L. Graham. XGLR — An Algorithm for Ambiguity in Programming Languages. In the Science of Computer Programs, (61) 3, pp. 211-227, May 2006. [pdf] [ppt]
  2. Andrew Begel and Susan L. Graham. Language Analysis and Tools for Ambiguous Input Streams. In the Fourth Workshop on Language Descriptions, Tools and Applications, ENTCS (110) pp. 75-96, Barcelona, Spain, April 2004. (LDTA 2004) [pdf] Slides: [ppt] [pdf]
  3. Andrew Begel, Philip Buonadonna, David Culler, and David Gay. An Analysis of VI Architecture Primitives in Support of Parallel and Distributed Communication. Concurrency and Computation: Practice and Experience (14) 1. January 2002. [pdf]. [pdf]
  4. Andrew Begel and Eric Klopfer. StarLogo TNG: An Introduction to Game Development In the Journal of E-Learning. 2005. [pdf]
  5. Eric Klopfer and Andrew Begel. StarLogo in the Classroom and Under the Hood. Kybernetes (32) 1/2. January 2003. [pdf]

Workshop Papers

  1. Jonathan Sillito and Andrew Begel. App-Directed Learning: An Exploratory Study. In the Workshop on Cooperative and Human Aspects of Software Engineering (CHASE), San Francisco, CA, USA. May 2013. [pdf]
  2. Andrew Begel, Robert DeLine, and Thomas Zimmermann. Social Media for Software Engineering. In Proceedings of the FSE/SDP Workshop on the Future of Software Engineering Research. Santa Fe, NM. November 2010. [pdf]
  3. Andrew Begel and Thomas Zimmermann. Keeping Up With Your Friends: Function Foo, Library Bar.DLL, and Work Item 24. In the Proceedings of the First Workshop on Web 2.0 for Software Engineering, Cape Town, South Africa. May 2010. [pdf]
  4. Andrew Begel, Nachiappan Nagappan, Christopher Poile, and Lucas Layman. Coordination in Large-Scale Software Teams. In the 2nd Workshop on Cooperative and Human Aspects of Software Engineering, Vancouver, BC, Canada. May 2009. [pdf]
  5. Andrew Begel and Beth Simon. Novice Software Developers, All Over Again. In the International Computing Education Research Workshop, September 2008. [pdf]
  6. Andrew Begel. Effecting Change: Coordination in Large-Scale Software Development. In the Workshop on Cooperative and Human Aspects of Software Engineering (CHASE), Leipzig, Germany. May 2008. [pdf] [pptx]
  7. Andrew Begel. Codifier: A Programmer-Centric Search User Interface. In the Workshop on Human-Computer Interaction and Information Retrieval (HCIR), Cambridge, MA. October 2007. [pdf]
  8. Andrew Begel. In the Fourth Workshop on Language Descriptions, Tools and Applications Barcelona, Spain. April 2004. [ppt] [pdf]

Book Chapters

  1. Andrew Begel and Beth Simon. Novice Professional: Recent Graduates in a First Software Engineering Job. Book chapter. In Andy Oram and Greg Wilson, editors. Making Software: What Really Works, and Why We Believe It. O'Reilly Media, Inc. 2011.
  2. Andrew Begel and Eric Klopfer. StarLogo: A Programmable Complex Systems Modeling Environment for Students and Teachers.. In A. Adamatzky and M. Komosinki, Eds.Artificial Life Models in Software. Springer. July 2005. [Book chapter]

Panels

  1. Gerald C. Gannod, Paul V. Anderson, Janet E. Burge, and Andrew Begel. Is integration of communication and technical instruction across the SE curriculum a viable strategy for improving the real-world communication abilities of software engineering graduates?. Panel. In Proceedings of the 2011 24th IEEE-CS Conference on Software Engineering Education and Training. Honolulu, HI. [HTML]
  2. Andrew Begel. From Program Comprehension to People Comprehension. Panel. In Proceedings of the 2010 IEEE 18th International Conference on Program Comprehension. Braga, Portugal. June 2010. [pdf]
  3. Eric Klopfer, Mitchel Resnick, John Maloney, Brian Silverman, Andrea diSessa, Andrew Begel and Chris Hancock. Programming Revisited — The Educational Value of Computer Programming. In International Conference on Learning Sciences. Los Angeles, California, June 2004. Panel. [ICLS 2004] [pdf] Slides: [1. ppt] [2. ppt]

Demos

  1. Anja Guzzi and Andrew Begel. Facilitating Communication between Engineers with CARES. In the Proceedings of the 2012 International Conference on Software Engineering. Zurich, Switzerland. June 2012. [pptx]
  2. Andrew Begel, Khoo Yit Phang, and Thomas Zimmermann. WhoseIsThat: Finding Software Engineers with Codebook. Demo. In Proceedings of the 18th ACM SIGSOFT International Symposium on Foundations of Software Engineering. Santa Fe, NM. November 2010. [pdf]
  3. Andrew Begel and Krishna Kumar. Program Your Own Games with XNA Presented at CS&IT 2007. June 28, 2007. [pptx]

Posters

  1. Libby Hemphill, Andrew Begel. How Will You See My Greatness if You Can't See Me?. In the Proceedings of the 2008 Conference on Computer-Supported Cooperative Work. November 2008. [pdf]
  2. Andrew Begel. Help, I Need Somebody! In the CSCW Workshop: Supporting the Social Side of Large-Scale Software Development, Banff, Alberta, Canada, November 2006. [pdf]
  3. Susan L. Graham, Andrew Begel, Marat Boshernitsan. Eclipse + Harmonia: Language-Based Tools for the Programmer Eclipse Technology Exchange at OOPSLA 2003. October 2003. [pdf]

Technical Reports

  1. Libby Hemphill and Andrew Begel. Not Seen and Not Heard: Onboarding Challenges in Newly Virtual Team. Microsoft Research Tech Report MSR-TR-2011-136. April 2011. [pdf]
  2. Christopher Poile, Andrew Begel, Nachiappan Nagappan, Lucas Layman. Coordination in Large-Scale Software Development: Helpful and Unhelpful Behaviors. Microsoft Research Tech Report MSR-TR-2009-135. September 2009. [pdf]
  3. Andrew Begel, Marat Boshernitsan, and Susan L. Graham. Transformational Generation of Language Plug-ins in the Harmonia Framework. Technical Report CSD-05-1370, University of California, Berkeley, January 2005 [pdf]

Doctoral Consortia

  1. Andrew Begel. Spoken Language Support for Software Development. In the Doctoral Consortium of the IEEE Symposium on Visual Languages and Human-Centric Computing. September 2004. [pdf] [pptx]"
  2. Andrew Begel. Spoken Language Support for Software Development Talk given at the SIGCSE 2002 Doctoral Consortium. February 27, 2002. [pptx]

Class Project Reports

  1. Andrew Begel. Program Commenting by Voice. CS294-1 Class Project Report. University of California, Berkeley. Spring 2002. [PDF
  2. Andrew Begel, Zafrir Kariv. SpeedNav: Document Navigation by Voice CS294-4 Class Project Report. University of California, Berkeley. Fall 2002. [pdf] [Design pptx] [Logo pdf]"
  3. Andrew Begel. From the Abstract to the Concrete: A Study of CS61a (Scheme) students in CS61b (Java) ED222a Class Project Report. University of California, Berkeley. [html] [Talk html]"
  4. Andrew Begel, Philip Buonadonna, David Gay Split-C for the New Millennium CS258 Class Project Report. University of California, Berkeley [pdf] [pptx]
  5. Andrew Begel Applying General Compiler Optimizations to a Packet Filter Generator CS265 Class Project Report. University of California, Berkeley [pdf] [BPF+ Source tar.gz zip"]
  6. Andrew Begel Titanium Threads CS267 Class Project Report. University of California, Berkeley. Spring 1998. [html]
  7. Andrew Begel CrystalBoard: A Transparent Shared Whiteboard CS294 Class Project Report. University of California, Berkeley. Fall 1997. [html]
  8. Andrew Begel, Josh MacDonald, Michael Shilman. PicoThreads: Lightweight Threads in Java. CS262 Class Project Report. University of California, Berkeley. Fall 1997. [pdf]

Other Publications

  1. Andrew Begel and Jochen Quante. Industrial Program Comprehension Challenge 2011: Archeology and Anthropology of Embedded Control Systems. In the Proceedings of the 2011 IEEE 19th International Conference on Program Comprehension. Kingston, Ontario, Canada. June 2011. [pdf] Contest Announcement [pdf]
  2. Andrew Begel. End User Programming for Scientists: Modeling Complex Systems. In the Dagstuhl Seminar Proceedings on End-User Software Engineering. February 2007. [pdf]
  3. Andrew Begel. Daniel D. Garcia, and Steven A. Wolfman. Kinesthetic Learning in the Classroom. In the Proceedings of the Technical Symposium on Computer Science Education, 2004. Special Session. [SIGCSE 2004] [pdf] Slides: [ppt] Poster: [pdf] Website [url]
Academic Leadership

Workshops

  1. Raian Ali, Andrew Begel, and Walid Maalej. Fifth International Workshop on Social Software Engineering. To be held at FSE 2013, August 2013. [web site]
  2. Andrew Begel and Caitlin Sadowski. Second Workshop on User studies for Software Engineering Researchers (USER). At ICSE 2013, May 2013. [web site]
  3. Andrew Begel and Caitlin Sadowski. Workshop on User studies for Software Engineering Researchers (USER). At ICSE 2012, May 2012. [web site]
  4. Andrew Begel, James D. Herbsleb, and Margaret-Anne Storey. Workshop on the Future of Collaborative Software Development. Workshop. At CSCW 2012, February 2012. [pdf] [web site]
  5. Christoph Treude, Margaret-Anne Storey, Arie van Deursen, Andrew Begel, and Sue Black. Workshop Report from Web2SE 2011: 2nd International Workshop on Web 2.0 for Software Engineering. In SIGSOFT Software Engineering Notes (36)5. September 2011. [pdf]
  6. Christoph Treude, Margaret-Anne Storey, Arie van Deursen, Andrew Begel, and Sue Black. Proceedings of the 2nd International Workshop on Web 2.0 for Software Engineering. Honolulu, HI. May 2011. [HTML]
  7. Christoph Treude, Margaret-Anne Storey, Arie van Deursen, Andrew Begel, and Sue Black. Second International Workshop on Web 2.0 for Software Engineering. Workshop. In Proceedings of the 33rd International Conference on Software Engineering. Honolulu, HI. May 2011. [pdf]
  8. Robert DeLine, Gina Venolia, Andrew Begel, David Notkin", and David Hendry" UW/MSR Summer Institute on the Human Side of Software Development. August 2007.
  9. Andrew Begel, Rebecca Bates, and Steven A. Wolfman. Kinesthetic Learning in the Classroom. Held at the Technical Symposium on Computer Science Education, March 2006. Workshop. [SIGCSE 2006] Website [url]
  10. CS&IT 2006 Kinesthetic Learning in the Classroom. July 8, 2006. [pdf]
  11. Andrew Begel, Daniel D. Garcia, and Steven A. Wolfman. Kinesthetic Learning in the Classroom. Held at theTechnical Symposium on Computer Science Education, 2005. [pptx] [Web Site]
  12. CS&IT 2005 Kinesthetic Learning in the Classroom. June 26, 2005. [pdf]
  13. CS&IT 2005 Kinesthetic Learning in the Classroom. February 26, 2005. [pdf]

Doctoral Consortia

  1. ICER 2008
  2. VL/HCC 2009, 2010

NSF Project Advising

  1. Janet Burge, Gerald Gannod, Paul Anderson, Vouk Mladen. NSF CPATH-II. Incorporating Communication Outcomes into the Computer Science Curriculum. Awards CCF-0939122, CCF-0939081. [Project Site]

Invited Talks

  1. Three things every CS educator should know about their students' future careers in software development. Keynote Talk at CSEE&T. 2011
  2. Three things every CS educator should know about their students' future careers in software development. Keynote Talk at CCSC. 2010
  3. Codebook. University of British Columbia, Vancouver, BC. 2010.
  4. Codebook. Telefonica Research Lab, Barcelona, Spain. 2010.
  5. Codebook. Pomona College, California. 2010.
  6. Codebook. University of Washington, Seattle. DUB Weekly HCI Meeting. 2010.
  7. "HIP" Tools for Software Development. University of British Columbia, Vancouver, BC, November 2, 2007
  8. "HIP" Tools for Software Development. University of Calgary. Calgary, AB, November 3, 2006
  9. Agitar Software. "HIP" Tools for Software Development. April 27, 2007. [ppt]
  10. CS 301 Talk: What Makes a Great TA? September 13, 2004. [html]
  11. CS 301 Talk: How to be a Great TA February 8, 2002. [html]
  12. CS 301 Talk: How to be a Good TA November 3, 2000. [html]
  13. CS 301 Talk: How to be a Good TA October 22, 1999. [html]
  14. Agent Simulation: Applications, Models and Tools. StarLogo: Building a Modeling Construction Kit for Kids. October 16, 1999. [ppt]
  15. Santa Fe Institute Workshop on GIS Systems and Modeling. StarLogo: Massive Parallelism for the Masses. March 20-21, 1998. [ppt]
Patents
  1. Gina Venolia and Andrew Begel. Patent 7634454: Concept keywords colorization in program identifiers. Filing Date: 11/21/2006. Publication Date: 12/15/2009
Professional Activities

Steering Committees

  • ICPC2011 — present

Program Committee Chair

  • ICPC 2014

Program Committees

  • OOPSLA2007, 2008
  • ICSE Research Demos 2009, 2011, 2014
  • ICSE Student Research Competition 2011
  • ASE 2013
  • ASE Tool Demos 2010
  • FSE New Ideas 2011 &mdash 2013
  • ICPC 2012 &mdash 2013
  • ICGSE 2013
  • Web2SE 2010, 2011
  • CSEE&T: 2010, 2011
  • ESEM 2009 — 2011, 2013, 2014
  • MSR2009 — 2011
  • STC2009, 2010
  • SUITE2009 — 2011
  • HAoSE2010, 2011
  • SSE2011
  • FutureCSD2012
  • USER2012

Conference and Journal Reviewing

  • Software Engineering: OOPSLA, MSR, CHASE, ESEM, TOSEM, STC, SUITE, CACM, IEEE Software, Multicore, HAoSE, ASE, Software Quality Journal, JESE, Systems and Software, RSSE, WCRE Industry Track, SPE
  • HCI: CHI, CSCW, JCSCW, IUI, UIST
  • Programming Languages: POPL, LDTA, JFP
  • Education: SIGCSE, ICER, ITiCSE, JCSE, PPIG
  • Systems: SIGCOMM, SC, CCR, TPDS, COMNET

Professional Societies

  • ACM1997 — present
  • IEEE CS2008 — present
Advising

Graduate Interns

  • Nicolas Bettenburg, Queen's University. Summer 2012
  • Anja Guzzi, Technical University of Delft.Summer 2011
  • Alicia Grubb, University of Toronto.Summer 2010
  • Khoo Yit Phang, University of Maryland, College Park. Summer 2009
  • Libby Hemphill, University of Michigan.Summer 2008
  • Reid Holmes, University of CalgaryFall 2007
  • Christopher Poile, Waterloo UniversitySummer 2007
  • Lucas Layman, North Carolina State UniversitySummer 2007

Undergraduate Researchers1997 — 2005

  • Stan Sprogis, Profiling Harmonia, Speech Recognition in Eclipse
  • John Jordan, Shorthand Editing in Eclipse
  • John Firebaugh, Blender Parser Generator Bootstrapping
  • Tom Wang, Blender Parser Generator v2, VisGraph Type Checking
  • Tim Lee, OpenGL-based Parse Graph Viewer
  • Jeremy Schiff, Windows port of Harmonia, Blender Code Gen Validation
  • Michael Toomim, Harmonia-mode, CodeLink
  • Dmitriy Ayrapetov, XML Parsing
  • Sean Howarth, Control Flow Analysis
  • Erwin Vedar, VisGraph Name Resolution
  • Brian Chin, Blender Parser Generator
  • Duy Lam, Cobol Parsing
  • Stephen McCamant, C Parsing and Semantic Analysis
  • John Nguyen, Control Flow Graph Generator
  • Gruia Pitigoi-Aron, Pretty Printing
  • Alan Shieh, XML Serialization
Awards

Demitri Angelakos Memorial Award May 2005

National Merit Scholarship 1992