MySpace Open Platform

A Place For Developers

Welcome Developers!

in

Welcome!

in

MDP Site Improvements

I’m sure that most of you who have been using the MySpace Developer Platform have noticed the new look and feel and new navigation scheme that we have pushed out over the last couple of days. This may not prove to be the final version (for reasons I go into below), but we hope you will like what we’ve done. The content team has been working hard to put forward the information you need in as straightforward and as easy-to-use a way as possible. We believe that the new format for the site is a big improvement and look forward to hearing back from you about the changes.

Stephanie tells me I need to keep these things short. I really have been trying, so I hope you won’t mind if I write a little at length this time about the new look and feel of the Platform site. I promise not to do this too often. Although I’m bringing in some unlikely back-story, I want everyone to have a chance to see the kind of thinking that went into it, and how this is demonstrative of our attempts to have the MySpace Developer Platform be a genuine cooperative venture between MySpace and third party developers. I’ve broken this down into sections so that you can skip around more easily. I hope you’ll forgive my self-indulgence, but once in a while, you just have to let it out. : - ) So, without further ado, I’ll jump right in….

 

  1.  Goethe’s Phenomenology

It may seem odd to start a blog entry about the MySpace Developer Platform with a reference to Johann Wolfgang von Goethe, but his work constitutes a helpful (though perhaps surprising) historical precedent to the method we have used to produce the content and format of the MDP site. Goethe was an eighteenth century German natural philosopher whose influence on the arts and sciences of his time is difficult to overestimate. One of the distinctive features of Goethe’s work was his development of a deep intuition about nature that he integrated with his artistic, literary and scientific practices through a form of early phenomenology.

Goethe’s way of science was centered on a Romantic Humanism that saw human cognition itself as the pinnacle of all possible sources of knowledge with regard to interrogations of the natural world. His work was explicitly qualitative rather than quantitative, associative rather than formulaic. He emphasized experience—as opposed to what he saw as arbitrary interventions in the production and assimilation of human knowledge systems. This emphasis is congruent to knowledge ecology’s emphasis on natural human communication as the ground for knowledge systems (see my previous blog entries), over and against traditional knowledge management’s emphasis on preformatted architectural schemas. Those of us used to post-Kantian science may find his methods bizarre and bordering on the surreal, but there has been a continuous historical thread of discourse that has developed his ideas up to the present day.

Goethe’s cultivation of natural, associative intuition was not limited to a scientific epistemology, however. His approach was grounded in a certain relationship to human cognition that understood the act of listening and gazing to be far more natural for the production of knowledge than active intervention in the (perhaps brutal) sense of Sir Francis Bacon. Goethe’s phenomenology looked first to patterns in our sensory observations, then sought similar causes for similar phenomena "out in the world." This approach emphasized direct generality, commonality, and a letting-be that is quite alien to the modern scientist, who emphasizes singularity, direct causal connection, and the derivation of pattern from mathematical or computational translations of observed phenomena into a Platonic system of relations. Goethe believed that perception was not mediated in a destructive way, but rather that our perceptions are a healthy part of or addition to the natural world that allow for the recognition of general patterns. This is different from Kant’s somewhat more pessimistic view that denies, categorically, as it were, the potential for “real” observation of the “thing-in-itself.” The difference is profound, though subtle. Kant and his ilk are trying to derive a framework for universal knowledge, or at least to identify the obstacles to such a framework. They want to hack the God's-eye-view. Goethe attempts a simultaneously more ambitious and more humble aim: to derive a framework for a truly human (and therefore perhaps more humane) knowledge. From his contemplative phenomenology, which bears certain similarities to contemporary ecophenomenology, Goethe was able to derive both his philosophy of science and his theories of art.

Goethe’s most famous literary work was and is his book-length poem Faust. This moralistic pseudo-allegory was his master-work, a text that lies near and dear to the heart of at least a couple of members of the content team. Although it does not have a direct relationship to the content or form of the MDP site, there is a theoretical relationship to our work that can be drawn out. According to the important and largely ignored critique of Peter Salm, Goethe did not so much write as cultivate the poem. Seeing the produced text as a system of organic, self-organizing signs, Goethe related to the poem not as a produced text per se, but rather as a living plant that grew according to a process of nonlinear, alienated authorship (à la Tristram Shandy, At Swim-Two-Birds, or Finnegans Wake) that allowed the poem to articulate, ramify and enrich itself organically through a process of cascading interactions and semiotic/ semantic anastomosis. The result was a Gesamtkunstwerk or literary/authorial ecology that grew out of the fertile soil of a direct encounter with the process of production and artistic germination itself. Goethe actually created an entire semiotic ecology in microcosm, by allowing each piece of the semiotic triad (see also), as articulated by C.S. Peirce, to act freely in the process of self-organization. Imagination as context, text as encoding for an anticipated audience, and author as general constraint: these cooperated in a system of expressed pressures to shape a meshwork of interactive, intertwined, and semi-autopoietic strings of encoded meaning, in turn associated through the body of the text by means of a semantic, rather than purely ontology-based, architecture.

 

  1. Scrum Development

While Goethe’s approach to artistic production derives from a sense of the relationship between humans and the natural world, our development process, the Agile technique known as Scrum, operates on similar principles that derive from a sense of how humans self-organize as an ensemble around collective, goal-oriented activities. The metaphors used in the philosophical discussions of Scrum are themselves organic, deriving from the natural world and reflecting intuitions derived from the application of the new science of complexity to society. Jeff Sutherland, one of the founding creators of the current model of Scrum, refers to the Japanese thinkers Takeuchi and Nonaka by way of their article, “The New New Product Development Game,” which was published in the Harvard Business Review in 1986 (activate the way-back machine!). That article is considered foundational for Scrum, as demonstrated in the following excerpt from Jeff’s 1995 articulation of Scrum principles in relation to a specific development project he was working on at the time. I fear the wrath of Stephanie, but I quote here at length:

 

Takeuchi and Nonaka describe the SCRUM methodology (a Rugby term) which we use internally. It is significantly different than anything you have seen because there is no project management schedule, only a committed delivery time for a release. The Japanese auto and electronics companies are using it to clean our clocks in the global economy. Did you notice that U.S. auto companies had a banner year and still lost market share in 1994?

Small teams are given objectives to meet in a fixed time frame. They take the existing software (you never build anything from scratch) and small projects (2 days to 2 weeks per person) are assigned as SynchSteps. SynchSteps are dynamic pulses generated against the existing code structure that causes mutations (as in a biologic organism).

A project team is typically 3 developers, 3 QA people, 3 doc people, and one or two users. They meet daily and all agree on steps completed and next steps. For large projects, small teams of this size build components and a SCRUM of SCRUMs meets less frequently to work out interfaces between components. Developers must be outnumbered on the team by QA and documentation people or they generate too much code too fast (malignant functionality).

The code evolves like a biological system via punctuated equilibrium. You can read about this process as modeled by Denny Hillis on a Connection Machine in the book "Artificial Life." When enough mutations occur in multiple parts of the organism, the system shifts to a higher plateau of functionality. We say at this time that a "package" is emitted. This will be a new piece of the software system we are building. For example, we are adding Use Cases to the Synchronicity product at this time and when the package appears, an objective for the release cycle is met.

A release cycle, typically six months, is built of packages which are loosely defined as objectives at the start of the release cycle. Management must release control of the team and let it function as a self-organizing entity that grows a system like a plant. We have found that we get dramatically more functionality in less time and a much cooler product with this approach. This approach rationalizes the comments that
Fred Brooks made in 1987 in his paper "There is No Silver Bullet". There, he stated that the only way to speed up development was to grow a prototype like a plant.

We track the process by the velocity of SynchStep assignments versus the velocity of SynchStep completion. This gives an estimate of package time completion, kind of like launching a rocket, watching its trajectory, and predicting impact point. We can adjust the impact point by lowering the arc(less functionality) or adding rocket fuel (more resources) to hit the time frame committed to management.

We monitor progress regularly via demonstrations. Nothing counts with management except delivered code that works. Packages are regularly shipped out as alpha components that people can drop into the current release of Synchronicity. Synchronicity dynamically changes, menus and all, so that people can try out the new functionality and see if they like it.

With SCRUM schedules are obsolete (developers love it) and delivery dates never slip (management loves it). If this sounds too good to be true, I suppose it is, but management will agree there is more functionality and less slippage with this process than anything they have ever seen. Our users are asking us to lengthen the product delivery schedule because we are delivering too many new releases with major upgrades too fast. (This still doesn't stop them from complaining about not getting everything on their wish list.)

 

Due to organizational patterns within the company, we have not operated on a fully implemented version of Scrum on this project, but we have come very close along several lines. Our current implementation is more like bonsai than what might be thought of as a pure Scrum forest management. Rather than let the project be radically free in the wild in the sense that a pure Scrum implementation implies, we tend to grow plant cultures on the teams, and then do a little bit of extra gardening that balances the entire knowledge ecology of the company in ways that promote the sustainability of projects. As a result, our bonsai keeps us a little closer to traditional understandings of organization, while allowing for a more naturalistic approach to flourish on teams and subteams. You might say that our teams are the wilderness parks of a thickly settled community. This approach keeps nature close at hand, in a way that expresses something similar to the humanistic bonsai philosophy articulated by Saburo Kato. A heightened sense of appreciation and reverance for the power of natural form are highlighted, bringing nature closer to us in a highly alluring, recherché portrayal. We access a great deal of the power of Scrum, while yet maintaining a certain decorum that permits us to remain secure within thick margins of deliverability.

 

  1. The MySpace Developer Platform Site

Over the last week and going forward into the next few days, with the shift to OpenSocial 0.7 and the new site UI and navigation, we are, in Jeff’s terms, emitting a new package. This new package mutates several aspects of the old into what we hope is a more adequately adapted and sustainable form. Of course, we look forward to hearing your feedback so that we can continue to grow the site.

There have been two prior formats for the MDP site. The first, which was not open to the public, was based on a preliminary architectural schema generated according to the anticipated content and needs of the developers who would ultimately use the site. The second, which was the version visible to our whitelist over the last few weeks, was based on a design intended to help us aggregate relevant information, make accessible the tools and reference material necessary to third party developers, and to make apparent any problems or holes in the site-as-system. The new version attempts to reduce clickthrough, heighten findability, incorporate salient feedback from internal and external developers, and reflect the organic structures of the content itself as it has been shaping up. Each of these requirements represents a selection pressure, and a lot of conversation and debate went into the new form. The emergent package now being put forward is a result not of an individual, but of the team as a whole acting as semiotic agents in the process of discursive unfolding of the new architecture. Of course, having said that, the final design improvements were consolidated by Dan Vickery and implemented largely by Matt Meyers and Debra Cleaver. Each member of the team has played a role or roles in this process, though, and their participation, engagement, and commitment to the best possible outcome is a result of the sense of personal investment and project ownership that comes from the Scrum process. Switching taxonomies, one could say that we have played custodian to the site as it has moved from caterpillar to chrysalis to butterfly. This new creature is currently flapping its wings, testing the air, and preparing to fly out to seek its way in the cyber forest. We wish it well!

As we prepare to launch, we hope that you will play with the new site, give us feedback, and continue to play the strong role that you have in the shaping of the site. As with Goethe, your intuitions, experience, and observation are vital to the process of developing the best possible site we can deliver. Rhonda Rondeau and Stephanie Bergman have been a vital part of aggregating that feedback for our team, as well as those working the backend. Everyone on the MDP is very grateful for their long hours and diligent engagement with the MDP community as a whole. With Scrum, we will continue to help the site to shape itself according to the requirements of the content and users with a passionate advocacy that is itself a requirement for effective delivery on this model. Finally, we will continue to emanate new packages in the future as our little butterfly relates to its kin in the world of OpenSocial and adapts intelligently to the semiotic ecology it encounters. The shifts will likely not be as major as the one we have just undergone, but who knows? : - )

 

Thank you for indulging me, and we hope you enjoy the new MDP!



Comments

 

║█║☆☆☆ Mike ☆☆☆ said:

It's great that you're passionate, and you're going to hate me for saying this, but someone has to tell you because the silicon valley bubble isn't going to.

TL;DR.  I wavered when you said "stephanie told me to keep this short" and I started scrolling when I saw "Goethe".  I scanned the last paragraph, seeing "butterfly relates to its kin" and "semiotic", and I've concluded there was no actual content in this whole post.  Maybe there was, but I'm not going to try to find it, and I'm just going to post my questions anyway.  You'll be pissed because you've said it twice, and noone is happy.

You have to understand my perspective.  I don't have time to read this stuff; my income depends on me being fast and efficient.  You've got a salary; I don't.  Give me a link if you want to espouse philosophy.

Please, above all, talk to us like you're talking to a CEO/CFO/CIO:  Efficiently.

March 10, 2008 8:53 AM
 

Assetbar.com said:

Michael,

If you don't have 3 minutes to read a post, perhaps you shouldn't waste time (?) posting a comment where you complain you don't have time to read the post.

Sure, Jason could have made it much shorter "We changed the layout of the site, hope you like it", but that info is  captured in the title already.  

The MDteam is embarking on a hugely complex endeavor, with plenty of unforseen consequences.  It's nice to see they're thinking about the impact the many changes will have on their enormous and multi-faceted ecosystem.  

To put it simply: "they're trying to build a platform 'with legs' which will help your business be successful over the long term. "

As a CEO, it's worth a few minutes of my time to understand /how/ they're trying to do that.  

Cheers,

-Israel

March 10, 2008 10:18 AM
 

Michael said:

I think navigating through the docs is a bit more difficult now.

March 10, 2008 10:39 AM
 

Nicolas said:

Great to read about Tristram Shandy in a post about MDP :)

March 10, 2008 2:24 PM
 

Jason said:

Hi, all.

A quick comment to the two Michaels.

First, to the Michael in a suit, can you please say more either here or in the forums about what makes it more difficult to find docs for you?

Second, to the other Michael, I apologize again for the length, but I hope you'll understand that the point being made is that this the process being undertaken is itself quite complex.  I understand that your time is important to you, as it is to all of us in the industry (I had to put this together at 1 am).  I'm glad to hear that if you weren't interested, you simply scrolled on by.  But we are working very hard to make sure that there is total transparency to the community about every aspect of what is going into the MDP.

These complex considerations and the metaphors being used do impact what you're encountering.  While as a developer or engineer, the details around information development in the process are probably not so relevant to your specific case, there are many people who have been asking after our process on this front.

Finally, yes, the entry was too long.  But I wanted to put it all in once place, rather than answering in piecemeal responses all over the place.

Israel, if you have any specific comments, I'd love to hear from you.

Snowfallsoon, right on!  LOL

Jason

March 10, 2008 2:58 PM
 

bяandøn said:

First of all, I just want to say that is such a brilliant and informative post, and that I have truly learned a lot. I have studied a lot of philosophy, but haven't read much of Goethe's work (until now). Don't listen to Michael, I'm glad to see that the MDP has such a collection of brilliant philosophic thinkers. Thanks for this post Jason.

I would also like to add that Francis Bacon is the original author of Shakespeare muhahahaha

March 10, 2008 9:12 PM
 

David said:

On the whole, I'd have preferred it if the time taken to write this post was spent fixing the container code, which has been broken all day...

March 11, 2008 11:27 AM
 

jbum said:

On the forums, various MySpace employees have acknowledged that a number of OpenSocial features are currently not implemented, but are due to be added sometime "soon", however, the actual time of delivery has not been clearly stated.  I think there was some hope, a few weeks back, that these things would be fixed by this Thursday's launch.

It seems pretty clear now that it isn't going to happen.  

Could you provide a nuts and bolts blog entry that provides a complete list of the OpenSocial features which are currently broken or missing, and an ETA for when they will be repaired or completed?

March 11, 2008 11:45 AM
 

Michael said:

i think there used to be a page that told me what i could and could not do on specific containers, i can't find it anymore.   Also the rest stuff is pretty buried now.  The major problem feels like I went from a main nav with a subnav to now just a main nav, so the stuff (like the rest stuff) that used to be pretty easy to get to, is now rather buried.

I do think having that nav on the right side is a bit of an improvement.  before there were two entire navigation menus and that was a bit weird.

March 11, 2008 3:22 PM
 

Jason said:

Hey guys.

Thanks for the additional feedback.

David and jbum, sorry about the recent issues.  We have our whole group working on resolving these.  They are related to trying to do exactly what you're asking for, jbum.  In the meantime, I've asked them to put together the blog entry you're asking for.  Our team isn't the folks who are building up the direct functionality, but please be sure that the folks who are are working round the clock (literally) to deliver.

Michael of Suitdom, I see your point.  We're going to meet tomorrow on this issue, and we'll get a solution out asap.  (BTW, the url for your blog is misspelled.  I was able to find it with the addition of the 'e', but if you correct it for your next entry, everyone can get to know you, which is fun!  :-)  )

Anyway, ladies and gentlemen, keep it coming!

March 11, 2008 4:08 PM
 

demo said:

LMAO. Goethe.  Have to admire your passion, Jason.  Maybe if I re-read Faust I'll figure out why my profile appears stretched out in Mozilla (but not IE) even after I uninstall my app. From the sublime to the ridiculous.

March 11, 2008 4:23 PM
 

rondata said:

Hi guys,

We are in the process of detailing a RoadMap type blog entry to provide information on OS, MDP as well as a listing of features which are available, missing, fixed and things that in the process of being implemented.

We'll get it out to you ASAP.

March 11, 2008 4:35 PM