Software Engineering Intern @ Apple
May 2018 – December 2018
iOS Keyboards team member developing keyboard and autocorrect software for iPhone and iPad.
Developed the system-wide Intelligent Text Selection feature that shipped in iOS 13 to hundreds of millions of customers. Responsible for both frontend and backend logic. Presented the feature to Apple's SVP Software.
Researched machine learning techniques to detect QuickPath (swipe typing) inflection points. Developed an end-to-end pipeline including data visualization and labeling tools, implementation, and evaluation.
Conjured an algorithm to measure hand dimensions using iPad's capacitive touch sensor data. Calculates hand height, span, glove size, and handedness using a single "handprint".
Intelligent Text Selection
Double-tap to quickly select addresses, phone numbers, email addresses, and more.
I developed the Intelligent Text Selection feature including both the frontend (UIKit) and backend logic. It augments the built-in word tokenizer by automatically expending text selections to phone numbers, email addresses, named entities, etc. This means when you double-tap a phone number the entire entity is selected, not just the few numbers identified by the tokenizer. I had the honor of demoing the feature to Craig Federighi, Apple’s SVP Software, as well as other high-ranking Apple execs (they liked it!).
Loving intelligent text selection in iOS 13. With a double-tap, you can select entire addresses, links, and even popular names (such as artists) 🤩 pic.twitter.com/qUENzFFtet
— Federico Viticci (@viticci) June 14, 2019
Also featured in:
Here are the best iOS 13 features you missed (The Next Web) [5]
Apple's Big iPad Update Reveals Something Huge About How it Sees the Future (Time) [6]
iOS 13 brings new gestures for cursor navigation, text selections, quick undo/redo, effortless cut/copy/paste & more (iDownload Blog) [7]
QuickPath Typing
Type by swiping from one letter to the next.
QuickPath was my team’s major focus for iOS 13 and I contributed research towards inflection point detection. In other words, classifying significant points along the path such as curves over keys the user intended to “type”, which are fed into our path-to-word algorithm. This research involved developing an end-to-end machine learning pipeline including a custom labeling and visualization framework, algorithm experimentation and tuning, and evaluation. Additionally, I took ownership of an in-house user studies tool near the end of its development to prepare it for a large-scale typing study.
Also featured in:
iOS 13 - 70+ Best New Features & Changes! (Brandon Butch) [14]
10 Major Changes in iOS 13! (Michael Billig) [15]
iOS 13 Best NEW Features & Changes (iDeviceHelp) [16]
Handprint
For Apple’s Weeks of Code (internal two-week hackathon), my colleagues Goutham Mani, James Magahern, and I developed Handprint, an app to quickly collect hand measurements during user studies. Simply place your hand on iPad’s screen. Each finger’s width is captured on a separate canvas to improve accuracy. Measurements can be viewed right in the app or transferred to another app by scanning the QR code encoding these data.
I invented the algorithm that that computes hand height, span, glove size, and handedness from the raw capacitive touch data. Notably, the algorithm works in any orientation. Additionally, I developed the QR code data transfer mechanism and designed the UI.
References
[1] https://twitter.com/gingerbeardman/status/1139868037107130368
[2] https://twitter.com/ankjaers/status/1139888715705257984
[3] https://twitter.com/dancakebatter/status/1139905394145472512
[4] https://twitter.com/cwagdev/status/1139710554816147458
[5] https://thenextweb.com/apple/2019/06/13/here-are-the-best-ios-13-features-you-missed/
[6] https://time.com/5600950/apple-ipad-ipados/
[7] https://www.idownloadblog.com/2019/06/14/ios-13-overview-text-editing-gestures/
[8] https://www.apple.com/ios/ios-13-preview/features/
[9] https://www.apple.com/ios/ios-13-preview/
[10] https://youtu.be/Wf1lQdupvPE?t=147
[11] https://youtu.be/ULscGqeMgfo?t=154
[12] https://youtu.be/katx_c0Wp74?t=228
[13] https://9to5mac.com/2019/06/05/quickpath-ios-13-keyboard/
[14] https://youtu.be/rVO5XS9LlEo?t=381
[15] https://youtu.be/bITB0pnLK-c?t=71
[16] https://youtu.be/f5YGxNpfcxo?t=338