루비온레일즈에서는 CoC라는 게 있습니다.
Convention over Configuration.
그러니까 설정보다 컨벤션을 더 중시하게 본다는 겁니다.
설정 파일에다가 이것저것 적는 것이 아니라 그저 관행대로 하면 알아서 동작하는 거.

예를 들어서 라우트에 articles란 이름의 경로를 만들면, 이 경로는 articles_controller.rb 와 자동으로 매핑이 됩니다.
그리고 articles_controllerindex 액션은 views/articles/index.html.erb 을 자동으로 찾아서 렌더링 합니다.
이를 위한 어떤 설정도 필요 없습니다. 그저 관행일 뿐입니다.
DB 의 테이블 이름과 모델 클래스의 이름이 항상 동일하다는 것도 CoC의 한 예입니다.

처음엔 이런 관행이 짜증 나기도 했습니다.
왜 모든 테이블 이름이 복수형이어야만 하지?
Person 모델이 있으면 당연히 테이블 이름도 person이어야 직관적이지 않나? 왜 people이라는 복수형을 강제하는 거지?
이런 생각으로 반항하며 대들 때마다 레일즈는 고통을 돌려주었습니다.

초반에는 Rails와 많이 다투면서 이런 고집스러운 녀석과는 같이 못 살겠다 생각을 했었습니다만...
그 장점을 받아들이고 나서 드디어 친하게 지낼 수 있게 되었습니다.
오히려 제약하고 강제하면서 코딩이 만사 편해질 수 있구나 하는 걸 배웠습니다.

그런데 이게 꼭 코딩 시에만 적용되는 것은 아니었습니다.
사내 문화에 이런 걸 적용한 회사도 있었습니다.

카카오에 처음 들어갔을 때 영어 닉네임을 정해야만 했습니다.
그 영어 닉네임은 사람들에게 불리는 내 호칭이기도 했지만, 내 이메일 주소가 되기도 했습니다. 사내 github 주소가 되었고 사내 게시판의 닉네임이 되었습니다.
동료의 메일 주소를 물어볼 필요가 없었습니다. 부르는 이름이 메일 주소니까.
저는 Windows 컴퓨터를 사용해왔지만 얄짤없었습니다. 모든 사람들에게 맥북이 지급되었습니다.
사람들의 자유를 너무 제약하고 강제하는 것 아닌가?

돌아보니 이런 문화들이 마치 레일즈의 CoC처럼 느껴집니다.
회사 문화를 처음 만든 사람들이 레일즈를 워낙 좋아해서 영향을 받은 거 아닌가 하는 의심마저 들었습니다.(웃음)
엄격하게 강제하지만 구성원들이 잘 따르기만 하면 모두가 편해지는 관례.

이런 것이 좋을 때도 있다는 사실을 이제는 받아들입니다.

9

❤️

7 people reacted.

mail@leetekwoo.com 엔지니어링에 관심이 많습니다.

지금까지 다루어 봤던 언어는 아래와 같습니다. MSX Basic Z80 Assembly Pascal GW-Basic C Macromedia Director Visual Basic PHP Flash Actionscript C++ Javascript

그리고 지금은, 하스켈을 비즈니스에 쓰려고 몇 년간 노력하고 있습니다. 지금 상태는, 하스켈 자체를 연구하는 게 아니라, 하스켈 (혹은 함수형 언어) 이해가 어려운 이유를 연구하는 아마추어 연구가쯤 되어버렸습니다. 하스켈 주제로 블로그를 운영 중이지만, 아직은 하스켈 프로그래머라고 자신 있게 말하진 못하고 있습니다. 가끔 이해에 도움이 될만한 측면이 보이면, 가볍게 아이디어를 여러 SNS에 올려보곤 하는데, 그다지 프로그래머에게 쓸모 있는 내용이 포함되진 않는 것 같습니다.

中年(중년)中小企業(중소기업) 開發者(개발자), 90年代(년대) Console Gamer(콘솔 게이머). 좋은 하루를 繼續(계속)해 나아간다. 좋은 하루가 모이면 좋은 人生(인생)이 된다.

韓国人のプログラマー、40代、小学生の息子とゲームするのが幸せ😃💕龍が如く 、ゼルダの伝説、マリオ、ピクミン好き

「いい1日を続ける」
いい1日を続けていけば、いい人生になる!

이것저것 다 보는 오타쿠. 종종 몰아서 글을 올립니다. 팔로우 전에 혹시 잘 맞지 않는 장르는 없는지 꼭 확인해주세요.

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

🤔

2 people reacted.

Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!

Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.

FedifyHolloBotKit、そしてこのサイト、Hackers' Pubを作っています。

嗨,我是 FedifyHolloBotKit 以及這個網站 Hackers' Pub 的開發者!