2 पॉइंट द्वारा GN⁺ 2023-09-25 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Android और iOS में टेक्स्ट एडिटिंग ने desktop परंपराओं को अपनाया है, लेकिन मोबाइल में सटीक pointer और menu bar नहीं होते, इसलिए एक ही tap पर cursor placement, selection और menu invocation एक साथ आ जाते हैं
  • समस्या का मूल टेक्स्ट input नहीं बल्कि editing है, और 10 उपयोगकर्ताओं पर किए गए अध्ययन में सभी प्रतिभागियों को targeting, clipboard उपयोग और बार-बार होने वाली errors का सामना करना पड़ा
  • text handles, magnifier, double tap·long press, popup menu — ये सभी अपने-अपने स्तर पर उचित समाधान हैं, लेकिन साथ इस्तेमाल होने पर tap की व्याख्या में अस्पष्टता बढ़ जाती है
  • Eloquent prototype tap को हमेशा cursor placement के रूप में समझता है, और drag-केंद्रित movement, integrated magnifier, Drag Press selection, swipe menu के जरिए editing flow को सरल बनाता है
  • सुधार की बाधा तकनीक से अधिक adoption और organizational priorities से जुड़ी है, और मोबाइल productivity बढ़ाने के लिए desktop की नकल वाले hacks से आगे बढ़कर touch के लिए उपयुक्त editing model की ज़रूरत है

मोबाइल टेक्स्ट एडिटिंग की समस्या आसानी से क्यों दिखाई नहीं देती

  • Android और iOS ने desktop टेक्स्ट एडिटिंग का तरीका मोबाइल पर लाया, लेकिन मोबाइल में सटीक mouse pointer और menu bar/command keys नहीं होते
  • इसके परिणामस्वरूप एक ही tap gesture को कई काम संभालने पड़ते हैं
    • cursor placement
    • cursor movement
    • text selection
    • popup menu invocation
  • छोटे message या social media comments में यह समस्या कम दिखती है, लेकिन कई वाक्यों वाले email जैसे लंबे टेक्स्ट को सुधारते समय editing प्रक्रिया थकाऊ और error-prone हो जाती है

2017 के user study में सामने आई editing failures

  • 2017 में Android पर काम करते समय मोबाइल टेक्स्ट एडिटिंग पर मौजूदा user research खोजी गई, लेकिन 7 साल के शोध को देखने के बाद भी संबंधित अध्ययन नहीं मिला
  • 10 प्रतिभागियों से एक अक्षर हटाने या किसी शब्द को वाक्य के अंत में ले जाने जैसे सरल text editing tasks कराए गए
  • सभी प्रतिभागियों को समान कठिनाइयों का सामना करना पड़ा
    • इच्छित स्थान पर सही तरह tap करना कठिन था
    • clipboard का उपयोग जटिल था
    • बार-बार errors होती थीं
  • प्रतिभागियों ने messaging या social apps की तुलना में कई वाक्यों वाले email जैसे जटिल लेखन में अधिक निराशा दिखाई
  • आधे से अधिक लोगों ने कहा कि टेक्स्ट को ठीक करने के बजाय select all करके delete करना और फिर दोबारा टाइप करना अधिक आसान लगता है
  • समस्या का केंद्र text input नहीं बल्कि editing है
    • keyboard, voice transcription और tablet के physical keyboard की वजह से input पहले की तुलना में बेहतर हुआ है
    • लेकिन लिखे हुए वाक्यों को बाद में ठीक करने की ज़रूरत अब भी बनी रहती है
  • अध्ययन का फोकस Android सुधार पर था, लेकिन iOS में भी भले ही बारीक व्यवहार अलग हों, उसी तरह की समस्याएँ बहुत हैं

मोबाइल consumption में मजबूत है, लेकिन editing में कमजोर

  • मोबाइल devices वीडियो, फोटो, social media और messaging जैसे चलते-फिरते consumption में मजबूत हैं
  • शुरुआती iPhone में clipboard support भी नहीं था
  • tablet desktop को replace करेंगे, ऐसी उम्मीद बार-बार की गई, लेकिन desktop replacement के रूप में उन्हें बड़ी सफलता नहीं मिली
    • Apple ने “What’s a computer?” विज्ञापन चलाया
    • Google ने 2013 में कर्मचारियों से पूरे दिन tablet इस्तेमाल करवाने के लिए “Tablet Tuesdays” अभियान आजमाया
  • tablet productivity में रुकावट डालने वाली गहरी UX समस्याओं में text editing और file handling शामिल हैं
  • लक्ष्य desktop पर लौटना नहीं, बल्कि मोबाइल को desktop जितना तेज़ और productive बनाना है

desktop टेक्स्ट एडिटिंग का baseline

  • 2000 के बाद desktop टेक्स्ट एडिटिंग ने अपेक्षाकृत स्थिर संरचना हासिल कर ली
  • desktop के तीन बुनियादी तत्व हैं
    • mouse या trackpad से चलने वाला सटीक pointer
    • click के बाद drag से होने वाला सरल selection
    • Cut/Copy/Paste वाला Edit menu और X/C/V command keys
  • यह संयोजन टेक्स्ट एडिटिंग को अपेक्षाकृत कम error-prone और कम ambiguous बनाता है
  • यह पूर्ण संरचना नहीं है, लेकिन मोबाइल टेक्स्ट एडिटिंग की तुलना के लिए एक baseline देता है

desktop तरीके को मोबाइल में ढालने पर पैदा हुए चार workaround

  • 1. text handles

    • मोबाइल में text cursor के नीचे बूंद जैसी आकृति वाले text handles जोड़े गए
    • handle cursor को अधिक स्पष्ट बनाते हैं और गलत tap के बाद drag करके स्थिति सुधारने की सुविधा देते हैं
    • लेकिन handle खुद भी tap target है और आसपास का टेक्स्ट भी tap target है, इसलिए ambiguity पैदा होती है
    • cursor के ठीक बाएँ या दाएँ tap करने पर उपयोगकर्ता का इरादा अस्पष्ट हो जाता है
      • क्या वह cursor को move करना चाहता है
      • या handle पकड़कर drag करना चाहता है
    • user testing में देखा गया कि सटीक स्थान पर cursor रखने की कोशिश करने वाला उपयोगकर्ता कुछ अक्षर चूकने के बाद फिर बगल में tap करता है, लेकिन handle tap को प्राथमिकता से ले लेता है और प्रयास विफल हो जाता है
    • iOS में बूंद जैसे handle नहीं हैं, फिर भी text cursor के tap को खा जाने की समस्या बनी रहती है
  • 2. magnifier

    • छोटे टेक्स्ट और अपेक्षाकृत बड़ी उंगली की समस्या को कम करने के लिए मोबाइल में magnifier जोड़ा गया
    • magnifier tap से पहले सही स्थान तय करने से ज़्यादा, गलत tap के बाद drag करके सुधारने में मदद करता है
    • उंगली के ऊपर तैरता magnifier वास्तविक cursor और magnifier के भीतर दिखने वाले copied cursor — इन दो cursors को दिखाता है, जिससे visual confusion पैदा होता है
    • छोटे text fields में यह कम गंभीर होता है, लेकिन लंबे email में मौजूदा स्थिति खो देना आसान हो जाता है
    • Apple का magnifier iOS 13 में हटा दिया गया था और iOS 15 में वापस आया
  • 3. text selection

    • desktop पर click दबाए रखते हुए drag करना स्वाभाविक रूप से text selection में बदल जाता है
    • मोबाइल में यह मुश्किल होने के कारण double tap और long press को selection gestures के रूप में जोड़ा गया
    • double tap को समझने के लिए सिस्टम को दूसरे tap का इंतज़ार करना पड़ता है, इसलिए single tap की प्रतिक्रिया देर से हो सकती है
    • एक शब्द से अधिक चुनने के लिए पहले शब्द select करना पड़ता है, फिर दोनों सिरों के handles को drag करना पड़ता है
  • 4. popup menu

    • मोबाइल में menu bar नहीं होता, इसलिए clipboard commands बुलाने का दूसरा तरीका चाहिए
    • text select करने पर selection के ऊपर menu दिखता है, जो cut/copy के लिए अपेक्षाकृत ठीक काम करता है
    • paste आमतौर पर selection से शुरू नहीं होता, इसलिए वह अधिक छिपा रहता है
    • वही menu खोलने के लिए text handle पर tap करना पड़ता है, इसलिए उपयोगकर्ता को दो अलग gestures सीखने पड़ते हैं
    • Android में text handle 4 सेकंड तक input न होने पर गायब हो जाता है
      • क्योंकि handle नीचे के टेक्स्ट को थोड़ा ढकता है
      • menu खोलने के लिए फिर tap करके handle दिखाना पड़ता है, और फिर handle पर एक बार और tap करना पड़ता है
    • मोबाइल में cut/copy/paste के लिए कोई command keys नहीं हैं, इसलिए beginners और experts दोनों को वही menu-based तरीका अपनाना पड़ता है

एक tap के कई अर्थ निकाले जाने वाली संरचना

  • mobile टेक्स्ट एडिटिंग ने desktop features को मोबाइल में ठूँसने की प्रक्रिया में tap की कई संभावित व्याख्याएँ बना दी हैं
  • उपयोगकर्ता जब एक बार tap करता है, तो system इसे इनमें से किसी रूप में समझ सकता है
    • cursor placement
    • cursor पहले से मौजूद होने पर menu invocation
    • drag start
    • double tap start
    • long press start
  • सावधानी से काम करने पर इन्हें अलग किया जा सकता है, लेकिन संरचना खुद ही नाज़ुक है
  • user testing में दिखाई देने वाली errors इस प्रकार थीं
    • fat finger problem की वजह से इच्छित स्थान छूट जाना
    • cursor ठीक करने के लिए बगल में tap किया, लेकिन handle दब गया और menu खुल गया
    • menu की जगह बहुत छोटे drag के रूप में समझा गया, इसलिए कुछ नहीं हुआ
    • double tap करने की कोशिश में बगल में tap हो गया या handle छू गया, इसलिए कुछ नहीं हुआ
    • खाली field में paste करने के लिए पहले खाली field पर tap करके cursor बनाना पड़ता है, फिर cursor पर दोबारा tap करके menu बुलाना पड़ता है
    • cursor रखने के बाद थोड़ी देर नज़र हटाते ही handle गायब हो जाता है और उपयोगकर्ता भ्रमित हो जाता है
  • 10 लोगों के अध्ययन में cursor को सही जगह रखने के लिए औसतन 5 प्रयास लगे, और एक उपयोगकर्ता ने 19 बार tap किया
  • कई उपयोगकर्ता वास्तविक editing की बजाय पूरा टेक्स्ट दोबारा टाइप करना पसंद करते हैं, इसका कारण यही friction और errors हैं

मौजूदा workaround features की सीमाएँ

  • double tap के बाद drag करके अधिक टेक्स्ट चुनने या keyboard features से cursor move करने जैसी सुविधाएँ मौजूद हैं
  • लेकिन ऐसी सुविधाएँ ज्यादातर उपयोगकर्ताओं के लिए ढूँढ पाना कठिन है और ये मूल समस्या हल नहीं करतीं
  • मूल समस्या यह है कि करोड़ों मोबाइल उपयोगकर्ता हर दिन tap और selection errors झेलते हैं
  • अगर मोबाइल को desktop का विकल्प या प्रतिद्वंद्वी बनना है, तो desktop की नकल वाले tap hacks से आगे बढ़कर touch अनुभव के लिए अधिक सरल और स्पष्ट तरीका चाहिए

Eloquent prototype का दृष्टिकोण

  • Olivier Bau के साथ मिलकर Eloquent prototype बनाया गया, और यह काम UIST 2021 में प्रस्तुत किया गया
  • Eloquent tap, selection, magnifier और menu use के एक-दूसरे से टकराने वाली समस्याओं को एक साथ सुलझाने की कोशिश है
  • सरल किया गया cursor placement

    • Eloquent का मुख्य लक्ष्य desktop mouse click की तरह tap के अर्थ को स्पष्ट बनाना है
    • tap हमेशा cursor place करता है
    • उंगली के स्क्रीन को छूते ही हर interaction को drag start माना जाता है, और tap को बहुत छोटे drag के रूप में संभाला जाता है
    • handle के बगल में tap करके जल्दी छोड़ दें तो cursor नई जगह चला जाता है, और धीरे move करें तो cursor drag होता है
    • text handle हमेशा दिखाई देते रहते हैं
    • handle को text न ढकने देने के लिए उन्हें semi-transparent बनाया गया और Android वाली 4-second disappearance समस्या हटाई गई
  • integrated magnifier

    • magnifier को text cursor के ऊपर integrate किया गया ताकि उपयोगकर्ता cursor को context के भीतर देख सके
    • Eloquent drag-केंद्रित है, इसलिए magnifier cursor placement को अधिक सटीक बनाता है
    • जगह बचाने और टेक्स्ट के भीतर स्थिति बनाए रखने के लिए fisheye lens technique का उपयोग किया गया
    • इस्तेमाल के दौरान यह प्रवृत्ति दिखी कि tap की बजाय cursor को हमेशा drag करना बेहतर होता है
    • magnifier की वजह से उपयोगकर्ता drag के जरिए target position तक तेज़ी से पहुँचने वाला नया व्यवहार जल्दी सीख पाए
  • Drag Press से text selection

    • मौजूदा mobile editing की ambiguity इसलिए पैदा होती है क्योंकि एक single tap gesture पर बहुत सारे functions लाद दिए गए हैं
    • Eloquent drag के दौरान अधिक ज़ोर से दबाने वाले Drag Press gesture से text selection शुरू करता है
    • उस समय उपलब्ध hardware sensor, यानी फोन के barometric pressure sensor का उपयोग दबाव पहचानने के लिए किया गया
      • long moving average को baseline value के रूप में रखा गया
      • short moving average, long average से ऊपर जाए तो drag-press event trigger किया गया
      • sensor values में काफी variation होने पर भी यह व्यवहार बहुत robust रहा
    • Apple के बंद हो चुके 3D Touch hardware जैसी अधिक उन्नत व्यवस्था बेहतर समाधान हो सकती है
    • Drag Press नीचे के पूरे शब्द को select करता है, इसलिए दबाव के क्षण में होने वाला छोटा-सा हिलना भी बड़े targeting error में नहीं बदलता
  • बेहतर menu

    • Eloquent copy/paste जैसे clipboard actions को expert users के लिए और तेज़ बनाना चाहता है
    • Android और iOS के मौजूदा text menus अधिकतर hierarchical हैं, इसलिए menu को flat बनाने की कोशिश की गई
    • user testing में सभी प्रतिभागियों ने इस menu को आसानी से खोजा और इस्तेमाल करना पसंद किया
    • Drag Press से selection शुरू करने के बाद दूसरे Drag Press से menu खोला जाता है, जिससे targeting, selection और menu invocation एक ही flow में हो जाते हैं
    • expert users के लिए तेज़ flick gesture से menu items execute किए जा सकते हैं
    • Eloquent का T-Menu cut और paste के लिए swipe gestures का उपयोग करता है और बिना hierarchy के स्क्रीन से बाहर फिसल जाता है
  • game जैसी animations

    • Eloquent ने उपयोगकर्ताओं को state changes सीखने और समझने में मदद करने के लिए छोटे visual animations जोड़े
    • cursor स्थानों के बीच “scoot” करता है, और पहुँचने पर handle “wobble” करता है
    • यह movement इस धारणा को मजबूत करती है कि cursor हमेशा मौजूद है और उसे कभी भी drag किया जा सकता है
    • tap करने पर cursor “dimple” होता है और थोड़ी देर के लिए magnifier बुलाता है, जिससे उपयोगकर्ता simple tap से आगे बढ़कर drag आजमाने के लिए प्रेरित होता है
    • Force Press किसी शब्द पर होने पर highlight “inflate” होता है
    • swipe menu gesture selection area को swipe दिशा में animate करता है
      • ऊपर swipe करके cut करने पर selection area ऊपर की ओर गायब हो जाता है
      • नीचे swipe करके paste करने पर नया selection area नीचे गिरता है
  • मौजूदा उपयोगकर्ताओं के लिए compatibility

    • Eloquent मौजूदा behaviors से जुड़ाव बनाए रखने के लिए वर्तमान gestures को भी जहाँ तक संभव हो, बनाए रखना चाहता है
    • tap और drag को हमेशा cursor drag मान लेने पर बड़े vertical scrolling text fields में समस्या आती है
    • drag शुरू होने पर शुरुआती कुछ pixels अगर vertical दिशा में हों, तो उसे सामान्य vertical scrolling माना जाता है
    • इसके अलावा बाकी drags को cursor placement और cursor drag के रूप में संभाला जाता है

इसे shipping करना कठिन क्यों है

  • Eloquent जैसे बदलावों को shipping करना कठिन है
  • बहुत से लोग text editing को पहले से ही “solved” समस्या मान लेते हैं, इसलिए उसे सुधारने की प्रेरणा कम होती है
  • उपयोगकर्ता 10 साल से अधिक समय से मौजूदा error-prone तरीके के अनुकूल हो चुके हैं, इसलिए अब बदलाव की माँग करना आसान नहीं है
  • Android और iOS की प्रतिस्पर्धा में text editing improvement को ऐसा चमकदार feature नहीं माना जाता जो Net Promoter Score को हिला दे
  • text editing जैसे बुनियादी बदलाव उपयोगकर्ताओं को फोन अधिक आराम से इस्तेमाल करने में मदद कर सकते हैं, लेकिन उसका असर धीरे-धीरे दिखता है और कई वर्षों की लगातार मेहनत माँगता है
  • बाधा तकनीकी समस्या से अधिक political problem के करीब है
  • मौजूदा रुझान जारी रहा, तो संभव है कि आने वाले कम से कम 20 वर्षों तक मोबाइल टेक्स्ट को लगभग इसी तरीके से edit किया जाता रहे

1 टिप्पणियां

 
GN⁺ 2023-09-25
Hacker News की रायें
  • मोबाइल पर छोटे टेक्स्ट लिखने में ज्यादा समय लगता है और गलतियां भी ज्यादा होती हैं। इसलिए मोबाइल पर टाइप करने की स्थिति से सक्रिय रूप से बचता हूं, और लैपटॉप खुला हो तो WhatsApp या Signal भी वहीं इस्तेमाल करता हूं
    मोबाइल कीबोर्ड इस्तेमाल करना पड़े तो typo, capital letter छोड़ देना, और अनावश्यक शब्द छोड़ देना बस स्वीकार करना पड़ता है। फोन ज्यादातर लंबे टेक्स्ट input करने वाला device नहीं, बल्कि news/media consume करने और photo लेने वाली चीज के ज्यादा करीब है
    iPad पर भी keyboard cover लोकप्रिय हैं, इससे touch keyboard की सीमाएं दिखती हैं। iPad में कम से कम keyboard और stylus तो हैं, लेकिन iPhone में ऐसे विकल्प लगभग नहीं हैं, और पुराने Nokia या BlackBerry जैसे अच्छे hardware keyboard वाले फोन याद आते हैं

    • आजकल फोन पर swipe input की वजह से iPad की तुलना में iPhone या Android पर टाइप करना काफी आसान है। यह किसी कुशल व्यक्ति के physical keyboard पर टाइप करने जितना efficient नहीं है, लेकिन कई बार इतना तेज होता है कि laptop निकालने की जरूरत नहीं पड़ती
      iPad आखिरकार खराब QWERTY touch keyboard पर एक-एक अक्षर दबाने को मजबूर करता है, इसलिए और खराब है। swipe के लिए optimized keyboard layout हो तो अच्छा होगा, और पहले एक article भी था जिसमें vowels को जितना हो सके दूर रखने वाला layout calculate किया गया था: https://sangaline.com/post/finding-an-optimal-keyboard-layou...
    • iPhone के हिसाब से voice recognition input इतना खराब क्यों है, यह समझना मुश्किल है। बोलकर text डालना अपने आप में काफी अच्छा काम करता है, लेकिन गलत शब्द को तुरंत delete या correct नहीं कर पाते, इसलिए अंत में हाथ से tap करके edit करना पड़ता है
      driving के दौरान message डालना हो तो जब तक पहली कोशिश में dictation perfectly न हो, हाथ इस्तेमाल करना पड़ता है; यानी लगभग अच्छी स्थिति तक पहुंचकर भी editing UI की वजह से सब बिगड़ जाता है
    • T9 input और physical keys वाले दिन याद आते हैं। उंगलियों से keys महसूस करते हुए चलते-चलते भी एक हाथ से message टाइप कर सकते थे, और predictive text की तुलना में result ज्यादा predictable था
      आजकल सचमुच बचना नामुमकिन हो तभी touchscreen पर टाइप करता हूं, और laptop न इस्तेमाल कर पाने पर भी अगर बैठ सकता हूं तो phone को stand पर रखकर छोटा foldable Bluetooth keyboard इस्तेमाल करता हूं
    • physical keyboard वाले phone इस्तेमाल कर पाने का दौर कहीं बेहतर था। Android का swipe input हाल ही में जाकर physical keyboard input speed के करीब पहुंचा है, लेकिन accuracy अभी भी बराबरी नहीं कर पाती
      पूरी smartphone industry के iPhone-जैसी हो जाने से हमने वे विकल्प खो दिए
    • यह थोड़ी ironic बात है। असल में iPhone keynote में Steve Jobs ने physical keyboard को खराब user experience बताया था, और iPhone की खूबी यह थी कि पूरा device मौजूदा app के हिसाब से बदल सकता था
      फिर भी, मैं इस बात से सहमत हूं कि iOS typing सुधर सकती है: https://youtu.be/x7qPAY9JqE4?si=9_jnM2Ys8JiTXGqC
  • यह समस्या साफ तौर पर है, लेकिन लेखक ने समाधान ढूंढ लिया है या नहीं, इस पर भरोसा नहीं होता। सिर्फ description देखकर तो यह अभी भी मुश्किल लगता है
    touchscreen productivity के लिए interface के तौर पर मूल रूप से खराब है। mouse बिना click किए point करना, left click, right click लगभग pixel-level precision के साथ देता है, और keyboard जोड़ दें तो options कहीं ज्यादा बढ़ जाते हैं
    smartphone ऐसा computer लगता है जिसमें एक-button वाला mouse और असामान्य रूप से बड़ा व अनियमित आकार का cursor लगा हो। software को click से पहले cursor की position नहीं पता होती, और keyboard छोटे screen का 35% ढकने वाले overlay के रूप में ही दिखता है
    यह software नहीं, hardware problem है

    • उंगली की position से 1cm ऊपर असली pointer वाला fixed-offset cursor जैसा तरीका कैसा रहेगा, ऐसा लगता है। उंगली की movement से position control हो, और दबाकर रखने की duration से दूसरे modes खुलें
      TeamViewer smartphone पर Windows desktop remote session को जिस तरह संभालता है, वैसे implementations हैं जहां touchscreen को असल में touchpad की तरह इस्तेमाल किया जाता है। Android में भी toggle करने योग्य mode के रूप में हो तो अच्छा होगा, और arthritis वाली उंगलियों से text select करना सचमुच दर्दनाक है
    • smartphone को एक-button वाले mouse कहना पूरी तरह सही तुलना नहीं है। touchscreen कई उंगलियां और कई gestures detect कर सकता है
      समस्या यह है कि zoom के लिए pinch और two-finger scroll के अलावा उसकी potential का लगभग इस्तेमाल ही नहीं होता
    • 3D Touch ने touch interface की कुछ समस्याएं हल की थीं, लेकिन अफसोस है कि Apple ने उसे हटा दिया। अजीब बात है कि Magic Trackpad में यह अभी भी मौजूद है
    • शुरुआती Android phones में से कुछ में screen के नीचे optical trackpad होता था, कुछ खराब थे लेकिन अच्छे वाले touchscreen की तुलना में cursor को कहीं ज्यादा precision से move कर सकते थे
      text editing के लिए यह सचमुच अच्छा feature था, इसलिए काश यह बचा रहता
    • touchscreen keyboard नहीं बन सकता, लेकिन इसका मतलब यह नहीं कि यह अभी से बेहतर नहीं हो सकता
  • टच डिवाइस पर लंबे लेखों को नेविगेट और एडिट करते समय कभी-कभी लगता है कि Vim-शैली की modal editing अच्छा तरीका हो सकती है
    keyboard-माउस वाला तरीका ज्यों का त्यों टच डिवाइस पर ले आना एक छूटा हुआ मौका लगता है। keyboard layout तक में दो अंगूठों से स्क्रीन दबाने के लिए कोई खास फायदा नहीं है
    character-based inference पर काफी निर्भर रहते हुए interface को एक हाथ या एक उंगली के input के हिसाब से बदलना भी दिलचस्प है। Dasher जैसा approach इसका उदाहरण है: https://www.inference.org.uk/dasher/dashersummary.html
    https://en.m.wikipedia.org/wiki/Dasher_(software)

    • iPhone पर spacebar को लंबे समय तक दबाने से पूरा keyboard एक तरह का trackpad बन जाता है, जिससे cursor हिलाया जा सकता है
      अगर यह ऐसा mode है जिसमें key labels गायब हो जाते हैं, तो उसमें mouse button की तरह काम करने वाली functionality जोड़कर text selection या किसी खास जगह paste को support करना भी बहुत मुश्किल नहीं लगता। अभी selection का काम बहुत frustrating है
    • foldable phone पर Termux का nvim इस्तेमाल कर रहा हूँ। special symbols तक जल्दी पहुँचने के लिए input method के तौर पर Unexpected Keyboard इस्तेमाल करता हूँ, और यह काफी अच्छा चलता है
      चलते-फिरते programming करने लायक तो पर्याप्त है
    • Gboard में पहले से number keypad, emoji, special characters जैसी modal pages हैं
      cursor editing के लिए एक और page जोड़कर arrow keys, Ctrl+arrow keys, Home/End, Page Up/Down, selection toggle, Delete, right-click menu देना natural लगेगा। यह desktop keyboard के बाकी हिस्से को phone keyboard में लाने जितना ही है, इसलिए innovation तो नहीं कहा जाएगा
    • Blink Shell, Panic Prompt, या उस समय लोकप्रिय कोई भी iPhone SSH client install करके desktop पर SSH से connect करें, तो यह तरीका कैसे काम करेगा इसका preview मिल सकता है
      Bluetooth keyboard के साथ इस्तेमाल करें तो ठीक है, बस screen थोड़ी छोटी है। छोटे कामों के लिए पर्याप्त है, लेकिन लंबी sessions में आँखों की सेहत की चिंता जरूर होती है
    • modal editing औसत smartphone user के लिए cognitive load बहुत ज्यादा बढ़ा देती है
  • यह समस्या कम-से-कम मेरे लिए तो बिल्कुल भी अदृश्य नहीं है। कुछ महीने पहले भी मैंने text editing को इस उदाहरण के तौर पर बताया था कि iOS अभी work use के लिए तैयार नहीं है
    text generation और editing, content consumption नहीं बल्कि work use का core हैं; Apple को या तो समस्या मानकर हल करनी चाहिए, या मान लेना चाहिए कि वह इसे हल नहीं कर सकता और ऐसी narrative आगे नहीं बढ़ानी चाहिए
    यह भी प्रतीकात्मक है कि Apple ने 3D Touch को बिना किसी ठोस use case के launch किया, फिर कई साल बाद भी वह use case नहीं मिला और उसे बंद कर दिया
    Google का Tablet Tuesdays भी दिलचस्प है, लेकिन हफ्ते में सिर्फ एक दिन tablet इस्तेमाल करें तो समस्या को बस किसी तरह सहकर आगे बढ़ा जा सकता है। बेहतर होता कि पूरी team सिर्फ tablet इस्तेमाल करने वाली Tablet Teams होती, तब समस्या छिपी नहीं रहती
    Eloquent इस बात का proof-of-existence लगता है कि बेहतर तरीका संभव है। multitouch gestures से copy-paste या selection की समस्या हल करने वाले experiments भी करने लायक हैं

    • क्या यही वह comment था जिसे खोज रहे थे? <https://news.ycombinator.com/item?id=36536203>
    • कर्मचारी Gmail या Google Docs वास्तव में इस्तेमाल करते हैं, और वे productivity के लिए बेहद critical हैं
      इसके उलट Google+ जैसे social products कुछ कर्मचारियों ने इस्तेमाल किए हों, तब भी संख्या ज्यादा नहीं थी, और उन्हें external users जैसी features की जरूरत भी नहीं थी। internal complaints हों भी तो वे काम के core में नहीं थे, इसलिए वैसा feedback loop मिलना मुश्किल है
    • title में “अदृश्य” शायद इस बात पर wordplay हो सकता है कि problem situation में cursor और menu छिप जाते हैं या उन्हें देखना मुश्किल होता है
  • mobile पर editing करते समय सबसे बड़ी समस्या उन selection ranges को बदलना है जो एक screen में पूरी नहीं आतीं, जैसे लंबा URL या लंबा paragraph
    जैसे ही selection handles को हिलाते हुए vertical scroll, और उससे भी खराब horizontal scroll करना पड़ता है, user experience पूरी तरह टूट जाता है

    • iPhone का नहीं पता, लेकिन Android पर दो शब्दों के बीच text paste करना practically impossible है। cursor position पर paste करने के बजाय selected text को pasted text से replace करने जैसा व्यवहार होता है
      यही सबसे बड़ी समस्या है, और यह भी समझना मुश्किल है कि mobile keyboard में copy/paste buttons क्यों नहीं हैं
    • iOS पर spacebar को लंबे समय तक दबाकर उसे trackpad की तरह इस्तेमाल किया जा सकता है। कहीं और tap करके selection भी किया जा सकता है
      awkward है, लेकिन काम करता है
    • URL editing सचमुच painful है। काश URL को multi-line editor में handle किया जा सके
  • पुराने N9 और Jolla phones में text के किसी भी हिस्से पर tap करके cursor को उसी position पर रखा जा सकता था
    iOS में, पहली tap से cursor activate करने के समय को छोड़कर, अगर किसी शब्द के बीच में बिल्कुल सही जगह दबाएँ तब भी cursor हमेशा शब्द की शुरुआत या अंत से चिपक जाता है
    छोटी screen और बड़ी उंगली के बावजूद मनचाही character position काफी अच्छी तरह target की जा सकती है, इसलिए बस ऐसा करने देना चाहिए

    • spacebar को लंबे समय तक दबाने से Android पर भी cursor को जहाँ चाहें वहाँ हिलाया जा सकता है। हैरानी है कि बहुत लोग इस feature को नहीं जानते
    • N9 के text selection में अच्छी बात यह थी कि cursor drag करते समय हर character पार करने पर haptic tick-tick feedback मिलता था
      यह पूरी तरह समझाना मुश्किल है कि वह इतना मददगार क्यों था, लेकिन cursor को मनचाही जगह रखना बहुत आसान हो जाता था
    • पहले cursor को बहुत high accuracy से move किया जा सकता था, और अच्छा होता अगर आज भी वैसा option बचा रहता
    • iOS के सामान्य input fields में cursor position सेट करने के तीन तरीके हैं: long tap, spacebar long tap, और iPad virtual keyboard पर दो उंगलियों को साथ-साथ move करना
      iOS keyboard में कई frustrations रहे हैं, लेकिन असल में यह काफी ठीक है। असली समस्या अक्सर पुराने CodeMirror जैसे third-party JavaScript tools पैदा करते हैं
  • BlackBerry पर बिना देखे भी 55 शब्द प्रति मिनट टाइप कर लेता था। स्क्रीन कीबोर्ड को लगातार देखना और सुधारना पड़ता है, इसलिए ध्यान बहुत भटकता है और टाइपिंग स्पीड खत्म हो जाती है
    BlackBerry पर गलती बस एक गलत अक्षर होती थी, लेकिन स्वाइप और autocorrect वाले स्क्रीन कीबोर्ड में 1–2 अजीब शब्द घुस सकते हैं। बारिश के दिन स्क्रीन कीबोर्ड ठीक से काम नहीं करता
    पुराने Android डिवाइसों में built-in कीबोर्ड इतना भारी था कि कभी-कभी प्रति सेकंड 1 अक्षर तक धीमा करना पड़ता था, और स्वाइप व टैप के बीच बदलाव भी स्मूद नहीं था। spacebar ड्रैग करके cursor ले जाने की कोशिश में पहली ही कोशिश में कोई शब्द insert हो जाना भी चिढ़ पैदा करता है

    • टाइपिंग अलग समस्या है। अगर मोबाइल डिवाइस पर physical keyboard चाहिए, तो वास्तव में इस्तेमाल किया जा सकता है, लेकिन फिर भी editing की समस्या हल नहीं होती
      BlackBerry पर editing भी सिर्फ cursor keys इस्तेमाल करने जैसी थी, इसलिए इस लेख में बताए गए touch controls से भी ज्यादा भद्दी थी। मुख्य बात सिर्फ typo ठीक करना नहीं, बल्कि मौजूदा टेक्स्ट में बड़े बदलाव करना और डॉक्युमेंट को तराशना संभव बनाने वाले मोबाइल डिवाइस बनाना है
    • BlackBerry Bold 9000 मैंने थोड़े समय के लिए इस्तेमाल किया, लेकिन कोई भी डिवाइस उसकी टाइपिंग स्पीड की बराबरी नहीं कर पाया
      Droid 4 के slide keyboard पर थोड़ा धीमा हुआ, और touchscreen पर आने के बाद बेहद धीमा हो गया। BlackBerry पर मैं लगभग laptop जैसी स्पीड से email संभाल सकता था, लेकिन अब swipe और predictive input की लंबे समय तक practice करने के बाद भी मध्यम लंबाई का email सोचने की गति के मुकाबले दर्दनाक लगता है
      फोन पर podcast की बातें लिखने की कोशिश करूँ तो बार-बार rewind करना और 0.7x speed पर घटाना पड़ता है, लेकिन laptop पर तेज बोलचाल को भी पहले से टाइप कर सकता हूँ। BlackBerry Bold होता तो live presentation भी real time में लिख सकता था, और सोचने की गति से input कर सकता था
    • Autocorrect को जरूरत से ज्यादा महत्व दिया जाता है और उल्टा typing process को और चिढ़ाने वाला बना देता है। iPhone पर monkeytype.com test किया तो autocorrect के बिना भी 80 wpm पर 0 errors आए
    • इस साल की शुरुआत में physical keyboard वाले Unihertz Titan Pocket को आजमाया, और उसने दूसरे smartphones से कहीं बेहतर typing experience दिया
    • Autocorrect बंद कर दें तो इसे पुराने जैसा व्यवहार करने लायक बनाया जा सकता है। अजीब शब्द घुसने वाली समस्या ऐसे हल हो सकती है, और बाकी बस यह रह जाता है कि keys को उंगलियों से महसूस नहीं कर पाते
  • touchpad और physical keyboard वाले MicroPC पर edit करने और फोन पर edit करने में जमीन-आसमान का फर्क है
    capacitive touch फोन पर शायद ज्यादा तेज input किया जा सकता है या UI navigate किया जा सकता है, लेकिन cursor aim करने और typing की निराशा 10 साल से ज्यादा smartphone इस्तेमाल करने के बाद भी अब तक बहुत ज्यादा है
    यह भी समझ आता है कि लोग इसे समस्या क्यों नहीं समझ पाते। समय के साथ हमने मोबाइल पर टेक्स्ट edit न करने की आदत सीख ली है। आधुनिक mobile operating systems में काफी शक्तिशाली office suites भी हैं, लेकिन अधिकतर लोग बस messages और notes तक सीमित रहते हैं और cursor खींचने की नौबत कम ही आती है
    PinePhone के Squeekboard में spacebar drag से cursor ले जाने की सुविधा और swipe input काफी कमी महसूस कराते हैं, लेकिन Phosh की text editing Android या iOS से बहुत कम polished होने पर भी असल मुश्किल बहुत ज्यादा नहीं बढ़ती—यह अपने-आप में बहुत कुछ कहता है

    • PinePhone हाथ में लेते ही आज ज्यादातर devices जिस interaction model में बंद हैं, उससे बहुत निराशा होती है। क्योंकि PinePhone जैसे open platform ने दिखा दिया कि alternatives आसानी से implement किए जा सकते हैं
      सिर्फ text editing की बात करें तो अगर numbers, जरूरी symbols और modifier keys basic layer में हों, तो Vim और Emacs भी touch keyboard पर आश्चर्यजनक रूप से usable हैं
      precise pointing और बड़ी उंगलियों की समस्या touchscreen को touchpad की तरह relative input के रूप में इस्तेमाल करके हल की जा सकती है। यह evdev और uinput से सीधे जुड़ने वाले एक साधारण user-space program से संभव है, और desktop software चलाने को सिर्फ खिलवाड़ से ज्यादा उपयोगी बना देता है: https://gitlab.com/CalcProgrammer1/TouchpadEmulator
      swipe input के लिए wvkbd का experimental support काफी अच्छा काम करता है। यह खासकर लंबे शब्दों या घटाए हुए dictionary के लिए ठीक बैठता है, और zsh completions को file के रूप में लिखकर इस्तेमाल करने जैसी संभावनाएँ भी हैं: https://git.sr.ht/~proycon/wvkbd
      sxmo_inputhandler.sh की latency समझना मुश्किल है। साधारण operating system shell gestures को लंबी shell script से process करना, और ऐसे platform पर जहाँ grep pipeline एक भी हो तो delay साफ बढ़ जाता है, बहुत inefficient लगता है
  • यह laptop से keyboard हटाकर operating system को कमजोर करने और फिर उसे “mobile” कहने जैसा है
    फिर जब कोई कहता है कि text editing अब practical नहीं रही, तो जवाब मिलता है, “desktop पर वापस जाने की बात नहीं है, mobile को आगे बढ़ाने की बात है”
    समझ नहीं आता कि जानबूझकर कमजोर किए गए computing experience को अनिवार्य भविष्य की तरह विशेष महत्व क्यों दिया जाए। mobile जिस लगभग हर trend को आगे बढ़ा रहा है वह खराब है

    • लेखक का Google में काम करना एक संकेत हो सकता है। Google जैसी advertising company चाहती है कि desktop और laptop की तुलना में फोन और tablet हावी हों
      क्योंकि वे devices ज्यादा खराब, ज्यादा locked-down और consumption-focused computing experience देते हैं। लगता है ऐसी सोच कर्मचारियों में भी भरी जाती है
    • linked लेख में भी कहा गया है कि mobile devices मूल रूप से consumption के लिए design किए गए थे, और आगे भी consumption devices ही रहेंगे
      जैसे television laptop का substitute नहीं है
    • mobile को आगे बढ़ाने का मतलब mobile को privileged बनाना क्यों है, यह समझ नहीं आता
      ऐसा करने से desktop experience कैसे नुकसान में पड़ता है, यह भी स्पष्ट नहीं है
    • बिस्तर पर लेटे हुए या sofa पर बैठकर फोन इस्तेमाल करना, कुर्सी पर बैठकर bulky laptop या PC इस्तेमाल करने से कहीं ज्यादा आरामदेह है
      Termux में इतना code लिख चुका हूँ कि अब laptop सिर्फ OpenStreetMap edit करते समय इस्तेमाल करता हूँ। Termux के अंदर ही नया Android app build करने का तरीका ढूँढ रहा हूँ
  • मोबाइल पर कुछ भी ठीक नहीं है। सभी को smartphone पसंद हैं, लेकिन portability को छोड़ दें तो वे हर मामले में खराब computer हैं
    अगर सच में कुछ करना हो, तो computer इस्तेमाल करना चाहिए; smartphone वह device है जिसे सिर्फ तब इस्तेमाल किया जाता है जब असली computer इस्तेमाल नहीं कर सकते

    • चलते-फिरते कुछ न कुछ करना बहुत अक्सर पड़ता है, इसलिए smartphone वास्तव में अक्सर इस्तेमाल होने ही हैं
      इसलिए ऐसे लेख महत्वपूर्ण हैं। हार मानने के बजाय इसे बेहतर करना चाहिए, और यह मानने की कोई वजह नहीं कि phone पर text editing अपने अंतिम रूप तक पहुँच चुकी है
    • बहुत पहले Jenson की The Simplicity Shift पढ़ना मेरे career के अहम turning points में से एक था
      यह iPhone से पहले लिखा गया लेख था, जिसमें mobile user experience को घटाकर केवल सबसे जरूरी चीजों तक सीमित करने की कठोर जरूरत पर बात की गई थी। Apple Watch app बनाते समय ये बातें फिर याद आईं: https://jenson.org/The-Simplicity-Shift.pdf
    • सबसे निचले स्तर के Android को छोड़ दें, तो आजकल अच्छे smartphone की कीमत decent computer के करीब होती है
      इतने पैसे लेने वाला device अगर उपयोगिता से ज्यादा tracking और advertising वाली चालों को आगे रखकर बेहद खराब user experience दे, तो इसे स्वीकार करना मुश्किल है
    • अगर slide-out keyboard अब भी मौजूद होते, तो हालत इतनी खराब नहीं होती। लेकिन दुनिया में सबसे महत्वपूर्ण चीज और पतला होना बन गई, इसलिए उन्हें हटा दिया गया
    • हाल ही में PineTab2 खरीदा, और भले ही यह काफी rough है, keyboard case के साथ लिखने के लिए यह कहीं बेहतर है
      desktop जितना नहीं, लेकिन ज्यादातर mobile devices से बहुत बेहतर है, और WhatsApp Web या Signal desktop app भी एक-दो वाक्यों से ज्यादा लिखना हो तो desktop पर ही इस्तेमाल करता हूँ
      अगर phone पर थोड़ा भी लंबा लिखना पड़े, तो keyboard खरीदना बेहतर है। छोटा Bluetooth keyboard भी काफी बेहतर होता है, और पुराने BlackBerry या उसी तरह के Android keyboard phone भी आकर्षक लगते हैं