- BoopSnoop एक बेहद सरल messaging app है, जिसे एक परिवार के 4 लोगों के इस्तेमाल के लिए बनाया गया था। जनवरी 2020 के पहले हफ्ते में लॉन्च होने के बाद इसे तीन time zones में मौजूद चार लोगों ने डाउनलोड किया, और तब से इसने 4 daily active users और 0 churn rate बनाए रखा
- Tapstack बंद होने के बाद Instagram या WhatsApp group के बजाय परिवार ने अपना ऐप बनाया, और photo/video messages को full screen में दिखाकर फिर गायब कर देने वाला ढांचा जारी रखा
- यह सिर्फ camera screen, pending messages badge, AWS S3, AWS Lambda और TestFlight distribution से बना था। login और contact management की जरूरत न होने के कारण, situated software के रूप में यह और सरल हो गया
- इसे बनाने में करीब 1 हफ्ता लगा, जिसमें से लगभग आधा समय Xcode code signing और provisioning समस्याओं में गया, लेकिन open source components और sample code ने implementation संभव बनाया
- भले ही software professional और scalable न हो, करीबियों के लिए बनाया गया app ऐसा घर जैसा software बन सकता है जो अचानक redesign, ads या pivot के बिना सिर्फ तब बदलता है जब उसके users बदलना चाहें
Tapstack से बचा परिवार का channel
- Tapstack एक ऐसा app था जो phone camera की live screen के नीचे किसी व्यक्ति या group के चेहरों की grid दिखाता था
- tap करने पर photo खींचता था, और long press करने पर video record करता था
- उंगली हटाते ही message भेज दिया जाता था, edit या review का कोई step नहीं था
- मिले हुए messages “stack” में जमा होते थे और user के देखकर आगे बढ़ाने के बाद गायब हो जाते थे
- परिवार की Tapstack grid में मां, पिता, छोटी बहन, और इन तीनों को मिलाकर बने group तक कुल चार tiles थे
- इस app की खूबी practical संपर्क या schedule coordination से ज्यादा ambient presence में थी
- threads और history न होने से reply की उम्मीद का बोझ कम था
- coffee के साथ ली गई selfie, जमी हुई pond की photo, भांजे-भतीजों के playful videos—ये सब “मैं तुम्हारे बारे में सोच रहा/रही हूं” वाली भावना पहुंचाने के तरीके थे
- Tapstack ने बहुत बड़ा user base हासिल किया हो, ऐसा नहीं लगता था; उसमें ads भी नहीं थे और users से payment भी नहीं मांगा जाता था
- 2019 में updates रुकने के बाद उसने autumn में shutdown की घोषणा की, users को data export करने का तरीका दिया, और फिर बंद हो गया
परिवार के लिए replacement app BoopSnoop
- Tapstack बंद होने के बाद परिवार को विकल्प चाहिए था, लेकिन Instagram या WhatsApp groups में गर्मजोशी भरे family channel को दूसरी चीजों से घिरा हुआ महसूस होता था
- BoopSnoop परिवार के लिए ही बनाया गया जादुई खिड़की जैसा app है
- photos और videos capture करके परिवार तक पहुंचाता है
- messages queue में रहते हैं और देखे जाने के बाद गायब हो जाते हैं
- viewing screen हमेशा full screen होती है, और comments या sharing को encourage करने वाला कोई element नहीं होता
- interface लगभग नहीं के बराबर है
- एक camera button है
- corner में शांत green badge pending messages की संख्या दिखाता है
- यह जनवरी 2020 के पहले हफ्ते में launch हुआ, और तीन time zones में मौजूद चार लोगों ने इसे download किया
- इसके बाद इसने 4 daily active users और 0 churn rate बनाए रखा, और creator की सभी उम्मीदों से आगे निकलकर सफल रहा
simplicity को संभव बनाने वाला implementation
- BoopSnoop को Tapstack से भी ज्यादा सरल design किया गया
- login system की जरूरत नहीं
- contacts बनाने/manage करने के interface की जरूरत नहीं
- यह पहले से ठीक-ठीक जानता है कि इसे कौन इस्तेमाल कर रहा है
- Clay Shirky के situated software concept की तरह, यह personalization की जरूरत वाले software से ज्यादा शुरुआत से ही personal software के करीब है
- core है photo/video input के लिए camera screen
- tap से photo लेना और long press से video record करना—यानी familiar gestures का इस्तेमाल
- इस हिस्से के लिए open source component SwiftyCam इस्तेमाल किया गया
- इस component के बिना project मुश्किल होता
- backend minimum setup वाला है
- AWS S3 bucket photos और videos store करता है
- कुछ AWS Lambda functions नए message upload होने पर जरूरी processing करते हैं
- family distribution TestFlight से होता है, और app लगातार एक “cozy eternal beta” बना रहता है
असली development में आई अड़चनें
- बेहतर दुनिया में यह iOS के लिए modern और flexible HyperCard जैसे tool से एक दिन में बन सकने वाला app होता
- असल में इसमें करीब 1 हफ्ता लगा, और उसका लगभग आधा हिस्सा code signing और ID provisioning समस्याओं को संभालने में गया
- फिर भी open source components और sample code ने project को संभव बनाया, इसलिए मौजूदा दुनिया पूरी तरह टूटी हुई नहीं थी
- 21वीं सदी की programming, जब latest technology की boundaries के भीतर काम किया जाए, तो Lego की तरह जोड़कर बनाने का एहसास दे सकती है
- code publish करने से यह दूसरों के लिए guide बन सकता है, लेकिन app code में app-specific values और authentication keys बहुत मिली-जुली हैं
- यह app कोई framework या template नहीं, बल्कि अपने आप में app है
- यह स्वभाव उस भावना से अलग नहीं है जिसमें app बनाया गया था
“घर के खाने” जैसी programming
- creator खुद को professional software engineer से ज्यादा home cook जैसा programmer मानता है
- “coding सीखो” वाली बात अक्सर market value, economic leverage, career switch और resume से जुड़ जाती है
- “cooking सीखो” वाली बात सिर्फ chef बनने के लिए नहीं होती
- बेहतर खाने के लिए सीख सकते हैं
- कम खर्च में खाने के लिए सीख सकते हैं
- परंपरा आगे बढ़ाने के लिए सीख सकते हैं
- boredom में, या सिखाने वाले व्यक्ति के साथ समय बिताना चाहते हों इसलिए भी सीख सकते हैं
- cooking खरीद-फरोख्त के दायरे से आगे जाकर घर, जिज्ञासा, इतिहास, संस्कृति, देखभाल और प्यार से जुड़ती है
- 21वीं सदी में जिन बहुत से लोगों से हम प्यार करते हैं, वे हमेशा पास रखे जाने वाले pocket computers के अंदर इंतजार कर रहे होते हैं, इसलिए coding भी उसी तरह जुड़ सकती है
- जब programming professionalism और scalability की मांगों से बाहर निकलती है, तो यह एक अलग activity बन जाती है
- जैसे घर में खाना बनाना commercial kitchen में cooking से अलग है, वैसे ही परिवार के लिए app बनाना भी अलग तरह का reward देता है
- BoopSnoop तब तक नहीं बदलेगा जब तक परिवार न चाहे
- अचानक redesign, ads की बाढ़, या समझ न आने वाले user base के पीछे भागता pivot नहीं है
- अगर यह कभी गायब भी हुआ, तो वह परिवार का फैसला होगा
कई साल बाद भी इस्तेमाल होता रहा app
- फरवरी 2022 के update के मुताबिक, परिवार 2 साल बाद भी BoopSnoop को रोज इस्तेमाल कर रहा था और मां के अनुरोध पर एक feature जोड़ा गया
- फरवरी 2023 में भी यह रोज इस्तेमाल हो रहा था
- फरवरी 2024 में भी इसका इस्तेमाल जारी था, और TestFlight build 26 था
- फरवरी 2025 में app में सचमुच कुछ भी नहीं बदला गया था, और TestFlight build 30 था
1 टिप्पणियां
Hacker News की रायें
यह कविता जैसा है। पिछले 10 सालों से मैं निजी projects बनाता आ रहा हूँ, और पहले इस्तेमाल होने वाले email, calendar जैसे रोज़ाना के सारे apps को उनसे replace कर चुका हूँ
जब भी कोई उन्हें इस्तेमाल करते देखता है, पूछता है, “वाह, कमाल है, इसे download कैसे करें?” लेकिन जवाब हमेशा वही होता है: नहीं कर सकते
सिर्फ अपने लिए कुछ design करने में एक खूबसूरती है, और मुझे 100% यकीन है कि यह एक project मेरी मानसिक सेहत को बचाए रखता है
यह भविष्य के लिए उम्मीद और खुशी का ऐसा स्रोत है जो कोई company या salary नहीं दे सकती, और दुनिया के सामने मेरा अपना joker card है
खुद बनाए tool की बड़ी बात यह है कि पहले ही दिन से आप उस tool के दुनिया के सबसे बड़े expert बन जाते हैं। ऐसे कितने software होते हैं जिनके बारे में आप कह सकें कि आपको उसकी हर feature, shortcut और internal behavior 100% पता है
अगर यह काम या productivity का tool हो, तो इस “पूरी mastery” की वजह से आप बेहद efficient हो सकते हैं, और रोज़ इस्तेमाल करते हुए छोटे-छोटे बदलावों और optimizations का feedback देने पर tool आपके साथ-साथ बढ़ता है
मेरा notes app अब personal knowledge base, project management, to-do list, daily planning और diary तक संभालता है, और सिर्फ जरूरी features होने से हल्का और तेज़ है
कुल मिलाकर, मुझे लगता है कि हम सबको अपने tools बनाना और ज्यादा experiment करना चाहिए
यह साफ़ expectation set करने का तरीका है कि दूसरे लोग इस्तेमाल कर सकते हैं, सीख सकते हैं और उस पर build कर सकते हैं, लेकिन feedback और contributions नहीं चाहिए
हालांकि यह “मेरा अपना joker card” वाली आखिरी लाइन से टकरा भी सकता है
शायद apps को आपस में integrate किया गया है, जैसे texts से events बनाना और emails को Signal contacts को forward करना
मैं repetitive tasks को जल्दी से scripts से automate तो करता हूँ, लेकिन सभी scripts को एक में integrate नहीं किया। अलग-अलग रखने से maintenance का बोझ घटता है, इसलिए पता नहीं मैं उस रास्ते पर जाऊँगा या नहीं
अगर कोई उस पर annoying post लिखता है तो बस ignore कर सकते हैं, और मेरे अपने इस्तेमाल के तरीके पर कोई असर नहीं पड़ता
अगर critique, patches या bug reports नहीं चाहिए, तो GitHub जैसी जगह पर issues, pull requests या discussion space के बिना सिर्फ files भी publish की जा सकती हैं
देखने वाले impressed हुए और कुछ लोगों ने config भी मांगा, लेकिन लगता नहीं कि कोई सच में उसका अभ्यस्त हुआ
अच्छा लेख है। कुछ साल पहले पत्नी के लिए बनाया macOS app याद आ गया
वह पत्नी के पसंदीदा stores के opening hours track करता था, और menu bar icon दबाने पर दिखाता था कि आज हर store बंद होने में कितना समय बचा है
यह भी बताता था कि भीड़ वाला समय है या नहीं, ताकि उनके कम भीड़ में जाने के preference के हिसाब से हो
data storage के लिए text file इस्तेमाल करने वाला एक simple Qt app था, और जब नाम क्या रखें पूछा तो उन्होंने कहा “फूल के नाम जैसा Gladiolus”, तो वही रख दिया
programmer के तौर पर Gladiolus की उस एकमात्र user से ज्यादा आभारी customer मुझे कभी नहीं मिला
Xcode की code signing और identity provisioning से जूझते-जूझते, धूप जलाकर पत्थर फेंके तो Xcode के देवताओं ने pass होने की अनुमति दे दी—यह हिस्सा बहुत relatable लगा
modern software development में अपनी ही समस्या खुद हल करने में यह बड़ा friction है
computing principles समझकर components को तार्किक ढंग से जोड़कर कुछ नया बनाने वाली engineering सोच नहीं, बल्कि Google पर मिले मंत्रों को बार-बार जपते हुए सिर पटकना, और किसी पल अचानक काम हो जाना
उस कसौटी पर Apple और Microsoft लगभग बाहर हो जाते हैं
Apple ने Xcode में profiles, key signing वगैरह को “हाँ, आसान कर दो” button से manage कराने की सुविधा दी है, यह सुधार है, लेकिन settings random तरीके से भूल या टूट जाती हैं, इसलिए फिर से issue trace करना पड़ता है
उस service को चलाने के लिए किसी की permission नहीं चाहिए। router expose किए बिना Pi पर custom to-do app चला रहा हूँ, और यह बेहद मुक्त महसूस होता है
जब यह लेख पहले HN पर आया था तो इसका मुझ पर बड़ा असर पड़ा, और जो काम मैं पहले से अनजाने में कर रहा था उसे शब्दों में समझने में मदद मिली
कुछ साल पहले कई लोगों की तरह मैंने homelab शुरू किया, और धीरे-धीरे यह परिवार व 5–15 करीबी दोस्तों के लिए apps बनाने और self-host करने का hobby बन गया
movie night schedule करने जैसे छोटे apps और group chat integrations बहुत बनाए, जिसकी वजह से सब लोग कहीं ज्यादा बार बात करने और साथ घूमने लगे
दूर के ऐसे दोस्त groups जो एक-दूसरे को नहीं जानते थे, अब मेरे बिना ही सीधे मिलकर baby shower या weddings में जाने लगे हैं
अगर आपके पास ऐसा friend circle है, तो उनके लिए कुछ बनाकर देखना अच्छा रहेगा
मेरी girlfriend और उसकी बहन आपस का settlement ledger maintain करती रहती थीं, लेकिन किसने कब क्या देना है, यह match करने में हमेशा दिक्कत होती थी
इसलिए मैंने Google Docs में share होने वाली एक smart spreadsheet के रूप में “app” बनाया, जिसमें हर महीने जानकारी डालने पर यह calculate हो जाता था कि किसे कितना देना है
एक साल से ज्यादा भूल गया था, फिर पूछा कि अभी भी इस्तेमाल करती हो क्या, तो बोलीं “हमेशा करती हूँ, सच में life saver है”
असल में यह तो spreadsheet का एक सामान्य use ही था, लेकिन high-income, competent लोग भी simple settlement में मुश्किल झेल रहे थे
हर महीने नए tab में उन दोनों के साथ पाले गए dog की तस्वीर load करवाई, तो उन्हें खास तौर पर पसंद आया। 15 मिनट में बना मामूली tool कई सालों से प्यार पा रहा है
छोटे दायरे के लोगों के लिए छोटे tools बनाना अच्छा है
3 साल पहले परिवार और दोस्तों के लिए recipes share करने वाला simple app बनाया, और requested features जोड़ता गया तो करीब 2 साल बाद word of mouth फैलना शुरू हो गया
October में server costs संभालने के लिए नए users से fee लेनी पड़े, इतना बड़ा हो गया, और अब full-time काम करने के भविष्य पर विचार कर रहा हूँ
साथ ही लगता है कि ऐसे ऐप्स और प्रोफेशनल ऐप्स के बीच की खाई बढ़ती जा रही है
ऐप्स इस्तेमाल करना आसान हो गया है, लेकिन जनता के लिए “असली” ऐप बनाना और मुश्किल हो गया है
मैं 3 साल से ज़्यादा समय से https://opinionatedlaunch.com किताब लिख रहा हूँ और “mobile” वाला चैप्टर लगातार अपडेट करना पड़ता है। किसी शानदार नए framework की वजह से नहीं, बल्कि इसलिए कि Apple और Google लगातार requirements जोड़ते रहते हैं
GPS access पर ज्यादा सख्त पाबंदियाँ जैसी चीज़ें अच्छी हो सकती हैं, लेकिन अगर आप साथ नहीं चलते तो किसी दिन आपका ऐप platform से हटा दिया जाता है। इस मायने में कोई “complete” नहीं होता
1990 में Pascal में लिखा छोटा program शायद आज भी distribute किया जा सकता है, लेकिन mobile app में उसके बराबर का तरीका मुझे नहीं पता। बात run करने की नहीं, distribution की है
धीरे-धीरे मैं HTML की तरफ ज्यादा झुकने लगा हूँ
बदलने को कुछ नहीं था और वह ठीक वैसा ही काम करता था जैसा मैं चाहता था, लेकिन किसी point पर Google ने तय किया कि यह latest standards पूरा नहीं करता, इसलिए इसे store से हटाना होगा
शिकायत नहीं कर रहा;
adbसे अब भी install किया जा सकता है, लेकिन दूसरे लोग अब इसे नहीं ले सकते। शायद अब भी binary build कर पाऊँ या नहीं, कहना मुश्किल हैअभी इसे काम करते नहीं बना पाया हूँ, लेकिन idea यह है कि अगर UI को पर्याप्त simple रखा जाए तो वही code iStuff के लिए Objective C, Android और desktop के लिए C++, और web के लिए Javascript में compile किया जा सकता है
हर app platform-independent तरीके से arbitrary nimscript evaluate कर सकता है
मैं कौन-सा app बनाना चाहता था, यह बहुत पहले भूल चुका हूँ, लेकिन अगर फिर याद आ गया तो उम्मीद है कि उसे कहीं भी चलाने से कोई रोक नहीं पाएगा
हालांकि मुझे लगता है कि ज्यादातर software भी सच में “complete” होना मुश्किल है
अगर वह pop culture से पूरी तरह अलग category नहीं है, तो उसे feature-complete कहना मुश्किल है। GNU units या grep को शायद “complete” कहा जा सकता है, लेकिन ज्यादातर apps को आसपास की दुनिया में बदलाव के साथ बदलना पड़ता है
मेरे field के cutting-edge tools सभी scripts या interactive command line में इस्तेमाल होते हैं
ऐसे interface के लिए बनाना modern libraries से GUI बनाने की तुलना में कहीं ज्यादा तेज और आसान है, और users भी पर्याप्त मिल सकते हैं। सिर्फ conda users ही करीब 4 करोड़ हैं
इस लेख को देखकर iPhone पर sideloading को लेकर मेरी सोच बदल गई
पहले मैं इस पक्ष में था कि “दादी को hack होने से बचाने के लिए इसे lock रखना चाहिए”, लेकिन अब लगता है कि यह लोगों को ऐसे घर के खाने जैसे apps बनाने से रोकता है
साथ ही यह धारणा फैलाता है कि computers जादू हैं और सिर्फ जादूगरों को ही programming करनी चाहिए। जिन software developers से मैं मिला हूँ, उनमें से किसी ने ऐसा महसूस नहीं किया, और मैं भी ऐसा महसूस नहीं करता
उस process में “यहाँ से आगे dragons हैं” जैसी warnings भरी होनी चाहिए। मूल रूप से इसे Mac या आम Chromebook के ज्यादा करीब बनाना होगा
क्या Pixel phones अब भी rooting allow नहीं करते?
दादी के अपनी savings गंवाने की संभावना phone की तुलना में landline पर होने वाले traditional social-engineering scams से ज्यादा है
अगर Apple सच में security और spam की उतनी परवाह करता जितनी App Store या repair situation से पैसे कमाने की, तो उसने कम से कम iMessage spam पर तो कुछ किया होता
अगर दोस्तों और परिवार के लिए कोई ऐसा रास्ता होता जिसमें मुझे enterprise जैसा treat किया जाता, तो मैं उसे कई साल पहले इस्तेमाल करता, लेकिन TestFlight इतना easy है और target size भी इतना बड़ा है कि अब कोई barrier नहीं बचा
Mac खरीदने की cost barrier है, लेकिन पहले से ही Mac रखने वाली tax को देखते हुए यह इतनी ज्यादा नहीं लगती
computers का जादू जैसा लगना सही है, लेकिन distribution इसकी वजह नहीं है। अफसोस है कि लोग computers से और ज्यादा चीजें करना नहीं चाहते
पहले मेरे parents 386 पर बहुत basic database app जैसी चीज़ इस्तेमाल करते थे, लेकिन किसी point पर machines बड़ी और डरावनी हो गईं और लोग कम curious हो गए
यह उम्र की वजह से भी हो सकता है, लेकिन शायद इसलिए भी कि हमने ऐसी machines बनाई हैं जो नए code को अपनाने के लिए कम friendly हैं
सवाल सिर्फ यह है कि scam कौन करता है। अपराधी एक बार बड़ा नुकसान कर सकते हैं, लेकिन phone companies कहीं ज्यादा व्यापक मोर्चे पर काम करती हैं और उनकी cost भी ज्यादा होती है
लेख की explanation, app idea और execution का तरीका ताज़ा लगा
single-digit total addressable market (TAM) के लिए बनाने का विचार ज्यादातर चीज़ों से अच्छा contrast बनाता है
ऐसे apps learning projects से एक step ऊपर होते हैं और एक व्यक्ति या कुछ लोगों के लिए जबरदस्त utility रखते हैं। ऊपर से वे कुछ लोग आपकी जिंदगी के सबसे महत्वपूर्ण लोग होते हैं, इसलिए संतोष और भी ज्यादा होता है
परिवार के लिए घर पर खाना बनाने वाली analogy बिल्कुल perfect है
तब यह स्वाभाविक माना जाता था कि लोग पहले अपने लिए applications बनाते थे
शानदार आइडिया है। हाल में मैं “छोटे पैमाने के web” के बारे में बहुत सोच रहा हूँ, क्योंकि पृथ्वी-स्तर के web से मैं धीरे-धीरे थकता जा रहा हूँ
मैं Canada के एक छोटे कस्बे में रहता हूँ, इसलिए मेरी दिलचस्पी सिर्फ़ हमारे कस्बे में है, और अच्छा होगा अगर हमारे कस्बे के लिए बिल्कुल फिट बैठने वाली कोई कस्बा-स्तर की चीज़ हो
पैमाना छोटा होने की वजह से इसे घर की अलमारी में रखे उपकरणों पर चला सकते हैं, और अगर यह डाउन हो जाए तो पीछे खड़ी किसी विशाल कंपनी पर गुस्सा करने की बात नहीं होगी। वह बस मैं ही हूँ, और यहाँ ज़्यादातर लोग एक-दूसरे को जानते हैं या कम-से-कम उनके बारे में सुन चुके हैं
बिजली कटने की वजह से अगर यह कुछ देर के लिए डाउन भी हो जाए, तो वह भी स्थानीय ही होगा। खासकर बर्फ़ीले तूफ़ानों के समय बिजली अक्सर जाती है, और users के भी वही outage झेलने की संभावना अधिक होगी
यह बस आदर्शवाद है और असल में इसे न बनाने की संभावना ज़्यादा है, लेकिन यह भी लगता है कि अंततः ज़्यादातर लोग Facebook groups जैसी चीज़ें ही इस्तेमाल करते रहेंगे
मूल रूप से product नहीं है, सिर्फ़ market है, इसलिए तुम्हारे अलावा शायद इसका कोई खास मतलब न हो
बेशक अपनी खुजली खुद मिटाना, या सिर्फ़ बनाने के लिए बनाना भी पूरी तरह जायज़ है, और वह भी घर के खाने जैसा software ही है
25 डॉलर का hardware, कोई central server नहीं, amateur radio license की ज़रूरत नहीं, और phone-based control—ये बातें अच्छी लगती हैं
कभी न कभी basic functionality से आगे बढ़कर वाकई शानदार projects करना चाहता हूँ, लेकिन अभी नहीं पता कि क्या करना चाहिए
“धूप जलाई और पत्थर फेंके, तो Xcode के देवताओं ने passage की अनुमति दे दी” वाली line पर मैं ज़ोर से हँस पड़ा
मैंने भी उन देवताओं से अनगिनत लड़ाइयाँ लड़ी हैं, और वे राक्षस हैं
अगर वह line पसंद आई हो, तो उनकी पहली novel Mr Penumbra's 24 Hour Bookstore पढ़ने की जोरदार सलाह दूँगा
हम इस हालत को स्वीकार्य मानने तक कैसे पहुँच गए? MAGA(Microsoft Apple Google Amazon) अब software-sharing life का दम घोंट रहा है
कंपनी के internal उपयोग के लिए एक छोटा app है। यह बस एक independent Rails app है और internal business systems को नहीं छूता
फिर भी जब छोटे code को रखने की जगह चाहिए होती है, तो उसे वहीं डाल देते हैं। इसमें growth charts, internal data के लिए छोटा search engine, repetitive tasks के reminder scripts, blog के लिए RSS→Email script जैसे random integration tools हैं
अच्छा होगा अगर हर किसी के पास customer data से अलग एक “junk drawer” app हो
मज़ेदार चीज़ें बनाने की barrier कम हो तो मन खुला रहता है, और हर code को high-risk business work होना ज़रूरी नहीं