Parrot at YAPC::NA::2011, Asheville NC

There is no substitute for face-to-face contact.

Salespeople have to meet their customers in person. Marketing alone will never suffice.

Politicians have to press the flesh. Television ads will never suffice.

Open-source software projects' developers have to meet F2F. IRC will never suffice.

That's the main lesson I draw from YAPC::NA::2011, just concluded in Asheville, North Carolina.

Here's my incomplete, partial summary of Parrot-related activity in YAPC::NA::2011.

Monday, June 27, 2011

  • Larry Wall's keynote presentation Who We Were, Who We Are, Who We Will Be. That wasn't a Parrot presentation, you say? No, but Larry has had the experience of watching the development of the Perl community unfold over twenty-four years and therefore understands, in an aphoristic way, a lot about the dynamics of open source communities. (Cf. his keynote address at YAPC::NA::2005 in Toronto, which should be played back in community organization and planning courses.) He frankly acknowledged that in 2000 Perl 6 embarked on a radical new course for both dynamic programming languages and the communities surrounding them and that the results to date were mixed. Some TimToady observations:
    • P.I.M.C.: Perl Is My Community.
    • Keep your core contributors sane.
    • Detangle your ego from surface issues.
    • Divergence is the price of experimentation.
    • Convergence is everyone's responsibility.
    • Lead, follow and get out of the way.
    • Be watchful of "It all depends on me."
  • I gave a presentation on Open Source Software Projects: Two Stages and Ten Questions. In this talk I argued that distributed open-source software projects (OSSPs) with two or more developers exist in at least two stages of development based on the degree to which their software is used in production. I posed ten questions which OSSPs should ask themselves, and then answered those questions with respect to Parrot.

    The answers I provided reflect my own perspective. You are free -- encouraged, even -- to disagree with them.

  • Parrot leadership caucus. This was a meeting attended by Jerry Gay, Jonathan Leto (fellow members of the Parrot Foundation Board of Directors) and Christoph Otto (Project Architect). This was the first time since our election to the Board that a majority of the current board were present in the same room at the same time. This was invaluable with respect to clearing the air with respect to misunderstandings that have impeded our functioning as a board.

Tuesday, June 28, 2011

  • Parrotsketch. We managed to conduct our weekly online meeting notwithstanding that our usual chairpeople and many of our attendees were busy at the conference. NotFound++ for leading the discussion!
  • Parrot/Perl 6 Joint Birds of a Feather (BOF) Session. Thirteen in attendance including veteran Parrot contributors, two current Parrot GSOC students, the Perl 6 chief language designer and one Perl 6 core contributor. Frank discussion about how to deal with rough spots in the relationship among the two open source projects. Most impressive to me:
    • Both GSOCers in attendance were able to pose very relevant questions.
    • When one veteran Parrot contributor discussed his frustration over performance problems, two other contributors -- neither of whom had ever been in a Parrot face-to-face meeting before -- were fully able to engage him at a high level of technological acumen.
    • Another veteran Parrot contributor posed this question: If you were being paid to hack on Parrot, which things would you be expected to work on? (Subsequently posted to parrot-dev list by dukeleto.)

Wednesday, June 29, 2011

  • Jonathan Leto's presentation on Visual Introduction to Parrot Virtual Machine. As the title suggests, dukeleto's aim was to provide visual images to illustrate such concepts as PMCs, vtables, continuation passing style, Parrot's deprecation policy and the Parrot compiler toolkit. Notwithstanding having been in the Parrot project for several years, I always find it difficult to wrap my brain around these concepts, so the images help. Special bonus to this presentation: In the discussion it was revealed that vtable is a concept with its origins in C++.
  • Christoph Otto's presentation on Parrot: State of the VM. Many, perhaps most, Parrot contributors came to Parrot from the desire to make Perl 6 possible. cotto, in contrast, came to Parrot from a desire to make PHP capable of interacting with other languages!

Thursday, June 30, 2011

  • Parrot/Perl 6 Hackathon. I was only able to attend the first two hours of this, so I will defer to other participants to summarize this.

Summary

The face-to-face interactions among Parrot and Perl 6 contributors were the most positive aspect of Parrot's participation in this YAPC -- even when the content of those interactions reflected discouragement that the two projects were not proceeding as fast as many would like. The clearing of the air was good, as was the fact that some veteran Parrot contributors who had become somewhat distant from the project returned to the discussion in full force. We need more face-to-face discussions like this both on a regional level in North America and, to cite one other location that has probably never had a face-to-face meeting of Parrot developers, Europe as well.