Profile img

minhoryang

@minhoryang@hackers.pub · 22 following · 23 followers

your metaverse plumber and firefighter | DISCLAIMER - 소속한 집단의 의견을 대표하지 않고, 생각은 언제나 바뀔 수 있음

twitter(x)
@__minhoryang__
keyoxide
keyoxide.org/minhoryang@gmail.com
keybase
minhoryang

다같이 손 잡고 하나둘셋 하면 노드 지우고 디노로 갈아타는 거다 알았지?
자 하나

셋!

4

방금 친구랑 모의면접을 봤는데(내가 면접관), 면접으로 알아낼 수있는게 딱히 있는지에 회의가 생겨버렸다. 아 물론, 내가 초보 면접관이라 면접스킬이 떨어지긴 한다만, 친구 얘기론(면접관 경험이 더 많음) 그래도 무난의 범위엔 든다고 한다. 이력서 기반으로 이것저것 물었는데, 만약에 이력서가 구라로 점철되있으면 그걸 걸러낼순 있었을 것이다. 근데 친구의 이력서는 당연히 그렇지 않았으니, 그냥 이력서가 구라가 아니란 사실 정도만;; 알아낼수 있었다. 이 이상 뭔가 더 꿰뚫어 보는게 가능할까... 하겠지? 그럼 어떻게 하는걸까.

0

mesh가 유려하게 잘 작동하는걸 보기가 쉽지 않았지. Unifi도 결국 mesh사이의 AP를 잘 넘나들게 설정하는건 power세기와 신호db제약을 거는거였고. 뭐 특정 장소에서 안벗어나는 장비들은 특정 ap에 몰아두거나, vlan으로 우선순위를 나누거나. 근데 radio space에선 ssid별로 우선순위를 넣는게 있었나…? 클라가 빽빽대면 여전히 잘 안되는거 아닌가? 내가 코워킹 스페이스를 만든다면 wips도입보다 grafana를 띄우고 마피아게임을 하자고 하는게 나을 것 같다. Chillispot말고 그냥 radius를 두고.

0
0

mcp에 툴을 계속 쥐어주는게 불만이다. 불안하지도 않나? 아니 pg를 관리하는 mcp를 쓰는것보다 pg를 관리하는데 사용되는 명령어를 물어보고 그걸 내가 확인 후 실행하는게 맞지 않나? deno로 권한 다 뺏고서 mcp를 실행하면 좀 방지가 되려나?

3
1
1
2
0

지라 같은 도구를 뭐하러 쓰나. 크게 두 가지. 커다란 목표를 자잘한 목표로 분해해 각 부분의 예측가능성을 높여 전체에 대한 예측가능성을 확보한다. 그리고 각각의 세부 목표가 책임이 있는 개인에게 전달되어 수행되게 한다.

사실 이전에 겪은 프로젝트들에서도 태스크 하나를 둘 이상에게 어사인하고싶어하는걸 여러번 봐 왔는데 내 기준에서 이건 태스크 분해가 덜 끝난거임. 한 태스크가 둘 이상에게 할당되어 뭐 잘 진행될 수도 있다. 하지만 일이 잘못되면 책임소재가 분산되어 수습하기 어렵게 만든다. 태스크는 반드시 한 사람의 책임자에게 할당되어야 한다.

https://community.atlassian.com/forums/App-Central-discussions/Stop-Fighting-Jira-s-Single-Assignee-Limit-Assign-Multiple-Users/td-p/3088240

1
0

IoT 개별제어되는 6구 4000W KC인증 화재방지 멀티탭에 10만원을 쓰는게 맞을까? 별도의 wifi용 앱만 있고 api는 없을 확률이 높은데? 10만원이면 apc ups를 하나 더 사는게 낫지않을까?

0

난 내 친구들이 블락한 계정을 내 계정에도 자동으로 블락을 하고 싶다. 리버스 체인블락이라고 해야 하나? 블락 스트림 구독 같은거라고 생각해야하나. 아니 잠깐 이게 옳은 생각일까?

0
1

Unfortunately, even AI experts don’t actually understand why LLMs work at all. This core truth led to an epiphany: as LLMs are already maximally incomprehensible, obfuscation cannot make them more so. So, in the spirit of the IOCCC we can set aside the futility of aiming for comprehensibility, and instead focus purely on size.

https://www.ioccc.org/2024/cable1/

0

Unfortunately, even AI experts don’t actually understand why LLMs work at all. This core truth led to an epiphany: as LLMs are already maximally incomprehensible, obfuscation cannot make them more so. So, in the spirit of the IOCCC we can set aside the futility of aiming for comprehensibility, and instead focus purely on size.

https://www.ioccc.org/2024/cable1/

0

아래 npm 패키지에서 악성코드가 발견되었다고 하네요. 최근에 있었던 npm을 사칭한 피싱 메일로 인해 보안토큰을 탈취당하신 듯...

eslint-config-prettier: 8.10.1, 9.1.1, 10.1.6, 10.1.7
eslint-plugin-prettier: 4.2.2, 4.2.3
synckit: 0.11.9
@ pkgr/core: 0.2.8
napi-postinstall: 0.3.1

Active Supply Chain Attack: npm Phishing Campaign Leads to Prettier Tooling Packages Compromise - socket.dev/blog/npm-phishing-c

6
0
0
2

https://news.hada.io/topic?id=21771 -- cloudflare는 "이걸로 돈을 벌 수 있다!"를 캐치프레이즈로 내세우고 있지만, 실질적으론 "과금을 받을 수 있을 정도로의 기술적 통제력을 확보하였다"를 보여주는 시도. 'turnstile이 그만큼 믿을만 하다'에서 시작해서 '이젠 AI Agent쪽에서의 표준 영향력도 확보하면서 CrawlPaymentGateway도 해보겠다' 로 읽히네요.

0

오늘 같은 날 생각하기 좋은 3-2-1 Backup Strategy를 소개합니다.

  1. 백업을 할 땐 최소 3번 하되,
  2. 최소 2가지 방식의 매체에 나눠 보관하고,
  3. 그중에 1개 본은 꼭 offline 상태로 or 물리적으로 분리된 상태로 두라는 것입니다. 물론 상황에 맞게 도입을 해야겠지만요.

FYI, 저는 처음 배울 때 3-3-3(물리적 분리)로 배웠는데, 사회에선 3-2-1을 많이 말하시네요. (3-2-1-1-0도 있고요.) https://www.backblaze.com/blog/whats-the-diff-3-2-1-vs-3-2-1-1-0-vs-4-3-2/

5
0
0

ChatGPT가 지식을 틀리게 변형하여 적용하고 있을 경우, 이를 자기가 눈치채지 못할것 같다면 ChatGPT를 사용해서는 안됩니다.

2

시간이네요. AI/Blockchain/Infra/Metaverse가 뒤섞인 영역에서의 소방관이자 해결사를 맡고 있습니다. 불도 끄고, 불이다! 도 외치고, 꺼진 불도 발로 차보고, 그러다 보니 10년이 지났습니다ㅎㅎ 다들 불조심하시고 재밌어 보이는 거 있으면 알려주세요~ 다들 잘 보고있습니다. 감사합니다.

5
0

https://n.news.naver.com/mnews/hotissue/article/092/0002375083?cid=1087940 | “KT는 2021년부터 IMSI 암호화 기능이 적용된 5G USIM을 도입했고, LG유플러스는 PUF(물리적 복제 불가능 함수) 기반의 고보안 유심을 상용화했다.“ 이게 DB 내에 암호화 되어있다는걸 말하는게 아니잖아요? 일부 도입이지 전체도입이 아니고, 심지어 사용자가 해당 유심을 비싼값주고 사야할텐데? | “국제 표준도 이와 관련한 최소한의 보안을 요구하고 있다. 5G SA 환경에서는 가입자 식별정보(SUPI)를 암호화된 형태(SUCI)로 전송해야 한다는 규정이 3GPP TS 33.501 표준에 명시돼 있다. 이는 LTE 시절 IMSI가 평문으로 전송되던 보안 취약점을 개선하기 위한 조치” 3사 모두 안했다고 들리는데? 한국에 5G SA가 어딨어...? (라고 말하고 검색해봤더니 KT는 99% 도입했다는 기사를 perplexity가 찾아줌.)

0
1
0

최근에 마주친 문제/주제들이 우연히 다들 '양방향' 이란 개념과 관련이 있다. 아래는 거기 관련된 러프/나이브한 생각들이다.

세션 타입

이건 노골적인 예시인데, 말그대로 서버/클라가 양방향으로 통신하는걸 기술하게 해준다.

Propagator

대부분의 프로그래밍 언어에서 x = 3 + 2과 같은 우변을 계산해서 좌변의 기호에 할당하는 기능을 제공한다.

그런데 3 = x + 2 라고 썼을때 x = 1을 해주는 언어는 거~의 없다. 이런 기능이 왜 필요하냐는 의문이 들 수 있지만, 이런 방식을 간접적으로 다들 매일 쓰고 있다. 예컨데 패키지 버전 관리를 생각해보자.

foo: >= 2.0.0
bar: =< 3.1.0 

이런 식의 설정 파일을 만지작 거릴텐데, 사실 foo >= 2.0.0, bar =< 3.1.0, ... 같은 부등식을 기술하고 있는 셈이다. 여기서 barfoo를 의존성으로 가지면 문제가 좀더 복잡해진다. 패키지 매니저는 조건을 만족하는 foo, bar의 값을 알아서 계산해준다.

요지는, 구체적인 값 대신에 조건을 나열하는 방식은 이미 다들 쓰고 있다는 얘기다. 그리고 패키지 매니징이 아닌 다른 문제에서도 이 방식이 좋은 경우는 흔하지만, 조건을 풀어서 값을 구하는 부분을 짜는게 까다로워서 도입하기 쉽지 않다.

여기서 양방향과 관련된 부분은 좌변과 우변의 정보 교환이다. x = 3 + 2x <= 3 + 2로, 우변의 정보가 일방적으로 좌변으로 간다고 볼수 있다. 반면 3 = x + 2는 좌변의 정보가 우변으로 가야한다.

x + 1 = y - 3란 예시를 보자. 이 식만 가지고는 x, y의 값을 구할 수 없다. 하지만 x = 3이란 정보가 들어오면 y = 4란걸 알 수 있고, 반대로 y = 5란 정보가 들어오면 x = 1인걸 알 수 있다. 이런 양방향 정보교환을 기술할수 있게 해주는것이 Propagator 패턴이다. Propagator 자체도 세션 타입과 뭔가 관련이 있을거 같은데, 뭐 찾아보면 오히려 서로 관련 없는게 없으니 일단 패쓰.

프로그래밍에서의 타입

모든 프로그래밍 언어는 메타프로그래밍이 가능하고, 대부분의 프로그래밍 언어는 메타프로그래밍을 할 자격이 없다. 나는 그중에서도 특히 자격이 없는 언어인 Nix로 메타프로그래밍을 하는 상황에 쳐해있다. Nix의 특성상 나뿐 아니라 다른 많은 Nix 유저들이 자연스레 이 토끼굴에 빠진다.

Nix의 에러메시지는 읽기가 참 힘든데, 기능이 매우 부족한 언어에다가 여러 개념을 새로 구현해서 얹어놔가지고, 긴 스택트레이스 중에 내가 관심있는 부분은 끝의 일부인데 거기까지의 흐름을 따라가려면 앞의 상관없는 코드도 대충은 이해해야한다. 이게 양방향 정보 교환이 잘 안되고 있는 부분이다.

알다시피 함수 자체는 단방향 정보이다. 스택트레이스는 함수를 통한 단방향 정보의 전달 과정을 보여준다. 그리고 개발자는 그걸 반대로 뒤집은 형태를 분석해야 하는 상황에 놓인다. 이게 개발자 <=> 코드 의 양방향 정보교환의 수단이 제공되지 않아서 생기는 문제다.

개발자 <=> 코드의 양방향 정보코드의 대표적인 수단은 타입이다. 타입은 코드가 스스로를 변호하고, 개발자의 잘못된 변경으로부터 방어하도록 해준다. 대부분의 언어가 메타프로그래밍을 할 자격이 없다는 얘기가, 코드 생성이라는 개발자 -> 코드의 단방향 정보전달만 기술하고 반대로 코드 -> 개발자 방향의 정보를 모조리 잃어버리는 형태로 이루어지기 때문이다.

그런데 타입안전한 메타프로그래밍은 그자체로 어려운 문제이고 아직은 연구주제에 가깝다고 알고있다. 혹시 그냥 개발자에게 뭔가 알려줄수있는 방법 자체를 primitive로 가질 순 없나? 그게 결국 타입이랑 똑같은 것일까? 여기에 TypeScript에서의(역시!) 무근본한 트릭이 소개되어있는데, 약간 관련있을지도 모른다.

7
0
0
1
0
0

무언가가 프로그래머블하다는 것은 문제가 생겼을때 디버깅을 해야한단걸 의미한다. 전세계에 프로그래밍을 좋아하는 사람들은 수백만명 정도 있고, 디버깅을 좋아하는 사람은 정확히 0명 있다.

  • Nix의 개발새발 빌드 에러메시지를 읽고 있는 누군가
6
2

캘린더 이벤트로 변환이 가능한 데이터들 (예약 서비스의 예약 내역, 캘린더 양식이 아니어서 변환이 필요한 데이터, 매우 낮은 에러 레이트 리밋(?) 같은 이유로 인하여 일반적인 캘린더 동기화에 넣기 불안한 출처)를 모아다가 주로 사용하는 캘린더 서비스로 보내주는 서비스를 만들려고 합니다.

2
1
2