태그 보관물: korean translation

idiomatic.js (자바스크립트 코딩 일관성을 위한 가이드라인) 한글문서 소개

engfordev.com 에서, 누구나 참여하는 개방형(?) 공동번역을 진행하고 있어요.

이번에는 idiomatic.js -자연스럽고 일관성 있게 자바스크립트 코딩하는 원칙- 을 번역했고요.

JavaScript 를 공부하고 계시거나, 관심있으신 학생이나 개발자에게 도움이 될 것 같습니다. 혹시 JavaScript 를 이용해서 프로젝트를 진행하거나, 협업하는 경우에 한번 고려해볼 만 하기도 하고요. (물론 이 문서에 나온 그대로 따르기 보다는 적절하게 일관성을 갖춰 하는게 포인트겠지만요)

원문 링크 (English) : https://github.com/rwldrn/idiomatic.js/ – Principles of Writing Consistent, Idiomatic JavaScript

한글 링크 (Korean) : https://github.com/EngForDev/idiomatic.js/tree/ko/translations/ko_KR – 자연스럽고 일관성 있게 자바스크립트 코딩하는 원칙

한글 번역에 참여해 주신, engfordev 의, 홍환민(Hwan Min Hong) / 권민택(MinTaek Kwon) @leoinsight / 심태원(Tw Shim)@marocchinogithub / 김나솔(Nassol Kim) @nassol99github / 심민규 / 원강민 / 유정협 /이대엽 님 감사합니다.

engfordev 에서의 작업에 대한 정리글은 요기 ( http://opentutorials.org/course/167/1363 ) 에 있습니다.

 

태그 지정됨 , , , , ,

git – the simple guide (Git – 간편가이드)

작년 여름즈음부터 Github 을 쓰기 시작했다.
kenu 형님 덕분에 알게 되었고, OKJSP 소스도 Github 에 오픈되고 관리되기 시작했던 터라 그때부터 처음 사용하기 시작했다.

Github 은 GIT 을 기반으로, 저장공간을 제공해 주어 소스 관리를 할 수 있다. 다양한 개발자들을 팔로우 할 수 있고, 다른 개발자들의 소스 코드를 포크해서 내 저장 공간에서 추가하거나 수정할 수도 있다. 원저작자에게 요청도 보낼 수 있고… 뭐 암튼 각설하고, 이 Github 에서 놀려면 GIT 선수지식이 필요하다.

개인적으로 CVS 를 거쳐 SVN 만 써오다가, 처음 접한 GIT 은 좀 생소한 느낌이었다. 뭐, 지금은 오히려 SVN 보다 GIT 이 더 가까운 느낌이지만…
암튼, 사용해 가면서 시간과 경험으로 저절로 깨달을 수도 있지만, GIT을 처음 접하는 사용자에게는 심플한 가이드를 보는 게 이해하기도 쉽고, 거부감이 적다. rogerdudler 란 분이 올린 git 심플 가이드를 우연히 보게 되었는데, 처음 접하는 사용자들에게는 꽤 도움이 될 것 같다. 거부감도 안들것 같고..

그래서 이번에도, 한글 번역을 했다. -_-;; 지난 번 오픈 소스 관련 번역 포스팅을 올리고 나서, 번역 품질에 대해 자문해 보고 영어 실력을 쌓기 전까지 한동안 영문 번역은 안하려고 했는데, 이건 영어도 어렵지 않고 해서, 읽어가는 겸 번역해 봤다.

git – the simple guide (English) : http://rogerdudler.github.com/git-guide/

git – 간편가이드 (한글화) : http://rkjun.github.com/git-guide/index.ko.html (제 계정으로도 접속은 가능하지만, 가급적이면 위 또는 아래의 오리지널 링크를 이용해 주세요)

git – 간편가이드 한글판 정식링크 :http://rogerdudler.github.com/git-guide/index.ko.html

(원작자에게 Push Requests 요청을 보내놓은 상태이기는 한데 언제 반영될 지는 알 수 없으므로, 한글화 페이지는 내 Github 계정의 링크를 걸어둔다.)

2012.03.01 [추가] 현재, 원작자 rogerdudler 의 저장소에 이미 Pull Requests 요청이 반영되어 있으므로, 원작자의 링크에서 한국어 링크를 클릭해도 되고, 한글판 정식링크를 클릭하셔도 됩니다.

끝으로 Github 예찬을 해보자면,
다른 개발자들의 소스도 감상(?) 할 수 있는 좋은 학습도구이자, 놀이터중 하나다. 게다가 개발자들과의 교류를 표방하고, 최근에는 소스뿐 아니라 문서관리까지 활발하게 이루어지고 있고···. 거기다 Github 과 연동되는 heroku 나, cloud9 IDE 등과 같은 호스팅, 웹 개발툴 등도 늘어나는 추세고···.
고로, Github 을 알면, 개발자로서의 삶이 더 재밌(고 즐겁)다.

태그 지정됨 , , ,

Open Source for You (한글번역)

이 글은, 호주에서 오픈 소스 개발자로 활동하고 있는 Stephen McDonald (@stephen_mcd)의 글을 번역했습니다. 읽고 느낌이 좋아, 번역해 보려고 했는데 쉽지는 않군요. 원문의 뜻이 잘 전달되기를 바래봅니다. (오역 또는 더 나은 번역이 있다면, feedback 주세요.)

+2012년 3월 6일, engfordev.com 의 피드백 (GoogleDocs:http://bit.ly/xdxahu)을 받아서, 번역품질을 높였습니다. 참여해주신 nassol님, 원강민님 감사합니다.

출처 (원문 English) : http://blog.jupo.org/2011/09/12/open-source-for-you/

작성일 : 2011년 9월 12일
작성자 : Stephen McDonald

오픈 소스는 여러분을 위한 것

나는 얼마전, 내가 일하는 회사의 개발팀을 대상으로 오픈 소스 활동에 관한 프리젠테이션을 하게 되었다. 오픈 소스에 대한 사람들의 공통된 인식은 대략 이러했다. 오픈 소스 커뮤니티에서 개인은 보상을 거의 받지 않고, 이타주의적인 마음을 가지고 운영하는 거대한 사회적 히피집단 같다는 것이 오픈 소스 커뮤니티에 대한 공통된 인식이었다. 나는 이런 근거 없는 믿음을 깨뜨렸다. 그리고 오픈 소스 커뮤니티에서는 사람들이 자신을 위해, 그리고 자신의 이익을 위해 오픈 소스 활동에 참여한다고 설명하였다. 내가 초점을 맞춘 부분에는 몇가지 불편한 진실도 있기는 했지만, 개발팀은 발표내용을 잘 받아들였다.

힘들고 짜증나는 업무(는 이제 그만), 프로그래밍을 다시 즐거운 놀이로 만들자

만약 여러분이 전형적인 회사에서 9시부터 5시까지 일하는 정규직 소프트웨어 엔지니어라면, 여러가지 이유로 인해 업무에 짜증을 느끼고 있을 가능성이 높다. 여러분은 항상 같은 종류의 프로젝트에 참여하고, 같은 기술을 가지고 일을 해야 한다. 심지어는 낡은 기술을 사용하기도 하고. 사실 그 기술보다 더 세련된 기술이 존재하지만, 회사에서는 아직 검증되지 않았다는 이유로 실무에 적용하는 것을 허락하지 않을 것이다. 또한 일정의 마감시간도 지켜야 하고. 마감시한은 최대한 빨리 기능들을 만들어 내도록 요구하기 때문에 (그것은 결국 결과물의 품질에 좋지 않은 영향을 주고) 여러분은 때로 개발자로서의 자존심을 버리고, 막코딩을 하게 된다.

만약 이런 일이 여러분의 유일한 프로그래밍 경험이라면, 금방 싫증도 나고, 모든 게 전혀 재미도 없을 것이다. 하지만 정반대의 경우라면, 프로그래밍은 정말 굉장히 재밌을 수 있다! 이렇게 상상해 보자. 여러분의 회사에 수백가지의 프로젝트가 있다. 그리고 여러분은 그 중에 여러분이 원하는 하나의 프로젝트를 선택할 수 있다고. 게다가, 회사에서는 여러분이 원하는 기술을 사용할 수 있도록 허락하고, 최종 결과물이 충분히 멋지게 나올 때까지 일정을 주겠다고 말한다. 마치 슈퍼 개발자처럼. 꿈처럼 들린다고? 아니, 오픈 소스 프로젝트를 할 때 만큼은 여러분이 슈퍼 개발자이다. 업무를 고르고, 사용할 기술을 선택하자. 일정도 마음대로 짜자. 그리고 제품의 품질까지도 말이다.

협업을 통해 더 훌륭한 개발자가 되자

더 좋은 개발자가 되기 위해서는 두가지 방법이 있다: 하나는 코드를 작성하는 것이고, 다른 하나는 코드를 읽는 것이다.
혼자서만 개발하면 이 두가지 방법을 쓸 수가 없다. 자신이 작성한 코드를 읽으면 흐뭇할지는 몰라도 배우는 게 별로 없다. 그리고 혼자 코드를 작성할 수는 있겠지만, 스스로 배우는 것 외에는 아무런 교훈이 없을 것이다. 너무나 당연하지만 진짜로 배우는 것은 다른 개발자들과의 상호작용하는 과정에서 나온다. 다른 개발자들이 검토해보고 피드백을 줄 수 있는 코드를 작성하면서 말이다. 그리고 더 많은 경험을 가진 개발자가 작성한 코드를 읽으면서, 그리고 여러분과는 다른 접근법을 가진 개발자가 쓴 코드를 읽으면서 진정 뭔가를 배울 수 있다.

여러분이 일하는 회사에 대해 생각해 보자. 여러분이 직접 협업하는 개발자는 몇명이나 되는가? 두세명? 열댓명? 작은 집단에서도 여러분은 많은 것을 배울 것이다. 그러나 배우는 범위 면에서는 아무래도 한계가 있을 것이다. 오픈 소스 커뮤니티는 수천명의 개발자들이 있다. 그리고 이들은 수년간 수백만 줄의 코드를 작성했다. 이들은 여러분이 일하는 곳을 벗어나지 않고서는 접할 수 없는 품질의 코드를 작성한다.

금전적 수입을 얻자

오픈 소스 개발에 대해 오해가 많이 있는데, 그 중 가장 심한 오해중 하나는 오픈 소스 개발에 참여해서 돈을 벌 수 없다는 것이다. 어느 정도까지는 사실이지만, 실제로 금전적인 수익을 낼 수 있는 몇가지 방법이 있다. 직접적인 방법도 있고, 간접적인 방법도 있다.

여러분은 고정된 직장을 가진 상태일수도 있다. 그리고 자신이 고정수입을 갖는 월급쟁이라고 생각할 수도 있다. 다음 수입이 어디서 나올지 알 수 없는 프리랜서나 사업가와는 다르다고 생각할지도 모른다. 미안하지만 틀린 생각이다. 여러분의 사장과 마찬가지로 여러분도 사업을 하는 것이나 다름없다. 여러분에게는 고객이 한 명있다. 바로 여러분을 고용한 사장이다. 어떤 때에는 이 직장 일에 얽매여 있다고 느낄 지도 모른다. 하지만 실은 한 명의 고객에게 얽매여 있는 셈이다.

그럼 더 많은 고객을 만들고, 더 좋은 고객을 만들기 위해선 어떻게 해야 할까? 답은 여러분의 비지니스 코스를 홍보하는 거다. 오픈 소스는 여러분의 개발자로서의 능력과 여러분을 더욱 돋보이게 해주는 멋진 방식을 제공해준다. 오픈소스 프로젝트에 참여하면 여러분은 개발자로서의 능력을 더욱 돋보이게 하는 기회를 얻을 수 있다.
그래픽 디자이너와 개발자들은 항상 화려한 포트폴리오를 보여줄 수 있다. 고용 가능성이 있고, 고용 협상에 대한 자리에서 오픈 소스에 참여한 경험은 이미 열정으로 가득 차 있다는 걸 입증해 주고, 그러므로 그 자리에서 그러한 능력을 보여줄 필요도 없이, 다른 사람들보다 더욱 유리한 입장에 설 수 있다.

오픈소스 프로젝트를 일정 품질에 준하게 만들고, 사람들이 이 프로젝트를 사용하여 실제로 무언가를 만든다면, 이 자체만으로도 큰 성과이다. 이로부터 돈을 받고 일할 수 있는 기회가 생겨난다. 오픈소스 프로젝트를 사용하는 기업 사용자의 경우에 기업에 맞게 소프트웨어를 커스터마이즈해달라고 요청할 수도 있다. 또한 이들이 여러분이 생각지도 못했던 좋은 기능을 프로젝트에 추가해달라고 요청할지도 모른다. 이런 과정을 통해 여러분의 프로젝트는 한 단계 업그레이드 될 것이다. 이런 기능을 제일 잘 개발할 수 있는 사람은, 최초개발자가 아니고 누구이겠는가? 나는 이런 경험을 직접 몇 번 하였고, 몇몇 회사에서는 내가 생각했던 기능을 추가하는 것에 대해서 금전적인 지원을 해주었다. 지원을 해주지 않았더라도, 나는 그 기능을 어쨌든 개발했을 것이다.

기술 이외의 경험을 폭넓게 하자

코드를 작성하는 것은 소프트웨어 개발의 전체 과정중 일부분에 불과하다. 성공적으로 제품을 판매하는 전 과정에 관한 많은 학문 분야들이 있다. 이런 학문에는 프로젝트 관리, 커뮤니티 구축, 격식을 갖춘 글쓰기, 제품 개발 및 마케팅이 있다. 프리랜서나 1인 기업의 경우에는 이런 학문 분야를 접할 기회가 있을지도 모른다. 그러나 일반 회사에서 일하는 개발자의 경우에는 매일 코딩 외에는 다른 분야를 접할 기회가 없다.

오픈 소스 프로젝트를 운영해보면, 기술(technology) 이외의 분야에 관한 스킬을 익힐 수 있을
것이다. 나는 내 프로젝트 중에서 가장 인기있는 프로젝트 관련 작업을 하는데 시간을 많이 쓴다. 이 시간중에 코딩 작업에 쓰는 시간은 그 비중이 얼마 안된다. 시간 중 대부분은 다른 개발자들과 기능에 대한 아이디어를 나누고 토론하는데 쓴다. 어떤 기능을 넣을지, 뺄지를 의논하는데 쓴다. 이런 작업은 어렵기는 하지만 멋지고 의미있는 경험이다.

이런 일들에서 알 수 있듯이, 오픈 소스에 참여하고 싶어하는 많은 사람들이 기술적인 분야와는 무관하므로 자신은 기여할 무언가가 없다고 생각한다. 하지만, 모든 것은 연관되어 있어서 기술과는 관련없는 부분이 가장 유익한 참여중 하나라 볼 수 있다. 만약 여러분도 그렇다면, 시작을 주저하지 말아야 한다. 여러분의 참여는 상상이상으로 큰 의미가 있다.

좋은 사람이라고 느끼기

오픈 소스 참여의 가장 확실한 장점은, 애타주의로 타인에게 도움을 주는 거라고 생각한다. 전에도 얘기했지만, 작지 않은 오픈 소스 프로젝트를 관리하는 일은 고생을 동반하게 된다. 오픈소스에 참여하다보면 좋을 때도 있고 나쁠 때도 있다. 때로는 끝이 없는 일처럼 느껴지기도 한다. 하지만 가끔, 나는 어떤 동기를 가진 공개모임에서가 아닌, 순수한 진심을 담은 개인적인 감사 메일을 받기도 한다. 직접 해보기 전까지는 그 일이 딱히 의미가 있다고 생각해본 적은 없었다. 내가 실제로 직접 경험해 보고 나니, 진정한 긍지와 만족감을 채워주고 궁극적으로 모든 것을 가치있게 만들어준다는 것을 알게 되었다.

지금 당장 시작하자

중국의 철학자 노자는 이렇게 말했다:

천리의 여행도 한 걸음에서 시작된다.
(千里之行 始於足下)

시작하려고 하는데 겁이 날 수도 있다. 작은 것부터 시작하자. 여러분의 오픈소스는 아무에게도 쓸모 없을 것이라고 내면에서 속삭이는 목소리를 무시하자. 그럴 수도 있다. 하지만 그래도 상관없다. 그래도 하자. 내 프로젝트 중 많은 것은 몇 십줄 짜리 코드였다. 그런데 사람들은 내가 상상하지도 못했던 방식으로 그 소스를 유용하게 사용하였다.

아이디어는 잘 오지 않는다. 내 아이디어중에 대부분은 내가 아쉬워했던 것들이었다. 예를 들어 내가 관심있는 기술 영역에서 제품이 개발되어 있지 않는 경우에 내가 개발할 수 있겠다는 생각에서 개발 아이디어를 얻었다. 또는 내가 일상적으로 하는 루틴한 것들을 자동화하거나 개발할 수 있겠다는 지점에서 아이디어를 얻었다.

여러분이 어떤 오픈소스 소프트웨어를 사용하는데, 소프트웨어가 완벽하지 않을 수도 있다. 여러분이 생각하는 것과는 다른 방식으로 작동할 수도 있고, 또 어떤 부분은 도움말에 나와 있지가 않아서 찾기 위해 고생해야 할지도 모른다. 요즘은 이런 일이 있을 때, 무려(!) 공짜로 사용하고 있는 소프트웨어에 대해서 원하는 대로 작동하지 않는다고 불평만 하고 두 손 들고 포기해 버리는게 기본 반응인 듯 하다. 그러지 말자. 그 문제에 대해 여러분이 할 수 있는 게 있다. 소스 코드를 살펴보자. 뭔가 손을 빌려주자. 자신의 능력도 향상시키고, 뭔가를 만들어가는 과정의 일부가 되자.

출처 (원문 English) : http://blog.jupo.org/2011/09/12/open-source-for-you/

태그 지정됨 ,