bgl gwyng

@bgl@hackers.pub · 87 following · 107 followers

슈티를 함께 만들 팀을 만들고 있습니다. 관심 있으신 분, 또는 잘 모르겠지만 이야기를 나눠보고 싶은 분도 bgl@gwyng.com으로 편하게 연락주세요.

GitHub
@bglgwyng
shootee
www.shootee.io
1
4
4
3

아는 친구한테 들은 얘기인데, 최근 이직한 회사에서 Python을 쓰는데 린트나 포매터 같은 것도 전혀 설정을 안 해놓고 살고 있기에 도입하자고 했더니 “그런 거 쓸 거면 Python 안 쓰죠”라는 말과 함께 제안을 거절 당했다고 한다. Python에서도 린트나 포매터는 물론이고 타입 체커까지 붙여서 살려면 살 수 있지만, 어쩐지 그런 거 신경 쓸 사람들은 최근 10년 사이에 다들 다른 언어로 넘어가 버리고 그런 거 신경 안 쓰는 사람들만 Python을 계속 쓰게 된 게 아닌가 싶은 생각이 들었다.

@hongminhee洪 民憙 (Hong Minhee) (저를 비롯한) 특정 집단에서 온 사람들이 린터나 포매터에 신경을 덜 쓰는 것은 사실입니다. 사실 신경을 덜 쓰는 것을 넘어 미묘한 심리적 거부감까지 있다고 보는 게 맞다고 생각해요. 특히나 도메인이 많이 녹아 있는 코드 영역에 까지 기계적인 포매팅 룰을 강요해야 하는가에 반응들은 좋게 봐서 "문명의 충돌", 낮춰 보면 "부족의 자존심을 건 싸움박질"의 양상을 띄는 것 같습니다. 이런 이야기가 나올 때마다 생각할 거리로 fastai의 코딩 스타일 가이드(https://docs.fast.ai/dev/style.html)를 한번씩 다시 읽어 보는데 매번 제 관점도 조금씩 바뀌어 가는게 흥미롭네요.

  • Why not use PEP 8?

    I don’t think it’s ideal for the style of programming that we use, or for math-heavy code. If you’ve never used anything except PEP 8, here’s a chance to experiment and learn something new!

  • My editor is complaining about PEP 8 violations in fastai; what should I do?

    Pretty much all editors have the ability to disable linting for a project; figure out how to do that in your editor.

  • Are you worried that using a different style guide might put off new contributors?

    Not really. We’re really not that fussy about style, so we won’t be rejecting PRs that aren’t formatted according to this document. And whilst there are people around who are so closed-minded that they can’t handle new things, they’re certainly not the kind of people we want to be working with!

2
1
2
4
2
3
3

케데헌 히트치는거보고 문득 든 생각

약 20년 전부터, 한국 인터넷 커뮤니티에 '떡볶이 참 맛있는데 외국인들도 좋아하지 않을까?' 이런 의견이 종종 올라왔었다. 근데 그 질문이 올라오면, 얼마 지나지않아 누군가가 '엣헴...서양인들은 떡의 sticky한 texture를 좋아하지 않습니다ㅎㅎ'이라는 답변을 다는걸 볼수 있었다. 내가 이걸 한두번 본게 아님.

근데 그 답변자에게 궁금한건. 그... 님은 떡복이를 실제로 드셔보셨나요? 떡볶이는 약으로 치면 마약이고 SNS로 치면 틱톡입니다. 감자튀김만으로 300파운드까지 벌크업하는 미국인들이 떡볶이에 저항할수 있을거 같으십니까?

아무튼 결국 20년이 지난 지금, 김구 선생님이 바라던 문화 승리를 목전에 두고 있고 떡볶이도 덩달아 인기를 끌고있다. 그동안 떡뽁이를 수출못했던게 그 sticky texture가 결정적인 문제였던건 아닌것으로? 결론은 그래서 '가장 한국적인 것이 가장 세계적인 것이다'는 아니고

인터넷에는 자신의 '오감'을 속여서까지 아무 소리를 당당하게 하는 사람들이 존재한다는 것이다. 당장 '엣헴'을 한번 하기 위해 생각을 포기하고 스스로를 속인다.

8
4

안녕하세요! 이번에 fedify 오픈소스 멘티로 참여하게 되어 해커스펍에도 가입하게 됐어요~~ 현재 프론트엔드 개발자로 일하고 있고 okky에서 팀원들을 만나 톡픽이라는 작은 프로젝트를 현재 만들고 있습니다! 7월까지 마무리 예정이라 출근 전 후로 바쁘게 달리고 있네요..!

그리고 오픈소스 멘티로도 참여하게되어 아주 바쁜 삶을 살게되었습니다. 이런 삶 너무 만족스럽습니다 전 약간 발등에 불이 떨어져야 그나마..해내는 편이기때문에

블로그에도 글을 쓰고 있어요! 저도 멋드러지게 쓰고 싶은데 아직 어떻게 접근해야되는지 잘 모르겠어서 그냥 거의 조각글 수준으로 쓰고 있습니다...ㅋㅋㅋㅋ 한 번 구경오세요>< https://hyeonlogforweb.tistory.com/

8
1

@bglbgl gwyng @hongminhee洪 民憙 (Hong Minhee) DSL 정의가 잦거나 좀 많이 유연한 형태로 코드를 작성할 필요가 있는 언어들(Lean/Agda/Coq가 예시로 언급된 걸 본 듯한)은 포매터에 대한 저항이 이해가 가기도 하는데, 요즘은 이런 경우에도 LLM 등을 사용해서 코드 스타일을 최소한의 수준(탭/스페이스 통일, trailing spaces 제거, 괄호 짝 및 인덴트 맞추기 등....)으로는 관리해주면 좋지 않을까 하는 생각을 해본 적이 있습니다 😂

1

@bglbgl gwyng @hongminhee洪 民憙 (Hong Minhee) DSL 정의가 잦거나 좀 많이 유연한 형태로 코드를 작성할 필요가 있는 언어들(Lean/Agda/Coq가 예시로 언급된 걸 본 듯한)은 포매터에 대한 저항이 이해가 가기도 하는데, 요즘은 이런 경우에도 LLM 등을 사용해서 코드 스타일을 최소한의 수준(탭/스페이스 통일, trailing spaces 제거, 괄호 짝 및 인덴트 맞추기 등....)으로는 관리해주면 좋지 않을까 하는 생각을 해본 적이 있습니다 😂

3
6

아는 친구한테 들은 얘기인데, 최근 이직한 회사에서 Python을 쓰는데 린트나 포매터 같은 것도 전혀 설정을 안 해놓고 살고 있기에 도입하자고 했더니 “그런 거 쓸 거면 Python 안 쓰죠”라는 말과 함께 제안을 거절 당했다고 한다. Python에서도 린트나 포매터는 물론이고 타입 체커까지 붙여서 살려면 살 수 있지만, 어쩐지 그런 거 신경 쓸 사람들은 최근 10년 사이에 다들 다른 언어로 넘어가 버리고 그런 거 신경 안 쓰는 사람들만 Python을 계속 쓰게 된 게 아닌가 싶은 생각이 들었다.

9
1
1

언젠가 tuple이란 이름의 (,)를 로고로 쓰는 서비스를 만들고싶다. 웃긴건 정작 뭐하는 서비스인지는 아직 생각을 안 해놓음;; 대충 사람들을 짝지어주는 데이팅 또는 커피챗 주선 서비스면 이름과 어울리지 않을까 싶은데...

tuple
7

https://github.com/Perlmint/ARISU UI라고 할 것도 없지만 claude덕에 rust로 mac 어플리케이션 UI작성과 서버 실행/정지를 구현했습니다. 전에 문제였던 과도하게 친절한 단축키 맵핑은 아무래도 클라가 문제라, 이렇게 된 이상 클라도 만든다라는 방법 밖에 없지만, 일단 만들기 시작한 서버... 다 만들고 나중에 생각하려 합니다.

5

bgl gwyng shared the below article:

청개구리 스택 찬가

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

이 글은 저자가 기술 스택을 선택할 때 주류를 따르지 않고 대안적인 기술을 선택하는 경향, 즉 "청개구리 스택"을 추구하는 경험을 공유합니다. 청개구리 스택은 사용자가 적어 문제 해결에 어려움이 있을 수 있지만, 기술에 대한 깊이 있는 이해와 오픈 소스 기여 기회를 제공합니다. 또한, 후발주자로서 대안적인 설계를 통해 정석 스택보다 나은 이해를 제공할 수 있습니다. 여러 부품을 직접 조립하는 과정은 번거롭지만 각 기술에 대한 깊은 이해를 얻을 수 있게 합니다. 저자는 오늘의 정석 스택도 과거에는 청개구리 스택이었을 수 있음을 지적하며, LLM 시대에도 청개구리 스택이 주는 배움의 기회는 여전할 것이라고 주장합니다. Stack Overflow에 답이 없는 길을 걸으며 얻는 깨달음은 온전히 자신의 것이 될 것이라는 메시지를 전달하며, 독자들에게도 주체적인 기술 선택과 도전을 권장합니다.

Read more →
29
1
3

JS에서 Promise는 await으로 값을 읽는 것 외에, 현재 pending 상태를 읽는 등의 동작을 허용하지 않는다. 이거 왜 안되냐고하면 Promise의 의미론과 배경 철학이 어쩌구저쩌구하는 대답이 돌아온다. 내 생각에 그건 틀렸다. 이유는

간단한 대답: 가능하면서 왜 안해줌?

약간더 복잡한 대답

그 제약 조건은 Promise가 callback과 같은 의미의 다른 표현일때는 성립한다. callback이 전달하는 값은 특정시점 = t에 존재하는 것이다. t이후에 그 값을 사용하기위해선 따로 저장을 해놓던가해서 값의 존재시기를 >= t 로 바꾸어야한다.

그런데 Promise는 await을 여러번 하는걸 허용한다. await x; await x; 이런식으로. 값이 없으면 기다리고, 값이 한번 들어오면 그걸 계속해서 돌려준다. 여기서 Promise가 callback이랑 다른게 드러난다. 그리고 실제로 callback과 다르게 동작하기위해 값의 여부 등을 내부 상태로 갖고있을수 밖에 없다.

요약하면, callback과 완전히 상호호환될때 정당화되는 제약을 callback이 아니면서 강요하니까 문제란 얘기다.

5

내가 지금 바이브코딩을 하고 싶어도 못하는 상황이라 답답한데

bgl gwyng @bgl@hackers.pub

이 글은 앱 개발 과정에서 프론트엔드, 백엔드, 그리고 라이브러리 개발에 AI를 활용하는 경험과 고민을 담고 있습니다. 특히, 간단한 CRUD 작업은 이미 자동화가 가능하지만, 복잡한 mutation 개발에는 테스트 환경 구축이 선행되어야 AI의 도움을 효과적으로 받을 수 있음을 강조합니다. 또한, 라이브러리 개발 자동화의 잠재적 위험성을 지적하며, 이는 코드의 '축적'이라는 특성상 현재 AI 수준으로는 어렵다고 분석합니다. 궁극적으로, 코드 에이전트 사업의 미래와 협업을 통한 코드 축적의 중요성을 역설하며, Gen AI를 넘어선 Zen AI의 필요성을 제기합니다. 이 글은 AI 개발 도구의 현황과 한계를 현실적으로 진단하고, 미래 개발 환경에 대한 깊이 있는 통찰을 제공합니다.

Read more →
7

안녕하세요, 업으로 프로그래밍을 하고 있는 컴퓨터 학부생 김무훈입니다.
현재 3년차 웹 프론트엔드 개발자로서, 다가오는 7월부터 함께할 정규직 포지션을 적극적으로 찾고 있습니다.

최근 학과 사무실에서 졸업 요건을 확인한 결과, 전공 필수 한 과목전공 선택 2학점(총 5학점)이 남아있음을 확인했습니다.
본래는 다음 2학기까지 수료 후 내년 2월에 졸업할 예정이었으나, 교수진과 상의한 결과 취업 및 재직이 확정된다면 수업 이수 방식을 보다 유연하게 결정할 수 있다는 긍정적인 답변을 받아 적극적으로 조기 취업을 추진하게 되었습니다.

이는 전공 필수 과목의 경우에만 해당이 되는 문제이고, 전공 선택 2학점의 경우 앞으로의 여름 학기 현장 실습 또는 다음 학기에 개설되는 하나의 원격 강의로 대체하여 문제가 없는 상태입니다.

지금까지의 업무 경험과 프로젝트는 아래의 포트폴리오에서 확인하실 수 있습니다.
📌 경력기술서 겸 포트폴리오 페이지: https://www.frontend.moe/portfolio/

좋은 인연을 찾을 수 있도록, 많은 관심과 연락 부탁드립니다!

새로 읽으시는 분은 https://www.frontend.moe/resume/ 이쪽 이력서를 확인 부탁드립니다.

본문 내 아웃링크로 걸어둔 경력기술서 겸 포트폴리오 정보량이 너무 많다는 의견을 자주 받아서, 약식화한 RESUME 페이지를 새로 만들었습니다.

3

Javascript/Typescript 생태계에는 소스코드 간 의존관계를 유향그래프(Direct Graph)로 시각화하는 CLI 도구가 있다는 사실... 알고 계신가요? madge, 적극적으로 추천합니다.

그냥 JS/TS 프로젝트 뿐만이 아니라, jsx 파일이 들어간 경우도 의존관계를 아름답게 시각화해줍니다. fedify 소스코드 통독하면서 이걸 적극적으로 써볼까 합니다. 마치.... 탐정이 사건 추적하면서 지도에 X 표시하는 감성으로...

fedify 프로젝트를 그래프로 아름답게 시각화한 모습이다.
10
3

hackers.pub 이라면 계실 것 같아서... 혹시 이 문제를 해결할 만한 천재데이터엔지니어 분이 계시다면 고견을 여쭙고 싶습니다... 블스 한국어 클러스터에 지금 러브휴먼들이 너무 많아서 일반 사용자들이 고생하고 있습니다 그나마 다행인 건 블스에는 사용자 리스트라는 기능이 있어서 저런 러브휴먼 계정들을 넣은 리스트를 블락 리스트로 공유하는데 아무래도 양이 양인지라... 프로그램을 짜서 긁어넣고 있어요 문제는 저런 중간자(?) 계정들이 자꾸 빨려 들어가곤 합니다 그렇다고 제가 직접 일일히 확인하기엔 제 시간과 정신력에도 한계가 있으니... 데이터를 기반으로 걸러내야하는데 어떤 알고리즘? 이 러브휴먼과 그냥 휴먼을 걸러내기 가장 좋을까요? 단순 키워드 정도만 던져주셔도 감사하겠습니다!

3
1
0

Excited to share that I've joined (Open Source Software Contribution Academy) as a mentor for the @fedifyFedify: an ActivityPub server framework project!

OSSCA is a national program run by South Korea's NIPA (National IT Industry Promotion Agency) through their Open Source Software Support Center, aimed at fostering the next generation of open source contributors.

We're currently in the process of selecting around 20 mentees who will start contributing to once the selection is complete. I've been busy preparing good first issues to help them get started on their open source journey.

Looking forward to working with these new contributors and seeing what amazing things we can build together!

And just finished writing a comprehensive contributor guide for the mentees!

You can check it out here—it's Korean though: https://hackers.pub/@hongminhee/2025/ossca-fedify-contributors-guide.

It covers everything from setting up the accounts and development environment to finding good first issues. While it's primarily for the OSSCA participants, anyone interested in contributing to @fedifyFedify: an ActivityPub server framework is welcome to use it as a reference.

Ready to onboard the next wave of developers!

0

Fedify에도 지원했었는데 다른 프로젝트에 참여하게 되었습니다. Hackers' Pub에 Fedify에 넉 달 동안 깊게 빠져들 멘티분들이 많이 계신데, 언젠가 연이 닿았으면 좋겠습니다. 모두 화이팅입니다 🥰

OSSCA 멘티 선발 메일 (Pyodide)
6

화제의 케데헌을 봤는데 재밌고 노래가 좋았다. 일종의 마법소녀물인데, 시간이 짧아서 그런지 마법소녀물의 전형적인 설정들을 '다들 대충 알쥐?' 정도로 빠르게 넘어간다. 그래서 오히려 다 보고나서 마법소녀물에 대해 잠깐 생각을 하게 되었는데.

마법소녀물에서는 소녀들에게 의무가 일찌감치 구체적으로 주어지고 소녀들은 그걸 순순히 받아들이고 이행한다.

소년만화에서는 보통 소년들에게 처음부터 의무가 주어지지 않고 그들 스스로 원피스를 찾겠다거나 호카게가 되겠다거나 하고 선언한다. 유유백서나 블리치처럼 의무가 주어지는 경우에도 약간 임시직의 형태로 주어지고, 주인공 쪽에서도 그걸 순순히 받아들이지 않고 반항한다.

마법소녀물이나 소년만화나 대충 각각 공주랑 왕자가 제자리를 찾는 이야기로 볼수 있다.

마법소녀물에서는 주인공에게 의무를 부여할때 공주의 지위도 같이 준다. 예쁜 드레스도 지어주고 집사도 배정해준다(귀여운 애완동물도 겸하는 경우가 많다).

반면 소년만화의 주인공은 결말에 가까워지기 전까지 반지의 제왕의 아라고른처럼 왕자의 신분을 잃어버린 채로 지낸다. 소년만화의 클리셰로 주인공의 존나쎈 아버지가 있는데, 이게 일종의 승계의 정당성을 부여하는 역할을 한다. 그리고 우리 소년 독자들은 그걸 너무너무 좋아한다.

4

많은 오픈월드 게임이 '정신을 차려보니 어떤 처음보는 공간에 있다가(감옥/실험실/다른 세계 등등) 결국 어찌저찌 세계를 구함' 이런 전개를 따른다. 근데 처음에 시작하는 곳에서 NPC들이랑 언어가 달라서 말이 안통하는 상황으로 시작하는 게임이 있던가? 여태 해본 게임에서는 말이 다 통했던거 같다.

1

@annyeong안녕 그렇네요ㅋㅋ 이세계물이 특히 아무렇지 않게 익스큐즈하는 부분이군요. 그 사이 찾아보니, 노맨즈스카이란 게임에서 외계인의 언어가 점진적으로 이해되는 시스템이 있다 하네요.

0

많은 오픈월드 게임이 '정신을 차려보니 어떤 처음보는 공간에 있다가(감옥/실험실/다른 세계 등등) 결국 어찌저찌 세계를 구함' 이런 전개를 따른다. 근데 처음에 시작하는 곳에서 NPC들이랑 언어가 달라서 말이 안통하는 상황으로 시작하는 게임이 있던가? 여태 해본 게임에서는 말이 다 통했던거 같다.

2
5
5
2
1
  • 솔리드 지원 넣기
  • 스토어 구현 alien-signals 기반으로 교체하기
  • TOE 지원 넣기
  • 페이지네이션 지원 넣기
  • 기타등등 까보면 할거 훨씬 많을듯
0
6

@hongminhee洪 民憙 (Hong Minhee) @bglbgl gwyng 네넹 Nushell 내장 커맨드 및 플러그인들은 지정된 프로토콜에 따라 구조화된 데이터를 주고받고, 외부 커맨드(유저 바이너리들) 실행할 땐 stdin/out에 텍스트 형태로 주고받게 되는 건 맞는데 from 커맨드 써서 다시 Nushell 데이터타입으로 파싱할 수도 있습니다

3

@hongminhee洪 民憙 (Hong Minhee) @bglbgl gwyng 네넹 Nushell 내장 커맨드 및 플러그인들은 지정된 프로토콜에 따라 구조화된 데이터를 주고받고, 외부 커맨드(유저 바이너리들) 실행할 땐 stdin/out에 텍스트 형태로 주고받게 되는 건 맞는데 from 커맨드 써서 다시 Nushell 데이터타입으로 파싱할 수도 있습니다

4
2
2
0
3

@xiniha 아 Nushell을 알고는 있었는데요. 저는 Nushell에서 제공하는 커맨드들이 stdout에 그렇게 뿌리는건줄 알았습니다. Powershell과 마찬가지로 Nushell 자체에 별도의 프로토콜이 있는건가요?

1
0