Parrot is a virtual machine designed to efficiently compile and execute bytecode for dynamic languages. Parrot currently hosts a variety of language implementations in various stages of completion, including Tcl, Javascript, Ruby, Lua, Scheme, PHP, Python, Perl 6, APL, and a .NET bytecode translator. Parrot is not about parrots, though we are rather fond of them for obvious reasons.

Parrot 3.0.0 "Beef Stew" Released!

"I think my imagination's broke. Lemme try and think up the best thing ever. Umm... beef... stew. Yup it's busted alright. I'm gonna go... place."
- Strong Bad

On behalf of the Parrot team and an enthusiastic but undiscriminating dachshund that followed me home last week, I'm proud to announce Parrot 3.0.0, also known as "Beef Stew", or at the insistence of a shadowy government organization, "Snowflake". Parrot is a virtual machine that dreams about running all dynamic languages everywhere, even the one you're think about right now. Parrot has big plans, even if needs a haircut and sometimes goes outside with its shoes untied.

tags:

On Roadmaps and Teams, Part Three

In my last post I argued that over the medium term:

  • Parrot needs to attract production users.
  • Production users need production-ready features.
  • Production-ready features are the only goals which qualify for placement on our roadmap.
  • Roadmap goals must have teams dedicated to their achievement.

Let's think through how these principles will affect our roadmap planning.

On Roadmaps and Teams, Part Two

In my last post, On Roadmaps and Teams, Part One, I argued that the only goals we should put on our roadmap are those which:

  • we, the Parrot Project as a whole, are absolutely committed to deliver; and
  • for which we have a team committed to delivering those goals.

There are many things which would be great to have in Parrot, and the more developers we have, the more of them we can achieve. But roadmap goals are different from all other goals in that the Parrot Project as a whole is promising to deliver on them; and the Project has organized teams of developers working to deliver on those promises. If we can't organize a team to work on a particular goal, then that goal does not qualify for placement on the roadmap.

As I hinted at the end of my last post, I'm taking a strong stand on this because otherwise we will never create a virtual machine that other software developers will be enthusiastic about using. Note the word 'other' in the previous sentence. In this context, 'other' developers mean people who don't want to 'work on' Parrot, who couldn't care less what's 'inside' Parrot, but who want to 'use' Parrot as the basis for dynamic languages and other applications.

On Roadmaps and Teams, Part One

I agree with most of what Christoph Otto posted earlier this month on roadmap items. But I think the relationship between roadmap items and the teams of Parrot developers who will work on those items needs a sharper focus. Here are my thoughts:

  • The Parrot Developer Summit to be held on the weekend of Jan 29-30 must set roadmap items for next 4 supported releases.
  • Roadmap items are those we pledge, to ourselves, our users and the world, to deliver in the specified releases on the specified dates.
  • Roadmap items should therefore be few in number and have strong support among our developers. Few enough that we can under-promise and over-deliver.
  • We need to draw a sharp distinction between roadmap items and everything else. Absolutely no "wishlist" or "nice to have" items may go on the roadmap. None whatsoever! There is no such thing as a "secondary" or "second-tier" roadmap item.
  • Because of our high degree of commitment to roadmap items, we cannot consider anything for placement on the roadmap unless it has a team of people committed to implementing it.

So what do we mean by 'team' with respect to roadmap items?

Parrot 2.11.0 "At The ROFLBBQ" Released!

On behalf of the Parrot team, I'm proud to announce Parrot 2.11.0 "At The ROFLBBQ." Parrot is a virtual machine aimed at running all dynamic languages.

tags:

Parrot 2.10.0 "Pesquet's" Released!

On behalf of the Parrot team, I'm proud to announce Parrot 2.10.0 "Pesquet's". Parrot is a virtual machine aimed at running all dynamic languages.

Parrot 2.10.0 is available on Parrot's FTP site, or follow the download instructions. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Git on our source code repository to get the latest and best Parrot code.

tags:

Reflections on Parrot as Project, Product and Process

Last week I helped organize a gathering of Parrot developers, old and new, in Portland, OR. We shaped the discussion more around the people of the Parrot project rather than the technology or the code. Since my return to New York City my time available for Parrot has been tied up with diagnosing problems impeding Parrot's build on small resource machines. So I haven't had time to write up my reactions to the gathering.

Parrot 2.9.1 Released

On behalf of the Parrot team, I'm proud to announce Parrot 2.9.1. Parrot
is a virtual machine aimed at running all dynamic languages.

tags:

Parrot 2.9.0 "Red-masked" Released!

On behalf of the Parrot team, I'm proud to announce Parrot 2.9.0 "Red-masked". Parrot is a virtual machine aimed at running all dynamic languages.

Parrot 2.9.0 is available on Parrot's FTP site, or follow the download instructions. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Subversion on our source code repository to get the latest and best Parrot code.

tags:

Pacific Northwest Parrot Developers Gathering: Summary

Summary of Pacific Northwest Parrot Developers Gathering
Saturday, October 16, 2010
Portland, Oregon

Part One Discussion
Please see the list of discussion questions posted here.

Syndicate content