Wednesday, March 24, 2010
Posted by Jason Dunn in "Windows Phone Talk" @ 06:00 AM
There's been a lot said in the past week about the fact that Windows phone 7 won't have copy and paste functionality at launch - and even more was said (in a rather loud tone of voice) once Microsoft statements came out that this was by design because most people don't "need" copy/paste. While it's not a feature that every user would use regularly, it's one of those features that is important to have in certain scenarios - and even if you might only be in one of those scenarios once a month, without copy and paste, odds are you can't accomplish what you want. We've had some high-spirited discussions about copy/paste in our forums, with some members saying that they think implementing copy/paste should be "relatively easy". Having watched Microsoft closely over the years, and watched as seemingly simple features took years to come to fruition, I disagreed with the idea that implementing copy and paste would be as simple as some people think it is. I'm not a developer, however, and can't properly explain the challenges.
Image Credit: Julian Cole - Adspace Pioneers.
In light of this, I figured there was one person I could turn to: Mel Sampat, formerly a member of the Windows phone team, and now on his own at Mist Labs. He wasn't a member of the shell team - the team that would handle copy/paste - so he's neither representing Microsoft here nor is it trying to explain or justify the decisions of the shell team. He was, however, on the Windows phone team until a few weeks ago, so he has insight into what it takes to implement features on Windows phone 7. Check out the interview after the break.
WPT: It's been pointed out that Windows CE 6, which is what Windows phone 7 is built on, has clipboard support - and using the Windows phone 7 emulator, using a desktop keyboard it looks like the keyboard shotcuts for copy and paste still work. At a high level, why isn't is "easy" to make this work in the OS?
Mel: On an API level, clipboard support has always been part of Windows (including Win32 and WinCE). However, implementing an API and creating new UI around it are completely different beasts (usually handled by different teams). As an analogy, the OS includes APIs for changing the date and time. However, a whole new app needs to be written from scratch to allow end-users to change the date and time. Similarly, a whole UI paradigm needs to be created around the Copy/Paste APIs, which takes lots of time and research to get right. This includes a lot of spec reviews, design iterations, dogfooding, usability studies etc. It also has to work automatically throughout the system without each app having to do something special to support copy/paste on its own. All of this end-user + developer friendliness takes time to bake, and it can't simply be hacked together on top of the APIs.
WPT: The move from resistive screens with a stylus-based input to capacitive screens with finger-based input would have some repercussions related to text selection, input, etc. What kind of impact would this have on the development of a copy and paste feature in Windows phone 7? What sorts of things would have to change?
Mel: A resistive screen (like those on Pocket PC devices) requires use of a stylus tip, which ensures touch precision to a few millimeters. A capacity screen (like those on iPhones) uses a finger instead of a stylus, which reduces precision but greatly improves gestures like pan, flick and pinch. Text selection requires high precision. For example, imagine you have an email message with this text: "Meet me at 148th Ave NE, Redmond, WA!". To map this address, you have to select just the address, and not the leading space or trailing punctuation. Old touch versions of Windows Mobile relied on the stylus to select text, which worked well because the tiny tip lets you easily pinpoint exactly where you want the selection to begin and end. However, Windows Phone 7 uses a capacitive screen, which would make selection extremely difficult, uncomfortable and error prone using just a finger. It's clear that using a finger directly like a stylus just won't work. So Microsoft needs to come up with a way to make text selection easier with a finger. iPhone does this by magnifying text when you press and hold a finger on it.
WPT: Apple was hammered on for not having copy and paste when they launched the first-generation iPhone, but their implementation of copy/paste today, and text selection, is pretty solid. What kind of issues could Microsoft run into with developing their own approach - if they couldn't think of a unique approach, would they have to license Apple's solution?
Mel: Apple's text magnification works great, but I'm not sure if there are any patent issues related to it. Given Apple's recent patent litigation for experiences such as pinch and stretch, swipe to unlock, "rubber band bounce" etc., Microsoft needs to be careful about properly developing or licensing its copy/paste implementation.
WPT: Let's talk about controls - how would it be different enabling copy and paste between editable fields (such as contact fields) and a Web page. What sorts of things would the Windows phone 7 team have to implement to have copy and paste work across the entire OS?
Mel: Whatever Microsoft builds for copy/paste should work not only for edit fields, but also "read-only" content such as web pages and email messages. Ideally the same experience should be used everywhere so that the user doesn't need to discover new menus or gestures to copy/paste in different apps. In other words, copying an address from an email message, a URL from the browser's address bar or a paragraph of text from a web page should be initiated the same way. Even though Microsoft implemented Copy/Paste in the Smartphone (non-touch) version of Windows Mobile 6.x, this was broken because it didn't work consistently. For example, you could Copy text from the web browser, but couldn't paste it into the home address field of a Contact. Hopefully Microsoft will not repeat such mistakes in 7.
WPT: Based on everything you've said above, is copy and paste a "doable" feature in Windows phone 7, or are there things about the way the new OS is fundamentally designed that would make it impossible to implement?
Mel: As I said in my first answer, it's technically easy to slap something together quickly. However, designing it so that it's discoverable, intuitive and convenient takes more effort. It shouldn't require someone to do a Google or YouTube search to find out how to use features like Copy/Paste or multi-select. Let's wait for Microsoft to finish their due diligence and come out with something that is fully baked.
WPT: Thanks for taking the time to answer these questions Mel!
Jason Dunn owns and operates Thoughts Media Inc., a company dedicated to creating the best in online communities. He enjoys photography, mobile devices, blogging, digital media content creation/editing, and pretty much all technology. He lives in Calgary, Alberta, Canada with his lovely wife, his son Logan, and his sometimes obedient dog. He likes where Microsoft is going with Windows phone 7, even though it's going to be a rocky couple of years.
Do you enjoy using new hardware, software and accessories, then sharing your experience with others? Then join us on the Thoughts Media Review Team! We're looking for individuals who find it fun to test new gear and give their honest opinions about the experience. It's a volunteer role with some great perks. Interested? Then click here for more information.