6 पॉइंट द्वारा GN⁺ 2025-09-10 | 3 टिप्पणियां | WhatsApp पर शेयर करें
  • यह ब्लॉग, जब ad blocker detect नहीं होता, तब विज़िटर को uBlock Origin जैसे विश्वसनीय ad blocker इंस्टॉल करने की सलाह देता है
  • यह recommendation message user experience में बाधा न डाले इस तरह डिज़ाइन किया गया है, और एक बार बंद करने पर दोबारा दिखाई नहीं देता
  • implementation में nativeads.js script और ad-संबंधित class names से भरे <div> का उपयोग किया गया है, ताकि अगर ad blocker element या network request को block कर दे, तो message दिखे ही नहीं
  • message को एक बार बंद करने पर cookie में याद रखा जाता है, CSS के ज़रिए स्क्रीन के एक किनारे पर छोटा-सा दिखता है, content को नहीं ढकता, और JavaScript disabled browser में नहीं दिखता
  • DNS blocking को detect करने का तरीका नहीं है, इसलिए लेखक ने इसके बजाय non-intrusive और आसानी से बंद किए जा सकने वाले notice के रूप में इसे implement किया है

ad blocker recommendation message की ज़रूरत

  • इंटरनेट ads यूज़र का समय बर्बाद करते हैं, और ad industry पूरे इंटरनेट environment पर नकारात्मक प्रभाव डालती है
  • साइट की आमदनी बहुत कम हो जाती है, इसलिए कई websites ads से पटी निम्न-गुणवत्ता वाली pages में बदल जाती हैं
  • अगर आप creators की मदद करना चाहते हैं, तो ads देखने के बजाय सीधा समर्थन (1 dollar भी प्रभावी है) कहीं अधिक प्रभावी है

ad blocker recommendation message का डिज़ाइन उद्देश्य

  • ज़्यादातर users ads को इंटरनेट अनुभव का हिस्सा मानते हैं, इसलिए लेखक साइट पर सीधे message दिखाता है
  • "No adblocker detected. Consider using an extension like uBlock Origin to save time and bandwidth. Click here to close." यह message पेज के नीचे दाईं ओर छोटे रूप में दिखता है
    • यह content को नहीं ढकता, और message बंद करने पर फिर दिखाई नहीं देता
    • अगर window छोटी हो, तो message नहीं दिखता
  • सिर्फ़ किसी खास extension (uBlock Origin) का ज़िक्र करने का कारण यह है कि users अक्सर विज्ञापनों के ज़रिए ad blocker तक पहुँचते हैं, और commercial ad blockers के जोखिम व भ्रामक स्वभाव की वजह से
    • ads से प्रचारित ad blockers अंततः users से ही कमाई करते हैं

implementation method और तकनीकी बिंदु

  • HTML में ad blocker message के लिए div area मौजूद है, जिसमें ads से जुड़े कई class names शामिल हैं
  • message जोड़ने का काम /nativeads.js नाम की JavaScript file करती है
    • यह cookie के आधार पर message का one-time display सुनिश्चित करती है
    • "Click here to close." पर click करने पर div hide होता है और cookie update होती है
  • CSS के ज़रिए message की visual position और styling तय की जाती है
    • सिर्फ़ पर्याप्त screen space होने पर इसे नीचे दाईं ओर fixed दिखाया जाता है
  • अगर ad blocker उस div element या nativeads.js file को block (हटा दे या request block कर दे) कर दे, तो message खुद ही render नहीं होता
    • ads-संबंधित अलग-अलग class names के ज़रिए ज़्यादातर ad blockers को div हटाने के लिए प्रेरित किया जाता है
  • खास तौर पर network blocking-केंद्रित (adblock lite आदि) extensions में भी script network request block होने पर message गायब हो जाता है
  • DNS-आधारित ad blocking तक detect न कर पाने की सीमा मौजूद है
  • जो browsers JavaScript support नहीं करते, उनमें ad blocker की ज़रूरत नहीं होती, इसलिए message भी नहीं दिखाया जाता
  • CSS लागू न होने पर भी message कार्यात्मक रूप से काम करता है (बिना styling के दिखता है)

3 टिप्पणियां

 
mango 2025-09-10

मैं Brave browser की सिफारिश करता हूँ

 
GN⁺ 2025-09-10
Hacker News राय
  • मैं ad blocker की वजह से लगभग 10 साल से online ads से लगभग पूरी तरह कटा हुआ जीवन जी रहा हूँ। कभी-कभी जब ऐसे डिवाइस पर वेब इस्तेमाल करना पड़ता है जहाँ ad blocking संभव नहीं होती या install ही नहीं कर सकता, तो SEO-केंद्रित और ads से ठसाठस भरी साइटें देखना ऐसा लगता है जैसे किसी नशे के अड्डे में घुस गया हूँ। दुख की बात है कि ज़्यादातर लोगों के लिए यही रोज़मर्रा की हकीकत है
    • Android पर हर बार Google Play Store खोलने पर ऐसा लगता है जैसे किसी dystopian shopping mall में आ गया हूँ। F-Droid से मेरी ज़रूरत के लगभग सारे apps मिल जाते हैं और सिर्फ आधिकारिक apps के लिए Play Store इस्तेमाल करता हूँ। इसलिए Play Store का design user-unfriendly और visual noise से भरा हुआ लगता है। इससे बार-बार एहसास होता है कि ज़्यादातर लोग ads से परेशान रहते हैं। कभी ऐसा न हो कि uBlock Origin तक को ब्लॉक कर दिया जाए और कोई सुरक्षा ही न बचे, यही चिंता है
    • मैं भी लगभग इसी स्थिति में हूँ। सिर्फ वेब ही नहीं, मेरे पास TV भी नहीं है, और ads वाला radio भी नहीं सुनता, इसलिए ads लगभग देखता ही नहीं। इसी वजह से समझ नहीं आता कि लोग इन्हें आखिर बर्दाश्त कैसे करते हैं
    • घर पर मैं router-level DNS ad blocking और browser ad-blocking extension दोनों इस्तेमाल करता हूँ। जब भी 5G data या public Wi‑Fi पर वेब इस्तेमाल करता हूँ, अनुभव बेहद खराब लगता है और मैं तुरंत ad-blocking VPN चालू कर देता हूँ
    • बड़े ad platforms तक में quality control बेहद खराब है। YouTube पर मुझे पहले Canada के प्रधानमंत्री का deepfake इस्तेमाल करके cryptocurrency scam प्रचार करने वाला ad मिला था। उस पर क्लिक करने पर Canada revenue agency का रूप धरने वाली phishing site खुलती थी
    • मैं हर डिवाइस पर Brave इस्तेमाल करता हूँ। जब किसी दूसरे डिवाइस पर YouTube video दिखाता हूँ और उसमें तीन बार ad आ जाती है, या कोई local news page खोलते ही ads की बाढ़ आ जाती है, तो मन में आता है, "वाह, हमारे जैसे freeloaders की वजह से ये लोग सच में ads का बमबारी-स्तर बढ़ा रहे हैं!"
  • “Ad blocker नहीं मिला। uBlock Origin जैसे extensions का इस्तेमाल करके समय और traffic बचाइए।”<br> इससे आपका attention और privacy भी सुरक्षित रह सकता है। ऐसा notice एक अच्छा विचार है। निजी तौर पर मैं इसमें “like” शब्द हटाना चाहूँगा। uBlock Origin शानदार है, लेकिन कुछ दूसरे blockers malware हो सकते हैं या समस्याजनक हो सकते हैं। वैसे, notice में लिंक किया गया ublockorigin.com असली uBlock Origin developer Raymond Hill की मिल्कियत नहीं है। ऊपर से देखने पर इरादा अच्छा लगता है और UI भी ठीक है, लेकिन यह Hill के नियंत्रण में नहीं दिखता, इसलिए malware जैसी चीज़ों के लिए संभावित खतरे का बिंदु हो सकता है। Hill का आधिकारिक चैनल https://github.com/gorhill/uBlock है। देखने लायक लिंक हैं README.md और Wiki
    • हाल की PuTTY domain squatting घटना के बाद से ऐसे मिलते-जुलते sites पर और भी ज्यादा शक होने लगा है। सच में, ublockorigin.com का मालिक “my other tools” section के ज़रिए पूरी तरह असंबंधित दूसरे products का प्रचार कर रहा है
    • ज़्यादातर आम internet users को GitHub लिंक दे भी दिया जाए, तो उन्हें बिल्कुल समझ नहीं आता कि करना क्या है। अफ़सोस है कि official site पर आसान install instructions नहीं हैं। लेकिन developer द्वारा सीधे manage न की जा रही site को लिंक करने में सावधानी बरतनी चाहिए, इस बात से सहमत हूँ
    • लगता है इस comment को सही तरह से सराहा नहीं जा रहा। README में भी GitHub header बहुत ज़्यादा हैं, जिससे असुविधा होती है। UBO को एक proper official landing page की सच में ज़रूरत है
  • FBI भी कहती है कि ad blockers लोगों को malicious sites पर जाने से रोकने में मदद करते हैं<br> TechCrunch लेख और official archive देखें
    • मैं तो बहुत पहले से मानता हूँ कि आजकल ad blocker ही सबसे अच्छा antivirus है
  • मैं ads का बहुत बड़ा प्रशंसक नहीं हूँ, और ad networks का भी कोई खास सम्मान नहीं करता, लेकिन ads और tracking को रोकते हुए websites का data मुफ़्त में इस्तेमाल करने वाली संस्कृति भी मुझे कुछ असहज करती है। मुझे लगता है कि एक implicit social contract है। Sites बहुत सारा content मुफ़्त में इसलिए उपलब्ध और व्यवस्थित करती हैं क्योंकि वे ads से कमाई कर सकती हैं। अगर बहुत से लोग ads को ठुकराएँ और block करें, तो आख़िरकार ऐसी services content का वितरण बंद कर देंगी, और उस प्रक्रिया में blocking एक तरह की free-riding बन जाती है। अगर आपका लक्ष्य ही service को तोड़ना है, तो कम-से-कम उसमें एक तरह की consistency तो है। अगर आप इस contract का पालन शालीनता से नहीं करना चाहते, तो ठीक है, लेकिन अगर शुरुआत से ही इस contract की रणनीति आपको पसंद नहीं, तो वह service इस्तेमाल ही नहीं करनी चाहिए, और खुद alternatives ढूँढने या नए platforms पर सोचने की कोशिश करनी चाहिए
    • पहले मुझे भी यह ढाँचा ठीक लगता था, लेकिन advertisers ने भी इस contract को तोड़ने के बहुत से उदाहरण दिए हैं। जैसे:
      • autoplay videos मेरा traffic अपनी मर्ज़ी से खर्च कर देते हैं
      • अचानक audio चल पड़ता है और speakers पर कब्ज़ा करके बाधा डालता है
      • popups जो window या tab control में दखल देते हैं
      • surveillance जो मेरी हर browsing habit को track और aggregate करती है
      • malware/phishing का ऐसा स्रोत जिसकी ज़िम्मेदारी आमतौर पर कोई नहीं लेता
      • एक ही content में इतनी ads ठूँस दी जाती हैं कि page पूरी तरह बर्बाद हो जाता है ads देखना कोई साधारण, हानिरहित या मासूम समस्या है, इसे इस तरह पेश किया जाता है, लेकिन हकीकत वैसी नहीं है
    • मैं अब इस तर्क से सहमत नहीं हूँ। Ads इतने बुरे हो गए थे कि एक दिन दोनों तरफ़ 20% जगह घेरने वाले बड़े animated ads आ गए, आवाज़ भी तेज़ थी, और page load होते ही 3–4 popup windows खुल गईं जिनमें virus warnings या अजीब content ads तेज़ आवाज़ के साथ चल रहे थे। Popup blocker पहले से on होने के बावजूद यह हुआ। उसी दिन मुझे पहली बार 'self-click ads' के बारे में पता चला और मैंने तुरंत ad blocker install कर लिया। आख़िर social contract तोड़ने वाले वे लोग थे। अब ads और उनके पूरे system पर भरोसा नहीं रहा। पुराने dialup दिनों की याद भी है, जब fraudulent sites की वजह से phone bills बहुत बढ़ जाते थे
    • नज़रिए को थोड़ा और व्यापक रखना चाहिए। हाल ही में एक अदालत ने फैसला दिया कि Google ने online ad market में दो अवैध monopoly practices की थीं संबंधित लेख, और अभी तक कोई प्रभावी remedy नहीं आई है। और DoJ ने Meta के खिलाफ इसी तरह का मुकदमा भी दायर किया है, मामला अभी चल रहा है संबंधित wiki। मेरे लिए, अगर सामने वाला contract तोड़ दे, तो वह contract अमान्य हो जाता है। Social contract पर भी यही लागू होता है। अगर कंपनियों ने बड़े पैमाने पर अवैध काम किए हैं, तो हमें इस contract से बँधे रहने की कोई वजह नहीं। जब तक इस अवैध दुरुपयोग का समाधान नहीं होता, online ads को पूरी तरह अस्वीकार करना जायज़ है। अगर Google, Meta जैसी बड़ी कंपनियों ने कानून तोड़ा है, तो ad tech पर तुरंत रोक लगनी चाहिए। Websites यानी publishers भी इस स्थिति में वास्तव में नुकसान झेल रहे हैं, इसलिए शायद वे भी असली समाधान चाहते हों
    • मैं “ad blocking, ads/tracking रोकते हुए data पर मुफ़्त की सवारी करने वाली अनैतिक संस्कृति है” इस दावे से बिल्कुल सहमत नहीं हूँ। आज के दौर में मुफ्त websites Wordpress, Blogger, Wix, Weebly जैसी कई सेवाओं पर चलती हैं, और ये अपनी banner ads के अलावा भारी ad scripts के बिना भी चलती हैं। Neocities या Digital Ocean का उपयोग करके महीने के 5 डॉलर में अपनी पसंद का domain और theme लेकर site चलाई जा सकती है। Buzzfeed, The Verge, Gizmodo जैसे media outlets अधिकतर third-party content जैसे YouTube, Vimeo वगैरह embed करते हैं, खुद host भी नहीं करते, और बस दोबारा पैक की गई news stories पर ads और affiliate product reviews चढ़ा देते हैं। इस तरह का 'dropship' style web पुराने free website culture को बर्बाद कर रहा है
    • छोटे bloggers या independent creators अगर अपने विचार साझा करें और server cost का कुछ हिस्सा ads से निकाल लें, तो वह मॉडल ठीक है। लेकिन जो विशाल कंपनियाँ personal data इकट्ठा करके बेचने से फायदा उठाती रही हैं, उनके साथ ऐसा social contract बनता ही नहीं। वे बस मेरा data बेचती हैं। अगर आप जानते हैं कि वे क्या कर रही हैं और उसे कैसे रोका जा सकता है, फिर भी ads और tracking को चुपचाप अनुमति देते हैं, तो आप एक बदतर दुनिया बनाने में साथ दे रहे हैं। विशाल corporations को किसी व्यक्ति की तरह सम्मान देने की कोई वजह नहीं
  • Big Tech कंपनियाँ धीरे-धीरे हमें इस बात की आदत डाल देती हैं कि हमारे साथ अतिक्रमण होना सामान्य है। वे दिखाती हैं कि वे हमें बहुत सी services मुफ़्त दे रही हैं, लेकिन हमारी सहमति के बिना हमसे बहुत कुछ छीनती भी हैं। वे हमें manipulate करती हैं, information पर barriers लगाती हैं, और human condition को भी बदतर बनाती हैं। ऐसी कंपनियों के खिलाफ कदम उठाने में guilty महसूस करने की ज़रूरत नहीं। वैसे, कल Chromium में दिखा कि uBlock Origin अब supported नहीं है। इसलिए MS365 के अलावा मैं Chromium इस्तेमाल नहीं कर रहा था, और अब लगता है कि वह सही फैसला था। Firefox में यह अभी भी ठीक से काम कर रहा है
  • “DNS-based ad blocking को detect करने का तरीका नहीं है, जब तक असली ad लोड न कराई जाए” इस समस्या पर, मुझे लगता है कि ऐसा domain register किया जा सकता है जो block list में शामिल होने लायक हो, और फिर उसी resource से test करके दोनों तरह की blocking—extension-based और domain-based—जाँची जा सकती है। हाँ, अगर domain खुद down हो जाए या network issue हो, तो false positives आ सकते हैं, लेकिन हर test का पूरी तरह flawless होना संभव नहीं। अगर किसी को पता हो कि अपना domain block lists में आसानी से कैसे डलवाया जा सकता है, तो साथ मदद करे। मैं साल के कुछ pounds ख़र्च करने को तैयार हूँ, और request volume भी समस्या नहीं है। साथ ही, मैं सिर्फ “display:none” और “display:block” के बीच switch करने के बजाय, उसी size की जगह reserve रखकर सही message दिखाने, या शुरुआत में बस blank space छोड़ने का सोच रहा हूँ ताकि malfunction होने पर गलत message न दिखे
    • मुझे लगता है नया domain बनाना काफ़ी worthwhile कोशिश है। Domain setup करके एक छोटा blog post भी लिख दें, तो मुझे यक़ीन है HN community उसे blocklists में जोड़ने में मदद करेगी। और जब बना ही रहे हैं, तो donation button भी जोड़ दीजिए
  • यहाँ तक कि CERN भी सभी के लिए सुरक्षित internet use के लिए ad blocker recommend करता है<br> संबंधित लेख देखें<br> जब web पहली बार आया था, तब शायद किसी ने नहीं सोचा होगा कि ads इस हद तक फैल जाएँगी
    • आजकल शायद Firefox या दूसरे कम restrictive browsers को सभी को recommend करने का माहौल होगा। हाल ही में पत्नी के computer में मदद करते हुए देखा कि ads की बाढ़ थी; पहले मैंने उसमें uBlock install किया था। Chrome extensions management page देखा तो पता चला Google ने uBlock को अपने-आप disable कर दिया है और उसे unsupported extension बताया है। Browser restart करते ही हर बार uBlock फिर चालू करना पड़ता है। लगता है Chrome इन दिनों जानबूझकर ad blockers को बाहर धकेल रहा है
  • आज के internet माहौल के हिसाब से शायद ऐसा message भी users के प्रति बदतमीज़ popup के रूप में बनाना चाहिए। X button भी background color से लगभग मिलता-जुलता, बहुत छोटा होना चाहिए, और उसे स्क्रीन के सबसे असुविधाजनक हिस्से में रखना चाहिए। Touch devices पर touch area भी छोटा और थोड़ा misaligned होना चाहिए। iPad पर तो popup पूरा screen ढक ले और उसे बंद करने का कोई तरीका ही न हो
  • काश browser page onload के बाद JavaScript execution को आसानी से बंद करने दे, या click करने पर ही JS enable करने का तरीका दे
    • Brave browser इस्तेमाल करें तो default रूप से JS बंद करके, ज़रूरत पड़ने पर हर site के लिए manually enable किया जा सकता है
    • मैं भी इस बात से 100% सहमत हूँ। पहले मुझे लगता था कि पुराने IE का Stop button यही काम करता है
    • uBO का ‘click to disable JavaScript’ button बहुत उपयोगी है
    • पुराना Opera, Chromium-based होने से पहले, menu से JS on/off बहुत आसानी से करने देता था, हालाँकि उसका exact scope मुझे याद नहीं
    • पहले ad scripts document.write() इस्तेमाल करती थीं, इसलिए वे तुरंत execute होकर चीज़ों को slow कर देती थीं। पता नहीं आज भी ऐसा होता है या नहीं
  • “अगर किसी पसंदीदा लेखक को support करना है, तो ads देखने से बेहतर है सीधे पैसे भेजो। $1 ad revenue से कहीं ज़्यादा मदद करता है” इस दावे से मैं सहमत नहीं हूँ। पहले मेरी personal site पर ऊपर सिर्फ एक छोटा banner होता था, और ad revenue की वजह से मेरे किराए का बड़ा हिस्सा निकल जाता था। सीधे पैसे भेजने वाले लोग 0.01% भी नहीं थे। मुझे ads पसंद नहीं, लेकिन यह भी सच है कि ads से creators कमाते हैं
    • फिर भी, सोचने वाली बात है कि किसी एक viewer के ads देखने से वास्तव में $1 से ज़्यादा ad revenue आता भी है या नहीं
 
tribela 2025-09-10

मेरे ब्लॉग में भी पहले से ऐसा संदेश दिखाया जाता था कि अगर ad blocker न मिले तो उसे इंस्टॉल करने की सलाह दी जाए, इसलिए यह जानकर अच्छा लगा कि ऐसा सिर्फ मैं ही नहीं कर रहा था।