이쯤 되니 기본값으로 추적에 동의한 상태가 되어도 아무도 놀라지 않는다는 게 흥미로움 DO_NOT_TRACK 같은 플래그는 좋아 보이지만, 동시에 기본값이 CONSENT_TO_TRACK=1이라는 뜻처럼 느껴져서 소름 끼침
언제 추적하지 말라는 건데? 이 플래그는 내 브라우저가 남의 서버에 접속할 때 보내는 것임
인터넷이 커진 건 광고와 서버가 사용자에게서 파생 정보를 뽑아내는 사업 모델이 주류였기 때문임
즐겁지도, 사적이지도, 안전하지도 않지만 대부분의 관할권과 산업에서는 불법도 아님
이 플래그는 동화 같은 이상향이 아니라, 사실상·법적으로 굳어진 현실에 대한 대응임
이런 플래그 자체가 문제가 있다고 봄
어떤 정보도 내보내고 싶지 않고 당연히 추적도 원하지 않는데, 이걸 환경 변수 하나로 표시한다는 것부터 말이 안 됨
추적당하고 싶지 않다면서 그런 정보를 주는 걸 좋아하는 사람들을 이해하기 어렵고, 그 정보를 주는 순간 이미 표시된 셈임
변수 이름은 항상 긍정형으로 두는 편이라, 이 경우라면 ALLOW_TRACKING=0이 됨
일관성이 생기고 이중 부정을 피할 수 있어 추론하기 쉬워짐
다만 “DO NOT TRACK”이라는 이름은 어느 정도 자리 잡은 용어일 수 있음
ALLOW_TRACKING을 쉼표로 구분한 목록으로 구현해서, 허용할 애플리케이션만 지정할 수도 있음
예를 들어 go와 brew에는 원격 측정을 공유하고 싶지만 aws와 나머지는 싫다면 ALLOW_TRACKING=go,brew처럼 둘 수 있음
브라우저의 DNT와 같은 운명을 맞을 가능성이 큼
다만 모든 “추적 금지” 환경 변수를 하나의 do_not_track.env 파일로 모으는 건 나쁘지 않아 보임
Python transformers 라이브러리가 Hugging Face에 연락하지 못하게 막는 게 생각보다 어려워서 놀랐음 HF_HUB_DISABLE_TELEMETRY=1을 설정하고 Wav2Vec2CTCTokenizer.from_pretrained를 호출할 때 local_files_only=True도 명시했지만, 여전히 유효한 HF_TOKEN이 없다는 경고가 떴음 HF_HUB_OFFLINE=1을 우연히 찾고 나서야 디스크에서 wav2vec2 모델을 불러올 때마다 HF로 나가는 연결을 하지 않는다고 어느 정도 확신하게 됨
그 짜증 나는 HF_TOKEN 경고가 아니었다면 이런 일이 벌어지는지도 몰랐을 것임
HF는 오프라인 작업을 어렵게 만드는 것으로 악명 높음
필요한 것이 전부 로컬에 있어도 접속을 시도하느라 시간을 낭비하지 않게 하는 것조차 계속 처리 방식이 바뀜
예전에는 TRANSFORMERS_OFFLINE, HF_DATASETS_OFFLINE 같은 것도 있었음
Little Snitch 같은 도구가 이런 걸 잡아서 숨은 통신을 하는 대상을 찾는 데 도움이 될까?
유용한 허니팟처럼 보임
이 명세 지원을 공개적으로 알리는 도구라면, 애초에 명시적 동의 없이 원격 측정을 수집한다는 뜻이니 피해야 할 도구로 볼 수 있음
DO_NOT_TRACK 지원이 곧 추적이 명시적 동의 방식이 아니라는 뜻은 아님
예를 들어 소프트웨어가 충돌하고, 충돌 처리기가 덤프를 보낼지 묻는 경우가 있음 DO_NOT_TRACK이 있으면 충돌 처리기 자체가 비활성화되어 질문도, 덤프도 없음
어느 정도 채택된다면 아마 그런 식으로 동작할 가능성이 큼
광고처럼 추적으로 금전적 이익을 얻는 쪽은 이런 옵션을 지원하지 않을 것임
대부분의 서비스는 이미 원격 측정을 수집하고 있고, 지원한다고 발표한다고 해서 그 사실이 바뀌지는 않음
너무 깊게 들여다보지 않는 게 좋음
그러면 현대적인 도구를 많이 못 쓰게 될 것임
회사들이 이 제안을 아주 느리게 구현하길 기다리는 동안, 흔한 도구들의 수신 거부 방법을 한곳에 모아둔 곳이 있을까?
아예 그것들을 설정하고 목록을 정기적으로 업데이트하는 셸 모듈 같은 것도 가능해 보임
Hacker News 의견들
이쯤 되니 기본값으로 추적에 동의한 상태가 되어도 아무도 놀라지 않는다는 게 흥미로움
DO_NOT_TRACK같은 플래그는 좋아 보이지만, 동시에 기본값이CONSENT_TO_TRACK=1이라는 뜻처럼 느껴져서 소름 끼침인터넷이 커진 건 광고와 서버가 사용자에게서 파생 정보를 뽑아내는 사업 모델이 주류였기 때문임
즐겁지도, 사적이지도, 안전하지도 않지만 대부분의 관할권과 산업에서는 불법도 아님
이 플래그는 동화 같은 이상향이 아니라, 사실상·법적으로 굳어진 현실에 대한 대응임
어떤 정보도 내보내고 싶지 않고 당연히 추적도 원하지 않는데, 이걸 환경 변수 하나로 표시한다는 것부터 말이 안 됨
추적당하고 싶지 않다면서 그런 정보를 주는 걸 좋아하는 사람들을 이해하기 어렵고, 그 정보를 주는 순간 이미 표시된 셈임
변수 이름은 항상 긍정형으로 두는 편이라, 이 경우라면
ALLOW_TRACKING=0이 됨일관성이 생기고 이중 부정을 피할 수 있어 추론하기 쉬워짐
다만 “DO NOT TRACK”이라는 이름은 어느 정도 자리 잡은 용어일 수 있음
ALLOW_TRACKING을 쉼표로 구분한 목록으로 구현해서, 허용할 애플리케이션만 지정할 수도 있음예를 들어
go와brew에는 원격 측정을 공유하고 싶지만aws와 나머지는 싫다면ALLOW_TRACKING=go,brew처럼 둘 수 있음브라우저의
DNT와 같은 운명을 맞을 가능성이 큼다만 모든 “추적 금지” 환경 변수를 하나의
do_not_track.env파일로 모으는 건 나쁘지 않아 보임이 페이지의 명세를 지키면서 단순한 환경 변수 하나로 처리하고 싶다면 https://github.com/alloydwhitlock/do-not-track-cli도 있음
DNT를 기본으로 켠 것이 사용자의 선택권을 빼앗았다고 주장하며 무시했음실제로는 어차피 지킬 생각이 없었을 가능성이 큼
보편적인 하나를 쓰라고 요구하는 것보다, 실제 해결책은 이런 방식일 가능성이 큼
시작점으로 뭔가 만들어볼 생각임
참고로 Go 원격 측정은 기본적으로 로컬에만 저장되고 업로드되지 않음: https://go.dev/doc/telemetry
Python
transformers라이브러리가 Hugging Face에 연락하지 못하게 막는 게 생각보다 어려워서 놀랐음HF_HUB_DISABLE_TELEMETRY=1을 설정하고Wav2Vec2CTCTokenizer.from_pretrained를 호출할 때local_files_only=True도 명시했지만, 여전히 유효한HF_TOKEN이 없다는 경고가 떴음HF_HUB_OFFLINE=1을 우연히 찾고 나서야 디스크에서wav2vec2모델을 불러올 때마다 HF로 나가는 연결을 하지 않는다고 어느 정도 확신하게 됨그 짜증 나는
HF_TOKEN경고가 아니었다면 이런 일이 벌어지는지도 몰랐을 것임필요한 것이 전부 로컬에 있어도 접속을 시도하느라 시간을 낭비하지 않게 하는 것조차 계속 처리 방식이 바뀜
예전에는
TRANSFORMERS_OFFLINE,HF_DATASETS_OFFLINE같은 것도 있었음유용한 허니팟처럼 보임
이 명세 지원을 공개적으로 알리는 도구라면, 애초에 명시적 동의 없이 원격 측정을 수집한다는 뜻이니 피해야 할 도구로 볼 수 있음
DO_NOT_TRACK지원이 곧 추적이 명시적 동의 방식이 아니라는 뜻은 아님예를 들어 소프트웨어가 충돌하고, 충돌 처리기가 덤프를 보낼지 묻는 경우가 있음
DO_NOT_TRACK이 있으면 충돌 처리기 자체가 비활성화되어 질문도, 덤프도 없음어느 정도 채택된다면 아마 그런 식으로 동작할 가능성이 큼
광고처럼 추적으로 금전적 이익을 얻는 쪽은 이런 옵션을 지원하지 않을 것임
그러면 현대적인 도구를 많이 못 쓰게 될 것임
회사들이 이 제안을 아주 느리게 구현하길 기다리는 동안, 흔한 도구들의 수신 거부 방법을 한곳에 모아둔 곳이 있을까?
아예 그것들을 설정하고 목록을 정기적으로 업데이트하는 셸 모듈 같은 것도 가능해 보임
직접 DNS를 운영하고 문제 되는 도메인을 차단 목록에 넣는 편이 아마 더 쉬움
원격 측정 도메인이 수백만 개 들어 있는 좋은 차단 목록도 있음. 예: https://github.com/hagezi/dns-blocklists
“표준”을 외치는 사람들은 그저 비공식 대안의 긴 목록에 하나를 더 보태는 것뿐임
브라우저의 전역 추적 금지는 대상이 방문하는 모든 웹사이트와 광고 목적의 추적이라서 대체로 작동함
하지만 원격 측정은 완전히 다른 문제라서 기본 차단은 하나의 선택지가 될 수 있어도, 모든 도구에 대해 의도를 표현하는 표준 변수 하나를 쓰는 건 현실적으로 어렵다
몇 년 전에도 같은 제안이 있었지만 아무 데도 가지 못했음
https://web.archive.org/web/20200613155957/https://consoledo...