Profile img

정진명

@jjme@hackers.pub · 44 following · 35 followers

약력은 비워둘 수 없습니다.

GitHub
@jjmenet
1
4

정진명 shared the below article:

아보카도 있었어

정진명의 굳이 써서 남기는 생각 @jm@guji.jjme.me

아내가 남편에게 말했다. "가서 장 좀 봐 줄래? 우유 하나 사오고 아보카도 있으면 여섯 개 사 와."
얼마 후 남편이 우유 여섯 개를 들고 돌아왔다.
아내가 말했다. "왜 우유를 여섯 개나 사 왔어?"
남편이 답했다. "아보카도 있었어."
- r/dadjokes에 올라온 버전

사람들은 이 유머를 보고 "남편이 프로그래머" 같은 식으로 이야기를 하지만, 엄밀히 말해 프로그래머는 이렇게 행동하지 않을 것이다: 아내와 같은 의도를 지녔을 때, 컴퓨터가 남편처럼 행동하지 않게 만드는 것이 프로그래머가 하는 일(중 하나)이기 때문이다.

이 유머를 이해하지 못했다는 사람을 위해서 남편의 행동 양식을 코드로 작성해서 보여주는 것을 트위터에서 보기도 했는데, 기억을 더듬어 보자면 다음과 같은 코드이다.

milk_amount = 1;
if (they_have_avocados) {
  milk_amount = 6;
}
buy_milk(milk_amount);

이런 코드를 작성하는 것은 유머를 즐기는 방법 중 하나이긴 하지만, 설명으로서는 부적절하다고 생각한다: 사실 "(아내는 아보카도가 있으면 아보카도를 여섯 개 사오라는 거였는데) 남편은 아보카도가 있으면 우유를 여섯 개 사 오라는 말로 이해했다"라고 말로 설명하는 것과 무엇이 다른가? 남편이 왜 그렇게 이해했는지를 설명해 주는가? 그 지점에서 저 코드는 말로 설명하는 것과 차이가 없다.

사실, 아내의 말에서 "아보카도 있으면"과 "가기전에 냉장고 한번 보고 우유 하나도 없으면"은 어느 것을 넣어도 문장을 형식적으로 성립시키고, 의미적으로도 성립시킨다. 달라지는 것은 '여섯 개'가 무엇을 가리켰을 것이냐고 (합리적으로 생각했을 때) 이끌어낼 수 있는 부분이다. 이것은 주어진 글의 형식만으로는 결정할 수 없다. 이 유머를 이해하지 못하는 것은 다음을 이해하지 못하는 것이다. 이 유머가 시사하는 저 문장의 중의성, 아니 저 문장이 중의적으로 해석될 여지가 있다고 기어이 생각하는 사람들을 말이다. 그리고 우리 주변에서 볼 수 있는 그런 사람들은 보통 프로그래머다.

아니 아무리 그래도, 엄밀히 말해 프로그래머는 이렇게 행동하지 않을 것이다…….

Read more →
0
14

요즘 약간 AI 코딩 에이전트 도입 엔지니어처럼 일하고 있다. 코딩 경험이 없는 사람이 스스로 프로토타입을 만들 수 있도록

  • React 기반 프로토타이핑
  • Ren'Py 기반 프로토타이핑 을 ChatGPT Codex와 만들어갈 수 있도록 안내하고 셋업하고 트러블슈팅함….
1

요즘 약간 AI 코딩 에이전트 도입 엔지니어처럼 일하고 있다. 코딩 경험이 없는 사람이 스스로 프로토타입을 만들 수 있도록

  • React 기반 프로토타이핑
  • Ren'Py 기반 프로토타이핑 을 ChatGPT Codex와 만들어갈 수 있도록 안내하고 셋업하고 트러블슈팅함….
2

오이카페에 ActivityPub 지원이 들어갔습니다. 이제 좋아하는 작가나 커뮤니티의 새 그림을 연합우주에서도 받아 보세요!

작가 프로필이나 커뮤니티 메인 페이지에서 ActivityPub 핸들을 확인할 수 있습니다.

인용된 그림은 ActivityPub 연동을 도와주신 @hongminhee洪 民憙 (Hong Minhee) 님이 오이카페 초창기에 그려 주신 고양이 그림입니다. 감사합니다!

14
1
0

한국어로 쓰다가 '―' 문자를 넣는 순간 해커즈펍 자동 언어 인식 기능이 이 포스트를 러시아어로 인식하는 것을 발견(신세벌식 P2 배열을 통해 입력한 줄표)

2
1

CV 겸 개인 홈페이지였던 사이트를 아예 커스텀 블로그로 바꾸면서... 어제 슬쩍 홍보를 올렸는데요

https://theeluwin.github.io/

Pelican으로 만들고 GitHub Pages로 배포를 했는데, 급하게 수정할게 있어서 추가 commit을 했더니 갑자기 README를 기반으로 한 디폴트 페이지로 바뀌었습니다;;;

그러니까 기존 배포 A, 리뉴얼 배포 B, hot-fix 배포 C 이렇게 세개가 있으면, C를 했는데 실패해서 (실패 원인: GitHub Action이 새벽에 일시적으로 불안정했음) 당연히 B가 나올줄 알았는데, A도 B도 아닌 README 기반의 만든적도 없는 배포 X가 나왔습니다... 왜였을까요...? Action 사용하기 이전 시절의 (Jekyll 등을 지원하던) GitHub Pages 빌드 방식이 남아있어서 뭔가 꼬였는지...

암튼 블로그 많이 놀러와주세요,,, 게임 추천으로 시작합니다 (포스트도 아니고 인덱스 페이지에서)

9
1
0

내가 기술 포스팅을 하지는 않지만, 할 수 있다면 코드조각이 오른쪽 정렬되어 있는 포스트를 작성해 보고 싶다. 인터넷을 찾아보면 어딘가에 여전히 있을 "가운데 정렬된 코드" 포스트의 미학을… 내 나름대로 계승하고 발전하고 싶은 심정이다.

0

Fedify를 활용하여 제가 만드는 텍스트 전용 블로깅 플랫폼인 타이포 블루에 연합우주 기능을 구현했습니다. 많은 관심 부탁드립니다!

14
0
0
3

Hackers' Pub의 로고 디자인이 완료되었습니다! 디자인은 박은지 님(@murinono무리노노)께서 해주셨습니다.

연합우주라는 콘셉트에 맞게 고양이의 입 주변을 별 모양으로, 목 아래에도 고리(orbital ring) 모양으로 디자인했습니다. 고양이를 고른 이유는 소프트웨어 프로그래머 커뮤니티에서 다른 동물보다 유독 고양이가 사랑 받기 때문이기도 하고, 고양이가 호기심이 강하기 때문이기도 합니다.

로고 디자인은 CC-BY-SA 4.0 라이선스로 배포됩니다.

23
1
1
1
0
0

전화기 앱 개발을 별로 하고 싶지는 않은데, 딱 하나 있었으면 하는 앱이 있다. 다른 기능 없이, 그냥 123456789*0# 버튼 있고, 누를 때마다 도레미파솔라시도레미파솔 키음이 나는 기능이 있는 앱이 있었으면 좋겠다. 좀 더 욕심을 내자면, 버튼이 한 두 개 정도 더 있어서 파샵이랑 시플랫정도는 있었으면 좋겠다. 이게 없는 전화기는 내게 완전한 전화기가 아니다. 아쉽게도, 첫 스마트폰으로 아이폰4를 산 이후로 나는 완전한 전화기를 겪어보지 못했다.

5
1

블로그 유입 만들어내기 어렵다. html title이 너무 짧으면 검색에 문제가 있을 수 있는 것 같아 포스팅 이름이 짧아도 블로그 이름과 이어서 표시하게 만들었다. 어렵다.

1
1

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

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

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

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

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

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

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

3
2

리액트 작업하면 vs code 탭 두 개 한 화면에 브라우저 한 화면에 디자인 전달받아서 하면 figma나 시안 확인용 화면 하나에 모니터 세 개쯤은 있어야 하던데 노트북만 들고 카페에서 코딩하는 건 어떤 종류의 작업일까….

5
  • 서울국제도서전에 갑니다.
  • 쉽니다.
  • 블로그 글을 씁니다.
  • 책을 읽고 게임을 합니다.
3
2

이웃집에 자녀가 둘이 있다는 건 알고 있었는데, 오늘 아침 아내가 그 집 아들을 만나 인사했다고 한다. 그 얘기를 듣고 그럼 다른 아이는 딸일 확률이 높겠네 라고 말했더니 아내는 별 말 없이 고개를 끄덕였다. 이 때 내 아내가 이과 전공자일 확률은?

2

안녕하세요, 페미위키 개발팀입니다. 개발팀 활성화를 위해 이리저리 둘러보다 해커스펍에 대해 알게 되었습니다. 여건이 되면 페미위키 개발에 대해서 얘기할 수 있는 기회를 만들어보려 합니다!

더불어 페미위키 개발팀에서 오픈소스 컨트리뷰터 & 개발팀을 모집합니다! 페미니스트시라면 정체성 불문, 거주국 불문하고 모시고 있습니다. 함께 페미니즘 정보집합체 만들어가요!

페미위키 오픈소스 컨트리뷰터 & 개발팀 모집1. 우대 사항:

페미위키 편집 경험이 한 번 이상 있으신 분
AWS 경험이 필요하신 분
사실상 표준이 아닌 기술/서비스에 거부감이 덜 하신 분 (예: Vue.js, Less.js, GitLab, Nomad, PHP)
기억 나는 리눅스 명령어가 세 개 이상인 분
ARM 서버 운영 경험이 있으신 분
JS를 TS로 변환하면 개운하신 분
GitHub Actions 사용 경험이 있으신 분
PHP 문법을 기억하시는 분
git rebase를 쳐본 적 있으신 분
오픈소스를 사랑하시는 분2. 업무 내용

신규 프로젝트
* 레벨 제도
* 프로필 페이지
* 게이미피케이션 / 도전과제
* HA 구성

상시 업무
* 서비스 모니터링
* 버그 수정
* 기술 지원
* 소프트웨어 업그레이드관심 있다면 망설임 없이 https://github.com/femiwiki 접속!
8
0
1
1
1
1

Hackers' Pub에 공유할 수 있는 초대 링크 기능을 추가했습니다. 설정 → 초대 페이지에서 초대 링크 생성이 가능하며, 초대 링크는 정원이나 유효 기간, 메시지를 정할 수 있게 되어 있습니다. 아무래도 DM으로 직접 초대 요청을 달라고 하면 쑥스러움이 많은 분들은 요청을 안 하시는 경우가 많은 것 같아서 만들게 되었습니다. 참고로, 초대 링크를 통해 가입한 사용자는 초대 링크를 생성한 사람과 자동으로 맞팔하게 됩니다.

초대 링크는 생성하는 화면초대 링크 페이지
9
2

"나는 예전에는 글을 많이 쓰곤 했다. 아이디어가 떠오르면 적어두고, 시간을 들여 신중히 다듬어서 하나의 작품으로 만든 다음, 완성되면 세상에 공유했다. (...) 하지만 이제는 아이디어가 떠올랐을 때 엉성한 단어 몇 개만 프롬프트에 밀어 넣으면 즉시 완성된 생각이 얻어진다. AI가 아이디어를 너무나 쉽게 구체화할 수 있기 때문에, 아무리 발전된 아이디어라도 내 생각을 공유하고 싶은 마음이 덜 든다." 요즘 내가 글을 안(못) 쓰는 이유와 일맥상통. dcurt.is/thinking

2
2
7
0
0
2

범주론 다이어그램 테스트

G cluster_0 Man Category MAN cluster_1 Batman Category BAT Man Man Car Car Man->Car drive Batman Batman Man->Batman Bat-Functor Batcar Batcar Batman->Batcar Batdrive
3
  1. 휴관하는 도서관에 책 50권 빌리러 가기
  2. 쉬기
  3. 블로그 포스팅 작성
2

게임쪽 개발자 컨퍼런스에서 생태계 관련 타일 상태 계산을 위해 병렬처리를 쓴 세션을 들은 적이 있는데, 이것저것 병렬처리를 하면서 배운 것에 대한 회고 세션이었지만 정작 마지막에 병렬이랑 무관하게 sparce matrix 구조 적용하니까 금방 끝났다는 내용이었어서 허탈했던 적이 있었다….

왜 이 이야기가 갑자기 생각났냐면, '연구자의 코드'를 1,000배 빠르게 고쳤다는 이야기를 보고 생각났기 때문이다. 우리 연구실 코드는 중요 전역 변수로 __, _ 써서 지켜보던 전산전공자를 경악하게 만든 코드지만, sparce matrix 구조는 적용했었다.

1

게임쪽 개발자 컨퍼런스에서 생태계 관련 타일 상태 계산을 위해 병렬처리를 쓴 세션을 들은 적이 있는데, 이것저것 병렬처리를 하면서 배운 것에 대한 회고 세션이었지만 정작 마지막에 병렬이랑 무관하게 sparce matrix 구조 적용하니까 금방 끝났다는 내용이었어서 허탈했던 적이 있었다….

1

정진명 shared the below article:

함수형 언어의 평가와 선택

Ailrun (UTC-5/-4) @ailrun@hackers.pub

이 글은 함수형 언어의 핵심 개념을 람다 대수를 통해 소개하며, 함수형 언어의 평가 방식에 대한 깊이 있는 이해를 제공합니다. 람다 대수의 기본 요소인 변수, 함수, 함수 호출을 설명하고, 값에 의한 호출(CBV)과 이름에 의한 호출(CBN)의 차이점을 명확히 분석합니다. 특히, 폴 블레인 레비의 "값 밀기에 의한 호출(CBPV)"을 소개하며, 이 방식이 CBV와 CBN을 모두 포괄할 수 있는 강력한 도구임을 강조합니다. CBPV가 함수와 함수 호출을 스택 기반으로 어떻게 다르게 해석하는지, 그리고 이를 통해 람다 대수를 기계 수준으로 컴파일할 때 얻을 수 있는 이점을 설명합니다. 항수 분석과 같은 최적화 기법을 CBPV를 통해 어떻게 더 명확하게 표현할 수 있는지 보여주며, GHC 컴파일러의 중간 언어로서 CBPV의 중요성을 부각합니다. 이 글은 함수형 언어의 깊은 이론적 배경과 실제 컴파일러 구현 사이의 연결고리를 탐구하고자 하는 독자에게 유용한 통찰력을 제공합니다.

Read more →
15
3
0

feedly를 잘 쓰고 있지만 ghost pro의 activityPub 인터그레이션 사용 감각도 괜찮아서, 이걸 충분히 많은 블로그와 웹툰(xkcd도 rss feed를 발행한다) 등이 적용한다면, 연합우주를 좀 더 적극적으로 쓸 수도 있을 것 같다.

2

해커뉴스에서 Fabrice Bellard의 QuickJS가 한 파일에 5만줄 집어 넣고 한 함수가 몇백 몇천줄 되는 걸 보고서 파일 및 함수 길이를 강력하게 제한하는 도그마가 항상 옳은 것은 아니다, 라는 코멘트를 보았는데 이는 반만 맞는 말이다. 나도 대부분의 개발자보다 파일이나 함수 길이에 훨씬 관대한 (그리고 이 사실을 한참 뒤에야 깨달은) 사람이라 아는 건데, 그냥 Bellard가 5만줄 전체의 맥락을 전부 기억하고 있고 해당 코드를 거의 Bellard만 건들고 있기 때문에 추가적으로 모듈화할 필요가 없는 거고, 대부분은 그 정도의 기억이 불가능하기 때문에 여럿이 같이 짜는 코드라면 최저치에 맞춰서 파일이나 함수 길이를 줄일 필요가 있다고 하는 것이다. 지나친 도그마를 부정하는 것도 중요하지만 도그마가 생긴 진짜 이유를 파악해서 취사 선택하는 것이 더 중요한 이유.

0
0
2