architecture | facebook | facebook | Technology

Facebook architects their comment service to emulate live p2p

Ken Deeter blogs how Facebook engineers had to rethink their architecture to offer live comments. “Every minute, we serve over 100 million pieces of content that may receive comments. In that same minute, users submit around 650,000 comments that need to get routed to the correct viewers.” The server farms that served 99% of content couldn’t do the job for the fewer than 1% users comment on. The new architecture moved from polling (asking servers periodically if there’s an update) to push. Push needs to know who’s seeing what right now, and to keep that data fresh. This called for new ways to get an update on one page to the viewers of that page, bypassing server networks optimized to help people read web pages. As described, it sounds a lot like publish-subscribe or PubSubHubbub within Facebook’s server network.

The new plumbing for synchronous communication can power more than Facebook comments. You’ll want it for live instant messaging and interop with other IM networks, for email, for SMS-web integration, and for their new groups messaging.

analysis | architecture | design | news | outages | Skype | Technology

Complexity: Monoculture or Biodiversity in Software Architecture?

tractors in fieldLars Rabbe, Skype’s CIO, reports today “around 50% of all Skype users globally were running the 5.0.0.152 version of Skype for Windows.” .152 is the build that crashed when another part of the network, offline instant messaging, became overloaded. So half of Skype’s users were using other versions and were not immediately affected. This slowed the onset of the outage. 

Sven Tigane blogged about the importance of updating just the week before the Great Skype Supernode Crash of 2010. “At Skype, we regularly release updates to our software, and with every update, we introduce new features, improve existing ones and fix bugs. Keeping Skype up to date is the only way you can take advantage of these improvements, and is vital to making sure that Skype remains safe and secure.” Sven is programme manager for Skype for Windows and long time Skype employee; his views matter.

Skype’s deployed client inventory (the software we all use) is highly diverse. Millions of users are on dozens of versions of multiple operating systems with many kinds of hardware and very different network configurations. Simplifying, unifying, getting everyone to use the latest version will make life much easier, faster, and cheaper for Skype’s customer support, security, network administration and software development teams.

Absolute uniformity is not ideal. Here’s Aswath Rao answering “Was the Skype outage preventable?” on Quora:

Realistically, no system is totally fail safe. One can only design to reduce the chances and minimize the impact. The problem with the current design and market condition is that most of the supernodes will be running the same OS and the same version of the app. At this stage, Skype can easily deploy their own supernodes, but maintain the P2P architecture as a way to handle growth, failover etc. They just have to make sure that the supernodes run diff OSs and they upgrade their app in a staggered fashion. In other words, they need to come up with an operational plan.

Aswath is saying Skype is suffering from monoculture: too much uniformity.

Like farming wheat in massive farms, you want the efficiency that comes with having your whole crop be one species. You get better deals on seed, only have to think about the nutrient needs of the one species, and you can harvest your whole crop at the same time. Following the simile: it’s cheaper to make the software, less complex so more reliable, and improvements propagate to your whole network.

Monoculture has its downsides. One pest can ruin your entire crop. We saw that problem in both of Skype’s major outages. Small code or settings adjustments in a popular version of the program spread like wheat rust. When they create problems, those spread quickly too.

Planned biodiversity is a response. In farming you introduce slightly different strains of your crop. In software and networks, you keep multiple versions going in the field. You keep multiple strains of protocols and architectures running at the same time. So problems, when they spread, hit limited populations. When some varieties are affected by a blight or an attack, and others aren’t, you know those differences can lead you to the disease or infestation vectors.

So here’s to keeping your last version of Skype around. And waiting a day or two for updates.

What tools did you try when Skype went down? Did you come back to Skype? Chat with me on Skype. Call me at +1-510-343-5664 (Google Voice), follow on twitter @SkypeJournal(just the posts) and @evanwolf (everything). Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats, where we’re talking about this right now.

photo by NightThree via Wikimedia commons.

5 | analysis | architecture | Business | design | Developer Zone | facebook | facebook | news | Skype

Eight Things Seriously Wrong with Skype 5.0. And Skype.

Has it been a whole year since an angry rant? Despite all of Skype’s glowing press, I’m sure I can scrape something up…

  1. UI Not Scriptable.
  2. opentabs560[4]
    It’s great that Skype offered their idea of the facebook-in-Skype experience. What about the ideas of the world’s millions of developers? Where’s the app platform that lets users write and share their own tab in Skype?  That lets us customize the metadata we show about contacts? We’re in the app economy and Skype should let us embed apps. Skype is our conversation and relationship manager for our intimate circle, for our strong-ties, and this is where we want to innovate.
    Innovate Elsewhere.

  3. Still Deal Driven. Facebook? Skype still works on "It’s who you know" for doing business. Skype partnered with News Corp’s MySpace when it was hot, federating user names. Now Skype partners with Facebook. I’m happy for Skype’s bizdev and engineering teams but this is lazy strategy. Message sent: innovators and entrepreneurs and creatives need not apply. Make it as easy for anyone to make their own "Home" tab as it is for them to add or make make a Firefox extension, an RSS feed in Google Reader, or an iPhone app.
    Ecosystem-free Ecosystem.
  4. Import, not sync. Batch importing guarantees your Skype contact list is stale five minutes later. You can import your facebook contact into Skype but Skype won’t keep your data fresh. So when your contacts update their names, photos, locations, phone numbers or emails, those critical changes won’t show up in your Skype contact list. I’m behind before I get started.
    Lame.
  5. No group video pricing. Don’t try Skype group video. Like offering free crack, Skype rolled out ten-way video calling in a "28 day free trial." Skype won’t tell you now what happens at the end of the trial. Free three-way calling? $100/minute ten-way calling? Free with a business account? Included with a monthly global subscription? You’ll find out the real cost once you and your friends are hooked.
    Bait, Switch.
  6. Not for Mac, Mobile, Linux. Skype’s ugly step-child Mac users seethe with frustration and anger as Windows users get the cool stuff months or years before they do. Companies with products connecting to Skype through Skype’s Linux client are also left behind. Mobile users? Still waiting for their first group chats, video calls, and file transfers.
    Tired of Windows Hand Me Downs.
  7. Half an API. Skype’s Public API hasn’t been updated to use any of Skype 5′s new features. No video conferencing, no facebook, no contact import. Why is Skype punishing its developer community? Why is Skype still crippling its only publicly available API? See "Still Deal Driven."
    Developers should try Ribbit, Tokbox, Twilio, and Voxeo.
  8. Fraud inducing identity model. Skype is asking you to lie about who you are. Skype 5 says you have to keep separate Skype names for each place you work and for your life. It might be feasible if Skype software let me log into and use several Skype identities at the same time. They don’t. That’s not how people work and live. More than fifteen percent of the US workforce are free agents, with dozens employers each year. Nobody will use a communication tool that must be shut off just because you’re at work. Or just because you go home. Ask a cultural anthropologist. Ask an industrial psychologist. Ask any volunteer at a not-for-profit. Ask anybody who works and has kids. This deviation from reality is for the convenience of Skype’s lawyers, engineers, financial analysts, and marketers. It sure isn’t for Skype users.
    Put the experience designers back in charge.
  9. Plaintext IM and mood. This is a small thing with a big message. Skype is the only large IM network using plain text characters in IM. No rich text, HTML, inline images, or inline videos. This is a steep barrier to IM interop. It means messages from other networks must be dumbed down to show them to Skype users. Your chats will lose meaning. Skype participants will see and understand less than non-Skype participants. This is a reason business users will abandon Skype. 
    #ClosedWebFoo.

8 ballI’m not picking at the small stuff. These failures signal flawed design thinking, poor product leadership, weak organization design, and insular corporate values.

Skype is full of people around the world working hard on the underlying problems. The new management team should find them and give them room to confront Skype’s culture, leadership and identity problems. Call me if you’d like to talk about it. #designskype

Call me at +1-510-343-5664, Skype me, follow @SkypeJournal and @evanwolf. Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats. 

architecture | facebook | news | sip | Technology | USA | VoIP | Voxeo

Voxeo launches Phono for jQuery

Voxeo Labs’ architect Jose de Castro announced Phono just now at jQuery Boston (#jqcon) to a crowd of 500 web developers.

Phono is a simple JQuery plugin and JavaScript SDK that turns any web browser into a multi-channel communications platform capable of making phone calls and sending IM messages. You can even connect to SIP clients; all with a simple unified API.

Free. Skinnable. Perfect for mashups and rapid prototyping.

You have to be a VoIP programmer to use one of the SIP services. A new generation of middleware makes coding for communications easier and accessible to the millions of programmers who write web and mobile applications. Voxeo, Twilio, BT/Ribbit, Telefonica/Jajah, and others offer calling as a cloud service. Phono extends this access to JavaScript, one of the easiest and most widely used browser programming languages. Combined with Tropo, Voxeo’s application platform, write your hosted app once with Phono and it runs on multiple UIs and channels: browser, telephone, instant messaging, and others.

Bonus: The Phono SDK is open source so you can point your $.phono() jQuery calls to your choice of communication platforms.

Download. Documentation. Demos. ForumsSign up for an API Key. Phono on Twitter: @Tropo and on Facebook. Voxeo’s Dan York on how Phono rewires the realtime web.

architecture | Business | design | Europe | facebook | identity | iiw | Skype | Strategy | Technology | wishlist

Wishlist: Skype as Personal Data Store (and as Personal Relationship Manager)

Skype’s long term identity will not be the new phone company. Skype is in the business of helping people manage their relationships. 

Dear Skype,

Please:

  1. Join the Personal Data Ecosystem, a new umbrella organization and Identity Commons project, and participate in the Internet Identity Workshop (IIW)and Vendor Relationship Management (VRM) communities to advance person-centered identity and personal data concepts and technologies.
  2. Experiment with helping your customers visualize and act on their non-Skype social updates in the Skype context. New contextual conversation triggers from outside of Skype should foster better relationships and more, longer, better conversations.
  3. Expand SkypeWeb‘s presence service to also return mood messages where privacy settings permit.
  4. Start talks with Ping.fm, Comcast Plaxo and others who can help you pipe Skype’s updates through the social web.
  5. Test the effect of bringing workplace updates (from Yammer, SAP Friend Optimizer, Microsoft SharePoint, for example) into Skype on chat, conferencing and other calling behavior.

There’s an emerging role for Personal Data Stores (some people call it a personal data locker or data bank) that finds your information, collects it, and makes it easier for you to manage your relationships with the sites/services/apps/orgs that use or have custody of your data.

The Money Metaphor

One analog for the Personal Data Store is the bank where you store your money and keep it safe. They help you:

  • get your money from other places
  • put it to work passively with as they loan it out on your behalf and pay you interest
  • pay others with your money through transfers, credit cards, EFTs, checking
  • understand and manage your money’s states, flows, and allocations with metadata, reports, analysis and alerts
  • comply with tax and other government authorities.

Continuing the bank analogy, vendors like Skype may take some of your money and hold it for you but that doesn’t make them a bank. Their core business isn’t helping you with your money. They just need to be responsible with your money and their own bank should work well with all of their customers’ banks.

The money metaphor for personal data works pretty well. People need institutions to act on our behalf, to be beholden to us for the security and utility of our personal information assets.

Back to Skype. 2008′s 28 “What Skype Means To Me” posts showed Skype bringing families closer together and helping people work remotely were more important than Skype’s disruption of the telecom industry. Skype’s true purpose, its long term identity, will not be the new phone company.

Skype at its core is in the business of helping me manage my relationships. Relationships are the accumulation of conversations and other things we do with each other. Those conversations and our social graph are awash in data. Yesterday I asked Skype to bring more of that data from other places into the Skype user experience.

There are two roles Skype-The-Company would play in this. The first is Social Peripheral Vision Provider. An SPPV provides a view into what is going on in the world through the lens of your interests and the people you know. You see this in desktop apps like TweetDeck and Seesmic Desktop and mobile apps like those from twitter, facebook, and foursquare. Consider this a role between social surveillance and social sousveillance.

The second role is as a Personal Data Store, helping Skype users control, manage, and employ their own profiles, updates, and the records of their conversations. None of the major internet or financial institutions does this well or at a broad consumer or business level. Google provides a measure of identity consolidation through the Google Profile. Google Health and Microsoft HealthVault are substantial health PD projects.

Skype should be a PDS for your online data. Skype should help you:

  • get your data from other places
  • put it to work for you through de-personalized aggregation
  • “Sign in with Skype”, authenticating my identity to other services
  • field anonymized requests for contact (“someone at IBM would like to speak with someone like you at Skype Journal”)
  • share your data with other services on request (“LinkedIn is checking for your latest contact information”)
  • facet how you present yourself so your  Warcraft avatar is different from your LinkedIn profile photo
  • contextualize your social graph’s activity (“these seven work contacts are in this meeting”, “your Tallinn contacts are leaving the office for the night”, “you haven’t checked in with your usual Monday morning people”)
  • withdraw from other services, removing my data thoroughly

Skype could be the fourth party in Vendor Relations Management where its billion users (just a few more years) contract their data to companies that use it. As Joe Andrieu explains in his VRM and Personal Data Stores post:

Here are a few rights that users might want to be able to secure for their data, as well as some privileges they could provide to vendors:

  1. Reciprocity – That vendors who access a particular type of data also agree to reciprocally provide updates to that data. For example, I might let Amazon access my media history records if they agree to update it with my past and future media purchases at Amazon.
  2. Non-propagation – No further distribution of the data beyond the specific services authorized. No reselling to third-parties. No re-use by other divisions.
  3. Non-persistence – No retention of the data beyond the session of the current transaction. For example, an emergency room physician can access my personal medical history while I’m under his or her care, but he or she can’t store that data on any internal systems.
  4. Anonymous Persistence – Data can be retained, but only if it is suitably anonymized and disassociated from the individual user.
  5. Editable Persistence – Data may be retained by the vendor, but it must be editable and deletable by the user.
  6. Anonymized Analytic Rights – Vendor has the right to query the PD at a later point for business or operational analysis, as long as that analysis ensures anonymity after the fact.

Doc Searls added to the Cluetrain Manifesto‘s “Markets are Conversations” premise a tenth chapter: “Markets are Relationships.” eBay’s instincts were good when they bought Skype, a conversation enabler, to make eBay’s markets better. Skype’s cloud infrastructure could bring great power to their user’s side of business relationships and rich, trusted customer data to the vendors’ side. This could easily be the line of business that outpaces SkypeOut as a Skype’s top income source.

Call me at +1-510-343-5664, Skype me, follow @SkypeJournal and @evanwolf. Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats. 

architecture | avaya | design | Developers | events | itexpo | USA | VoIP

ITEXPO overnight: Avaya Flare is sexy, closed

IMG_1081
Phone booths in the elevator lobby of The Standard Hotel in Downtown Los Angeles around 4:30am. Glass, metal, stone aren’t the warmest of places to call. Phone booths are changing from payphone anachronisms into mobile phone privacy chambers.

I startled awake at four this morning in the minimalist aesthetic of The Standard in Downtown Los Angeles, brain dissonant from the ITExpo West 2010 Avaya event last night. And a caffeine OD from the reception.

Thrown to recruit software developers, the event didn’t showcase any third-party software or show how you might build on Avaya‘s and Nortel‘s platforms.

Paul Pugh of frog sprinkled the otherworldly mind candies of modern design, cultural anthropology, industrial organization, and pretty slideware. It was like having a prestigious sculptor talk to a plumbing convention, supporting his patron and trolling for new ones.

Christian Von Reventlow proudly told of Avaya’s touch screen tablet eye candy. He said its design emphasized delightful moments in communication and collaboration, bringing joy and immersive experiences as opposed to relieving points of pain. (Immediately followed by Wendy Mikklesen‘s sales pitch to relieve CRM points of pain, in this case a generational divide: millennials don’t call. Wendy, check out danah boyd‘s field research on teens online.)

The Flare Experience team sought input from a wide range of Avaya stakeholders. Not non-Avaya stakeholders, mind you, but this is an improvement from feature bloat and blind alleys led by the biggest customers. The research led them to choose a direct-manipulation interface (touch and drag, vs. click and drag) on a proprietary tablet. Touch may give a wow! factor but simplifying and speeding up common tasks may trigger ongoing use. I hope to try it later today. The Flare software is a front end control (a service avatar) for a deeply complex and mostly closed server suite, so they are headed in the right direction. I’ll be surprised if Avaype’s (SkypAya?) promised back end integration doesn’t show up in the Flare’s Android app a year from now.

The Flare app hides complexity, and that’s great. It’s also a closed, locked-down service delivery system at a time when everyone and their brother wants to extend user experiences by writing their own components. Why not let someone mashup Google Maps with Avaya presence for new Flare wallpaper? Or add new classes of presence to the rolodex? Enrich caller ID with call center data? Enhance social peripheral vision by updating profiles with news from outside the firewall. Or add games or whatever the heck else developers want to add. So users have the choice. Hubris is the first lesson of design; the world knows more than you, so you should observe and take it in.  Our software universe is an efficient marketplace of ideas and Flare launches as a closed mind.

The ITEXPO developer track (#itexpoDevCon) starts Tuesday morning in the LA Convention Center. I’m hosting three 45-minute developer panels in room 306A.

I’m looking for an audience who is more informed, vocal and opinionated on these subjects than I am. The topics can be changed and I’m up for suggestions. Care to join us? Questions you want to make sure we address? I’m at @evanwolf on twitter, evanwolf on Skype, +1-510-316-9773 on mobile or editor@skypejournal.com.

See you at the show.

After some coffee.

architecture | Business | Developer Zone | Developers | facebook | Innovation | SkypeKit | startupweekend | Technology | twilio | USA | wishlist

Skype Birthday Note from Startup Weekend Education by the Bay

I pitched and demoed Practisimo tonight at the end of Startup Weekend – Education at San Francisco’s Dogpatch Labs. imagePractisimo is a foreign language practice service. Practisimo brings native speakers to people who already know language who need to practice to keep their language skills alive. We started from scratch Saturday night, after killing our language lab product 24 hours into the project.

Joining up, speed-dating style, to form new business teams was entertaining. Getting the business design right was hard. Trusting strangers was spiritual. Decisiveness at top speed exposing your ignorance was unsettling. Keeping our collective eyes on the-very-next-thing-to-do was tiring.

Leaving Skype out of this real-time, just-in-time, find-someone-to-practice-with service was really easy .

Our requirements:

  • We need technology like Chatroulette’s, where we pair two users so they talk to each other.
  • We want to serve some users on mobile phones.
  • We want to serve 1-to-1 video chat and text chat inside of our web site and inside of other sites like facebook.
  • We don’t want to pay for bandwidth for our first million users.

Skype just couldn’t get us there.

We might have been able to use Skype network APIs, still under construction. But that’s for another year.

We thought about building it on SkypeKit, but I’ve been waiting for 125 days to even see the secret SkypeKit SDK documentation.

So we’re using other technology to help people talk to each other.

Video chat ran on the TokBox API. For the telephony part, between Twilio and Voxeo we chose Twilio; it was more familiar to one of our programmers (and Twilio co-sponsored #SWBAY). In-browser text chat used a little open sourced PHP. Forms and surveys ran on Wufoo. We cobbled a barely working, unlikely-to-scale, first-draft experience together using less than four hours of programmer time.

Today was Skype’s 7th birthday. Happy Birthday, Skype!

I wish I’d had a different story to tell. The new practice of entrepreneurship taught at #SWBAY ruthlessly focuses on doing the right things, right now, with the tools at hand, in ways that teach you what you need to move forward. Dear Skype, wish you were there.

Call me at +1-510-343-5664, Skype me, follow @SkypeJournal and @evanwolf. Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats. 

analysis | architecture | Business | events | netneutrality | regulation | SkypeKit | software | supernova | Technology

Dear Supernova: When should Network Neutrality apply at the app level?

Today is Supernova Perestroika. Wishing I could be there.

Don’t use the content of my bits to treat my bits differently than anyone else’s bits. That’s the general thrust of network neutrality. Common carriage, that the companies moving my phone call or video call or email shouldn’t know or care about who I’m speaking with or what we’re saying.

Net neutrality came up as Internet service providers struggled to do more than move data. Neutrality Sans: The alphabet without the letters from Net Neutrality, just because I thought it was cute.They blocked Skype, throttled movie downloads, filtered out websites. They decided it was their right to choose on behalf of their customers since they owned access points to the Internet.

Skype and other Internet companies that suffer from bad carrier behavior supported net neutrality for a long time. Skype’s chief D.C. advocate, Chris Libertelli, recently shot the FCC a note: “The issue of Network Neutrality protections for Skype users has been pending for too long. Skype supports quick action by the FCC and today’s vote. Moving forward with a solid legal foundation is critical to promoting investment and consumer choice throughout the Internet ecosystem." 

I bring this up because Skype soft-launched SkypeKit last month. SkypeKit lets programmers build Skype inside desktop software and in hardware. Like Apple‘s app store, Skype limits what you can build based on the content of your app: no adult content, no gambling.

Skype claims this right because your SkypeKit app will use some of Skype’s resources. Copies of your app will log in to Skype’s servers and move data through them. SkypeKit-based apps use proprietary Skype intellectual property, like Skype-built communication protocols, codecs, and encryption. Their turf, at least in part, so their rules.

Skype reserves the right to compel you to withdraw your published product from the market if they decide, at their own convenience, that your app violates their content sensibilities. Should they have this power?

Just as the power companies can’t dictate what kinds of purposes people use electricity for, the providers of basic general-purpose communications transport shouldn’t be able to dictate how we communicate. – Susan Crawford, August 14, 2008

Professor Crawford wrote that about network neutrality. Her point seems to apply here. Infrastructure shouldn’t dictate the content of solutions built upon it.  Public roads what models of car you can drive. Cars where you can go. Application platforms what you can run.

Should Skype, arguably a phone company and offering a telecommunications platform, have the right in law to discriminate based on the content of your conversation? How about other cloud telephony and cloud platform providers, like Voxeo, Google, and Amazon? We know they have the technical power to enforce their view. Should those powers be supported in law and regulation too?

At what point do the ideas of common or public carriage apply to non-telephony platforms?

"Common carriage was applied to freight or carriage companies and inland and ocean water carriers. By common law, common carriers were 1) required to serve upon reasonable demand, any and all who sought out their services; 2) held to a high standard of care for the property entrusted to them; and 3) limited to incidental damages for breach of duty." — Eli M. Noam, Beyond Liberalization II: The Impending Doom of Common Carriage, 18 Telecomm. Pol’y 435. Sec. II (1994). via Cybertelecom

Serve everyone.

How is carrying our voice bits different than executing our application bits?

Should Apple be compelled to let all apps run on iOS? Should Amazon be indifferent about the apps that run in its cloud so long as they behave non-destructively within technical guidelines?

Should the Carterphone principle (attach any phone to a network so long as it doesn’t harm the network) apply to all APIs by default? Attach any app or service so long as it doesn’t harm network operations?

Should this apply to all platforms? Apple and Amazon are big, successful, market leaders with their platforms. How about a small CAD company without power in a crowded market? Should we consider the long tail of API providers to be common carriers?

How about platforms that are in early testing, where the hosting company is not ready to make a public commitment to the APIs or to the platform? Skype’s SkypeKit platform is in an early closed beta and its APIs are still in flux. Should we exempt early-stage platforms from discriminating on the content of our software? 

If software publishing is protected speech,

By whose authority?

Being privately owned isn’t a free pass. Skype answers to its board of directors, not to the public. Then again, so does AT&T. The public doesn’t get to say that my dating site is "adult" except through public discussion. Why should AT&T at the carrier layer or Skype at the application layer?

What constitutes a public interest worthy of taking some authority away from those hosting a platform? Free speech, consumer choice, freedom to assemble (online), access to work (online and off), access to government services and ePolitics? What regulator would have the authority to impose open access?  What laws cover this now?

Lots of questions.

One last one.

Should Apple and Skype, both of whom are dictating content on their network, lose exemption from DMCA Safe Harbor provisions? Does restricting some content make them liable for the content they approve?

No more questions.

Courts around the world told Microsoft they had to play fair in the Windows browser wars. Let’s debate application neutrality for our new platforms.

architecture | Developers | events | meetup | platforming | Skype | Technology | twilio | USA | VoIP | Voxeo

The first SF Telephony Meetup notes

Telecom platform geeks convened for the first SF Telephony Meetup. I linked to YouTube videos of most of the talks below.

We were welcomed to the first SF Telephony meetup by Gabriel Sidhom, CTO of Orange Labs San Francisco. Gabriel teased us with a thought experiment: "What if the phone wasn’t the first thing that was invented but rather a computer?  And email rather than voice telephony? Then how would we do voice?"

Adam Kalsey , akalsey@voxeo.com, @akalsey for Voxeo and Tropo. "We’re an API for the phone system." V built their API support in Java for the JVM. They run your code in their cloud against shims that translate from your programming language to the JVM. http://labs.voxeo.com/moho. @tropo. Call or SMS: 415.894.9965: gtalk,XMPP: tropolocal@tropo.im

Jason Goecke for Voxeo Labs [good to see you, Jason!] about Adhearsion. Telephony application framework that drives Asterisk. Integrates with Rails at the MVC model layer. Used by AlertPay, for example.  Recent release: Asterisk 1.6 support, ActiveLDAP support. Next release in August to work with Asterisk 1.8, Ruby 1.9 compatibility, and bundler support. Learn more at AdhearsionConf 2010, August 14-15 in San Francisco: Talks, code-a-thon.

 
AdhearsionConf 2010
Jay Phillips, the creator of Adhearsion, will be joining us for two days of talks, discussions, hacking and pair programming on all things Adhearsion. We also have other folks on deck that will be sharing their innovative uses of Adhearsion. Free.
Sunday, August 15, 2010 (all day)
Venue TBD
San Francisco, CA  USA

Adrian Georgescu of AG Projects, Netherlands, for SIP2SIP. SIP service transparent for the end-points, publicly reachable sip uri user@sip2sip.info. Good for audio, video, fax, IM, file trans, SMS, presence, XCAP (originated by Skype’s Jonathan Rosenberg), NAT traversal. Launched 2008. 40k SIP accounts. Most devices are using more than VoIP. sip2sip uses a self organizing sip infrastructure (SIP Thor), applying p2p architecture to SIP. Talk on Thursday (the next day) about the highly scalable back-end systems. sip2sip is free for end users (without PSTN termination or SMS) and white label for operators with pre/post paid accounting. Easy provisioning for end users through scripts. SOAP/XML interface lets you build your own portal to administer sip accounts. For operators that want to offer Skype-like services to SIP devices. Contact info:  ag@ag-projects.com. http://ag-projects.com. http://sip2sip.infoProject wiki.

James Li, Dominic Lee and Adam Odessky of Orange Labs SF showed a television UI for a sip phone app accepting an inbound phone call from an iPad, sharing the television’s audio (CSI Miami) in the call, dialing out from the TV, and a fun demonstration of echo in a four-way conference call. 

@ChrisMatthiew of Teleku @teleku. Rails – RESTful Phone web service API. Competes with Tropo, Twilio. Hosted on ec2. Free Ninja hosting runs on free open source stack. paid Samurai Warrior hosting runs on Voxeo hosting. Teleku translates apps from its own PhoneML, a 7-command scripting language, or TwiML (Twilio’s language), or VoiceXML and translates them to VoiceXML. So you can run those apps on Teleku’s restful API. Now OpenVBX, built by Twilio, can run on Teleku with speech recognition, international text-to-speech, Skype, SIP, iNum, multi-channel support. "I applied to Twilio’s developer challenge. I haven’t heard back from them." Demoed an SMS from the Twilio app running on the Teleku API running on the Voxeo platform. Demoed Skyping a phone number answered by an OpenVBX IVR workflow running from Twilio’s software on the teleku platform on the Voxeo platform.

Dan Miller of Opus Research spoke on this summer of recombinant communications (vs. unified). In the long run, everyone wants to be a platform. So everyone will be peers, cooperating with each other. The biggest companies will likely dominate at scale but small firms will continue to innovate faster.

Darren Shreiber of the 2600hz project. +1-415-886-7901. How do you manage a network of Freeswitch instances? The BlueBox Project: Core is in Erlang, API-based. Heavy use of distributed software (db, messaging). "Let it fail" assumption so lots of redundancy; calls continue when servers go down. They monitor and virtualize integration. Completely Open-Source, not just the APIs. Designed to help service providers to spin up boxes faster, distribute boxes easily, cut costs, increase flexibility. modular services.

Orange Labs SF is hiring product managers and software architects. Peter Hallinan at Blindsight is hiring "not your grandpa’s android developer" now. 2600hz is hiring erlang and sip people.

Not news: No women there, aside from two Orange staffers helping with registration and video. For some reason Telephony remains a boys’ club.

Call me at +1-510-343-5664, Skype me, follow @SkypeJournal and @evanwolf. Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats. 

analysis | architecture | Business | Developer Zone | facebook | google | identity | platforming | skypeforbusiness | SkypeKit | Technology

Skype is sitting out the web’s identity war

IDs people use when logging into other sites

More than 500 million people have Skype names but they only use them to sign in to Skype. Meanwhile Facebook, Google, Twitter, Yahoo!, MySpace and LinkedIn provide portable identity to their customers. The chart is courtesy of a Gigya.com report on multiple identity services.

Identity providers offer:

  • Registration.
  • Authentication for login.
  • Data sharing.

People are more likely to use existing accounts than to create account new ones. A "Register with Facebook" button, for example, transfers trust to the new site and lowers the effort to explore it. Site operators love the higher conversion rate since more people sign up.

Once you’ve registered using a trusted authority, the new site doesn’t need to worry about your changing passwords or your profile. Your trusted authority, like Google or LinkedIn, knows your latest account information and takes care of authorizing you.

Your identity provider can also share your data with other sites. Different providers choose different data to share.

Not all sites share the same data with your digital ID

They commonly share your proper name, email, nickname, bio photo, profile URL, birthday, gender, location and a list of your contacts (your social graph in socialmedia speak).

Sign-In-With-Skype button - mockup

Skype would be able to share most of those fields and more. Skype’s data model also offers mood message (like a tweet that lasts), primary language, time zone, and availability. Skype also has phone numbers (the ones where you forward SkypeIn call), online numbers (where you call and Skype rings) and Skype names.

Skype is missing a vast opportunity. Being an OpenID and OAuth provider reinforces your brand during more of each customer’s day, in more ways. It provides valuable behavioral data. It helps customers choose their primary trustee for their profile data, their contacts and friends, their media, and their conversation history.

Skype is rolling out their platform products starting with SkypeKit and continuing toward Communications as a Platform. "Sign In With Skype" could be great bait for Skype’s developer program.

Unfortunately, Skype’s identity model is soooo last century.

  • IDs cannot be transferred.
  • You cannot have multiple personas for each identity.
  • You cannot present different profiles to different parts of your social graph (a family face versus a work face).
  • Pricing and contracts are tied to user accounts, so Skype forces you to break your life into work and non-work, which is not how people communicate today.
  • Skype never provided any APIs for account creation, change, transfer or deletion, so enterprises cannot automate account provisioning and manage the lifecycle.
  • Skype manager, a control panel for supervisors, doesn’t offer an API for managing funds.
  • Skype doesn’t model roles which might be shared among multiple Skype names, so inbound calls go to a pool of users to answer the call.

Some of these defects are structural, requiring serious reengineering. Other fixes would be additive, feasible within a few quarters.

Skype has a chance to build its identity technology, bring it to market, to win hearts and minds. Is it on Skype’s roadmap?

Call me at +1-510-343-5664, Skype me, follow @SkypeJournal and @evanwolf.
Visit our Skype Journal private technologist roundtable, one of the longest running public Skype chats.
     

Updated: 10 July 2010: Added "Sign In With Skype" button mockup

architecture | events | facebook | identity | Technology | USA

No distractions

Sometimes you need an interruption. Very good news. Very bad news. Very important news.

It’s the "very" that’s tough. Sifting through everything to find what’s meaningful to you right now is a monumental task.

Relevance engines like those at facebook and xobni and Google Buzz consider the source, of course. Is this person authoritative on this subject? Do I trust this person in this context? Does this person provide raw or processed information? How does this source compare with rival sources?

We have very crude general purpose filters. Part of this is working with sparse data about what you personally find relevant over time. It’s also hard to package raw data in ways that are easy to find and analyze. So I expect ActivityStreams and the open stack to come up at today’s Internet Identity Workshop as a strategy to help your agents generate more relevant and timely alerts.

db100510 Doonesbury on Distractions

Of course sometimes any interruption will do.

Thanks, Doonesbury.

5b | architecture | Skype | Technology

Skype 5 beta and group video bandwidth

After testing we have a theory. The Skype clients in a group video call coordinate who sends what to whom.

We saw two configurations emerge.

Skype 5 Beta - Six Streams

First, a basic "naive" arrangement, shown on the left.

Each of us sent a stream directly to the other two parties and received their streams in return. Relatively low bandwidth consumed. For three people, that’s six streams, like a triangle. We assume this is what happens when all the legs of the conversation are roughly even in capability.

The other is a hosted arrangement, shown on the right.

One of us, with more bandwidth and sufficient CPU, behaved like a multipoint control unit (MCU). Two sent and received their streams through the third member of the chat. He saw roughly double the bandwidth of the other two.

More experiments with metrics to come. We need to learn:

How does Skype decide who hosts? What conditions trigger a change from one topology to another? What other arrangements exist, such as two hosts among five callers? If I’m capturing at Skype HD (720p), will I send the same stream to all, or do those with less available download bandwidth get a lighter version? How important are the CPU limits vs. the bandwidth limits ("1 Mbps symmetrical bandwidth or higher and a PC with at least a 1.8 GHz processor")? 

Thanks to George and Nicholas for the testing. Help us test the Group Video Beta. Join us in about an hour from now, this Friday morning from 6 to 8 AM Pacific, 9 to 11 Eastern, 2:00 PM London, 4:00 PM Tallinn. Leave a note, Skype me, or tweet me. We can use the help, especially if you can run Wireshark and Windows Resource Monitor (netmon).

architecture | Business | codecs | Collaboration | conferencing | ooVoo | P2P | platforming | pricing | SkypeKit | Technology | video

Will Skype five-way video beat consumer expectations?

#Skype screenshot mockup of 3way video call

More than six years since we asked for it, Skype is promising limited multiparty video calling in a beta release for Windows next week. Lovely!

See the Skype-provided mockup of a multiparty video call above, featuring the faux Cooper family. MPV’s controls, starting at the top:

  • Snapshot, make bigger and full screen.
  • Bottom right: five bars (signal strength? call quality?).
  • Center bottom: Add People, Webcam (on/off), and Share (social objects like files, contacts).
  • Bottom left: elapsed time in call, microphone on/off, speaker on/off, and End Call button.

But what do we need in a Skype multiparty video service? How might we judge Skype MPV?

Before a call:

  • Option to minimize audio interruptions/distractions during a video conference.
  • Test your webcam (and how you look) before connecting
  • One-click launch to video from multiparty audio or chat conversations.
  • Add a voice caller to a video conference. Drag-and-drop, please. And support leaving a member of the call in audio-only mode.
  • Invitation and scheduling service. Two people are difficult to calendar; five can waste more time negotiating when to call than in the call itself. Partner with companies like Tungle and Evite.
  • Addressable chats so we can share a skype: link or a web http: permalink to bring people to a meeting and to its archive.

During a call:

  • Moderator power for one or more of the parties. Sometimes you help the quiet person to speak, a dominant personality to pause, or a rude person to leave.
  • Lurking mode: mute your outbound audio and “mute” your outgoing video while continuing to see/hear the meeting. Sometimes you just need to adjust your clothing or divide your attention.
  • Desktop screensharing, one of the great collaborative features of Skype video.
  • Easily switch video/audio sources without interrupting the meeting. I should be able to control my contribution to the call. So let me switch from the webcam that shows my face to the Ipevo close-up cam that shows the product defect we’re discussing to the product specifications Acrobat file.
  • Play a video file or stream from your PC or the web to everyone in your call. Video is a social object, triggering conversation.
  • Multitask. Sometimes we must be in more than one video conference at a time; sometimes meetings overlap.
  • Live streaming of meetings through services like Ustream.tv and Livestream. Skype could easily become the talking-heads network.
  • Let third-party software overlay captions, speaker names, illustrations and effects atop live video.
  • Picture-in-picture video for full-screen viewing.
  • Studio controls, to decide which participant has the focus
  • Interoperability with Cisco, ooVoo, Logitech, and other video calling and conferencing networks.

After the call:

  • Meeting video archive. Save meeting to YouTube (and other services) and to a blog.
  • One-click fallback to voice conference from multiparty video. Sometimes you just want to downshift.
  • Profile the chat. Let me add notes to describe what we did and what we promised, and share them.

Performance concerns:

  • Video quality. How many participants can be in High Quality (640×480@30fps) or High Definition (720p) at the same time?
  • Connectivity robustitude. Does Skype MPV perform well under adverse field conditions, with Wi-Fi and 3G/4G connectivity?
  • Scaling Up with Fixed Bandwidth. How does adding a third, fourth and fifth person affect bandwidth consumption?
  • Anchor requirements. Do video conferences have an anchor party or host, the way audio conferences do? If so, what cpu/bandwidth/memory is needed?
  • Audio quality problems and solutions become more difficult with multiple parties. How well does Skype address echo cancellation? Multipoint noise reduction? Sound leveling?
  • Proprietary or public audio and video codecs?
  • Backwards compatibility. Will people with older Skype clients be able to join a multiparty Skype video call?

Platform:

  • Software Developers Kit for the desktop client plug-in architecture. So independent software developers can build MPV applications for Windows, Mac, and Linux desktops.
  • SDK for SkypeKit developers. So Panasonic, LG, and Samsung can build MPV into their televisions. So others can build MPV into desk phones, video phones, and automobiles.
  • Hosted web-service SDK. Please! The better to build SkypeRoulette.
  • Feature-complete SDKs compared to the desktop UI.

Policy:

  • Is the architecture centralized or decentralized? Where is a call’s jurisdiction? Are PCs used by the parties to a call the only computers used to conduct the call?
  • Can MPV be turned off through the enterprise IT .msi controls?
  • Are multiparty video conversations encrypted end-to-end?
  • Do you need to be a party to a call or be monitoring the desktop of a party to that call to intercept the call?
  • Can others contribute Skype credits to share a call’s cost?
  • Is everyone charged, or just the host? How is the host determined?
  • Priced for wealthy-nation corporate use? Or for developing world personal use?

Can’t wait to get my hands on MPV and walk you through the details.

architecture | Business | events | Skype | Technology | USA

Live From The RealTime CrunchUp: No Skype

Stream videos at Ustream

Skype and live voice/video conversations haven’t been part of anything in this event, or the others like it. I blame Skype’s branding problem:

  • Skype is antisocial software, not a place or way to discover future friends or colleagues.
  • Skype is just for your closest circle, fewer than ten contacts.
  • Skype is an isolated network that doesn’t interop with others.

That branding is reinforced by Skype’s product focus. Fear of strangers, as shown by the inane and inadequate profile and privacy systems. Little support for large numbers of contacts because the "average" user doesn’t need them (and can never graduate to power user if power features remain buried or unbuilt).

P.S. Every conference organizer should Ustream.tv all sessions. Cheap or free and brings thousands of people into the room with an interest in just one session or who cannot attend. You can’t buy the resulting word of mouth in a realtime world.

tags: , , , , ,

Call me at +1-510-316-9773, Skype me, follow @skypejournal and @Phil Wolff.
Visit our Skype Journal private roundtable, one of the longest running public Skype chats.

analysis | architecture | Business | Collaboration | community | conferencing | design | humancapital | Innovation | presence | research | Skype | Technology | wishlist

Research Topics in Collaboration

I wanted to follow up on my Monday post about the importance of collaboration products to Skype’s business strategy. The great thing about collaboration is that it is very hard. Collaboration is less a discipline than a catchall term. It’s peopleware more than technology, anecdotes more than evidence. Universities have no Collaboration Studies department in schools of business, humanities, engineering, or medicine. Industry and governments study collaboration but produce narrow benefits, poorly shared.

Frankly, there’s no Collaboration Science to inform the design of the next generation of tools like Skype.

Society needs it. The web needs it. I want to do it.

So what questions about collaborative behavior and collective productivity could investigations answer? Which avenues could radically improve the ability of live and time-shifted talk to become work effort? What collaboration patterns and social software designs can break down barriers and bridge teams and connect project stakeholders?

I made a list and called it Skype Journal – Research Topics in Collaboration (not attempting any creativity there). The research areas showed four themes:

  • Talk is a component within larger relationships
  • Talk systems are part of a larger interconnected network of information systems
  • Work adds constraints that help focus conversation
  • Collaboration as collective productivity

and the topics fell in three clusters:

  • Getting Started (Ridiculously Easy Group Formation; Group Goal Forming; To Do Lists, Calendars, Personal Time Management, and Getting Things Done Together; Fame and Reputation)
  • Being Better Together (Augmenting Inline Conversation; From Discovery to Action; Decision Making and Decision Support; Collaboration Afoot; Situational Awareness; How Collaborators Use Search and Personal/Collective memory; Gestures of Tomorrow)
  • Crossing Boundaries (Intergroup Collaboration; Earning Trust and Using Whuffie; Collective Presence and Project Presence/ActivityStreams; Transparency and Collaboration; Backchannels; Scaling Collaboration from Tasks to Projects to Programmes)

It’s a quick read, needs pictures and I consider this a rough, incomplete draft. The questions are a sample to get a feel for the space to be studied. 

How can we answer the questions? Research. Each topic is amenable to a different blend of usability testing, instrumented communication tools, prototyping, field ethnography of high function collaborative teams, and analysis of data from virtual teams.

I’d like to assemble a body of knowledge that turns our digital tin-cans-with-strings into engines of effectiveness.

Help me kick start this. (Yes, this is a bit self-referential.) What topics are missing? Prior art? Can this research occur in an open space or must it happen inside a corporate firewall? Of all the research topics, which ones are low-hanging fruit and which are harder to reach but outstanding value? Here’s the pdf.

Skype Journal – Research Topics in Collaboration – 2009q4

 

 

 

tags: , , , , , ,

Call me at +1-510-316-9773, Skype me, follow @skypejournal and @Phil Wolff.
Visit our Skype Journal private roundtable, one of the longest running public Skype chats.

7 years and 2 days since Skype Journal launched as a stand-alone blog.

Topics