[ IT 열 쇳 말 ] 노드 JS - 공개 SW 포털 
 OSS 2016 - 06 - 23 10 : 57 : 05 2201 
 2016 년 4 월 28 일 ( 목 ) 
 웹 개발 은 크 게 둘 로 나뉜다 . 프론트엔드 ( Front - end ) 와 백 엔드 ( Back - end ) 기술 이 다 . 프론트엔드 는 웹 페이지 디자인 이나 버튼 기능 처럼 사용 자 가 바로 볼 수 있 는 부분 이 다 . 백 엔드 는 사용 자 가 눈 으로 볼 수 없 는 뒷 단 기술 이 다 . 백 엔드 는 서버 단 기술 이 라 불리 기 도 한다 . HTML , CSS 등 이 대표 적 인 프론트엔드 기술 이 며 , DB 나 서버 를 다루 는 부분 이 백 엔드 기술 이 다 . 
 자바 스크립트 는 프론트엔드 분야 에서 주로 활용 됐 다 . 그런데 ‘ 노드 JS ’( NodeJS ) 가 등장 하 면서 그 용도 가 전혀 달라졌 다 . 노드 JS 라는 프레임워크 덕분 에 자바 스크립트 로 서버 단 기술 까지 제어 할 수 있 게 된 것 이 다 . 2009 년 혜성 같이 등장 한 노드 JS 는 웹 개발자 에게 많 은 관심 을 받 고 있 으며 , 최근 재단 까지 설립 되 며 기술 개발 이 활발히 이뤄지고 있 다 . 
 ▲ 노드 JS 로고 ( 출처 : https : / / nodejs . org / en / about / resources / ) 
 조이 엔 트 에서 시작 한 오픈 소스 기술 
 노드 JS 는 자바 스크립트 엔진 ‘ V 8 ’ 위 에서 동작 하 는 이벤트 처리 I / O 프레임워크 다 . 서버 환경 에서 자바 스크립트 로 애플리케이션 을 작성 할 수 있 도록 도와 준다 . 노드 JS 의 장점 은 비동기 프로그래밍 이 다 . 동기 프로그래밍 은 무엇 인가 요청 하 면 결과 를 즉시 받 는 것 을 의미 한다 . 비동기 는 이벤트 를 요청 하 고 바로 결과 를 받 지 않 아도 된다 . 따라서 결과 값 을 기다리 지 않 고 보다 다양 한 요청 을 처리 할 수 있 다 . 웹 분야 에서 는 비동기 프로그래밍 을 쓰 는 경우 가 드물 었 는데 , 노드 JS 로 비동기 프로그래밍 을 비교 적 쉽 게 할 수 있 게 됐 다 . 
 프론트엔드 와 백 엔드 를 자바 스크립트 라는 같 은 언어 로 다 같이 관리 할 수 있 는 것 도 노드 JS 의 큰 장점 이 다 . 덕분 에 웹 개발자 들 은 새로운 언어 를 배우 지 않 고 기존 언어 를 활용 해 서버 기술 을 빨리 응용 하 게 됐 다 . 확장 성 도 노드 JS 의 장점 이 다 . 링크드 인 이나 페이팔 도 노드 JS 를 도입 했으며 , 최근 엔 기업 용 노드 JS 기술 도 별도 로 나오 고 있 다 . 다만 기술 의 역사 가 짧 다 보 니 관련 예제 나 모듈 의 완성도 등 이 타 언어 에 비해서 는 조금 부족 하 다는 면 이 단점 으로 지적 되 고 있 다 . 
 ▲ 노드 JS 예제 ( 출처 : https : / / nodejs . org / en / about / ) 
 노드 JS 는 라이언 달 ( Ryan Dahl ) 이 라는 개발자 가 만든 기술 이 다 . 라이언 달 은 2006 년 플리커 서비스 를 보 다가 노드 JS 의 아이디어 를 떠올렸 다 . 당시 플리커 는 사진 을 올리 면 현재 까지 파일 이 몇 퍼센트 업로드 됐 는지 알려 주 는 기능 이 있 었 다 . 그 과정 에서 서버 에 데이터 요청 을 보내 고 기다려야 했 는데 , 라이언 달 은 이러 한 상황 을 개선 할 기술 을 고민 하 다 노드 JS 를 만들 었 다고 한다 . 
 라이언 달 은 2009 년 11 월 유럽 에서 열린 자바 스크립트 컨퍼런스 에서 노드 JS 를 처음 공개 했 다 . 라이언 달 은 노드 JS 를 개발 할 당시 조이 엔 트 에서 근무 하 고 있 었 다 . 조이 엔 트 는 클라우드 , 컨테이너 서비스 등 도 함께 개발 하 고 있 지만 , 노드 JS 공식 스폰서 기업 으로 라이언 달 이 노드 JS 기술 개발 에 만 집중 할 수 있 도록 지원 했 다 . 
 조이 엔 트 와 커 뮤 니와 의 갈등 
 ▲ 노드 JS 주요 공헌 자 들 . 라이언 달 , 아이작 슐레터 , TJ 폰테인 ( 왼쪽 부터 ) . 
 노드 JS 는 처음 에 조이 엔 트 에서 지원 했 지만 상용 기술 이 아닌 오픈 소스 기술 로 공개 됐 다 . 이 과정 에서 조이 엔 트 는 ‘ 자비 로운 종신 독재자 ’( BDFL , Benevolent Dictator for Life ) 가 이끄 는 오픈 소스 문화 를 선택 했 다 . BDFL 은 소스 코드 를 수정 하 는 최종 권한 을 갖 거나 전체 적 인 개발 방향 을 정하 는 소수 의 오픈 소스 프로젝트 개발 리더 를 일컫 는다 . 주로 해당 오픈 소스 기술 을 처음 만든 창시자 가 BDFL 을 맡 는다 . BDFL 문화 를 채택 하 는 대표 적 인 곳 이 리눅스 커뮤니티 다 . 프로그래밍 언어 ‘ 파이썬 ’ 를 만든 귀도 반 로섬 ( Guido van Rossum ) 도 BDFL 역할 을 맡 고 전체 적 인 커뮤니티 를 관리 한다 . 
 일반 적 으로 BDFL 은 한 번 정해 지 면 계속 유지 되 는 것 에 비해 , 노드 JS 커뮤니티 에선 BDFL 이 계속 바뀌 었 다 . 조이 엔 트 는 여기 서 BDFL 을 지정 할 권리 를 가졌 다 . 노드 JS 창시자 인 라이언 달 이 바로 노드 JS 커뮤니티 의 1 대 BDFL 이 었 다 . 다음 리더 는 아이작 슐레터 ( Issac Z . Schlueter ) , 세 번 째 BDFL 은 TJ 폰테인 ( TJ Fontaine ) 이 맡 았 다 . 세 사람 모두 당시 조이 엔 트 소속 개발 자 였으며 , 노드 JS 기술 만 전담 해 유지 보수 했 다 . 동시 에 이 들 은 오픈 소스 커뮤니티 와 활발 하 게 소통 하 며 기술 을 개발 했 다 . 아이작 슐레터 가 BDFL 일 때 만 해도 노드 JS 커뮤니티 는 순탄 하 게 돌아갔 다 . 하지만 2014 년 TJ 폰테인 이 노드 JS 커뮤니티 수장 으로 들어선 이후 부터 분쟁 이 발생 했 다 . 
 ▲ 조이 엔 트 로고 . 
 ( 출처 : https : / / www . joyent . com / content / 09 - developers / 01 - resources / 08 - performance - visualizations / performance - visualizations . pdf ) 
 노드 JS 기술 은 처음 공개 된 이후 꾸준히 업데이트 됐 다 . 2013 년 3 월 버전 0 . 10 . 0 이 출시 됐으며 , 조이 엔 트 가 공개 한 기술 개발 계획 에 따르 면 그 다음 핵심 버전 은 0 . 12 였 다 . 그런데 0 . 12 버전 은 2015 년 2 월 이 돼서 야 공개 됐 다 . 1 년 이 넘 는 시간 동안 작 은 업데이트 정도 만 있 었 고 , 핵심 기술 에 대한 개발 은 거의 이뤄지지 않 았 던 셈 이 다 . 기업 이 직접 후원 하 고 조이 엔 트 외 에 다양 한 참여 자 가 있 는 커뮤니티 에선 다소 이해 할 수 없 는 상황 이 었 다 . 조이 엔 트 는 왜 개발 속도 가 느려 지 는지 에 대해서 구체 적 인 이유 는 따로 밝히 지 않 았 다 . 
 결국 조이 엔 트 에 속하 지 않 는 노드 JS 개발자 들 은 2014 년 하반기 ‘ 노드 포워드 ’ 라는 기술 위원회 를 독자 적 으로 결성 했 다 . 자바 스크립트 의 생태계 를 개선 하 기 위한 커뮤니티 였 다 . 독특 한 건 여기 에 2 대 리더 였 던 아이작 슐레터 도 포함 됐 다는 사실 이 다 . 노드 포워드 주요 멤버 였 던 미 킬 로저스 는 강연회 에서 “ 당시 왜 이렇게 새로운 릴리즈 가 없 는지 알아내 는 데 고민 하 기 보다 는 노드 JS 생태계 를 잘 구축 하 고 싶 었 다 ” 라고 말 했 다 . 이 를 위해 ‘ 노드 스쿨 ’, ‘ 노드 콘 원샷 ’ 같 은 노드 개발자 들 이 모일 수 있 는 방법 에 대해서 많이 논의 했 다 . 노드 포워드 는 회의 과정 을 바로 행 아웃 으로 녹화 해 공개 하 고 , SNS 으로 내부 소식 을 올리 면서 다른 개발자 와 소통 을 늘렸 다 . 조이 엔 트 가 주도 했 을 때 보다 훨씬 개방 적 이 고 투명 한 오픈 소스 문화 가 만들 어 졌 다 . 
 ▲ 노드 포워드 홈페이지 ( 출처 : http : / / nodeforward . org / ) 
 노드 포워드 에 대한 영향 때문 일까 . 조이 엔 트 는 ‘ 오픈 거버넌스 모델 ’ 을 지향 하 는 ‘ 자문 위원회 ( Advisory Board ) ’ 를 구성 하 겠 다고 발표 했 다 . 오픈 거버넌스 모델 은 BDFL 운영 방침 과 는 반대 로 , 관심 이 있 는 사람 은 누구 나 최종 기술 에 대한 기여 를 할 수 있 는 구조 다 . 
 그러 던 중 2014 년 12 월 , 노드 포워드 는 독자 적 인 기술 인 ‘ io . js ’ 를 발표 했 다 . io . js 는 노드 JS 기술 을 기반 으로 만들 었 다 . 노드 JS 는 오픈 소스 기술 이 어서 복사 하 는 것 이 가능 했 기 때문 이 다 . io . js 는 오픈 거버넌스 모델 을 추구 했 다 . 미 킬 로저스 는 < 인포 월드 > 와 의 인터뷰 에서 “ 2014 년 7 월 부터 조이 엔 트 와 함께 문제 를 해결 할 방안 을 얘기 했 다 ” 라며 “ 기다리 다 지쳐 io . js 를 공개 했 다 ” 라고 설명 했 다 . 또한 그 는 공개 적 으로 조이 엔 트 가 마음대로 노드 JS 리더 를 결정 하 는 것 에 대해 반대 하 기 도 했 다 . 
 노드 JS 재단 출범 
 ▲ 노드 JS 재단 출범 소개 글 ( 출처 : 조이 엔 트 홈페이지 ) 
 io . js 의 영향 때문 이 었 을까 . 조이 엔 트 는 2015 년 2 월 ‘ 노드 JS 재단 ’ 을 출범 시켰 다 . 동시 에 노드 JS 가 리눅스 재단 과 같 은 방식 으로 운영 되 며 중립 적 인 성격 을 띤다는 것 을 강조 했 다 . 재단 출범 소식 을 전하 기 4 일 전 엔 서둘러 노드 JS 의 0 . 12 버전 기술 도 출시 했 다 . 스콧 해몬드 조이 엔 트 CEO 는 직접 io . js 팀 에 노드 JS 프로젝트 로 합류 하 자고 제안 하 기 도 했 다 . 결국 2015 년 5 월 , io . js 팀 은 노드 JS 에 합류 하 기 로 했 다고 발표 했 다 . 노드 JS 의 3 대 리더 인 TJ 폰테인 은 BDFL 역할 을 그만두 었 고 , 조이 엔 트 도 함께 떠났 다 . 
 2015 년 9 월 에 는 약 1 년 만 에 새 버전 인 노드 JS 4 . 0 이 출시 됐 다 . 노드 JS 4 . 0 이후 버전 은 io . js 와 합쳐 지 면서 최신 V 8 이 도입 돼 ES 6 의 기능 을 더 많이 쓸 수 있 게 됐 다 . 최근 노드 JS 기술 은 리눅스 , OS X , 윈도우 , ARM 프로세서 등 다양 한 테스트 환경 이 구축 돼 훨씬 안정 적 으로 기술 을 배포 할 수 있 는 상태 다 . 
 기업 용 기술 로 뻗 어 가 는 노드 JS 생태 계 
 ▲ 노드 JS 재단 에 속한 기업 들 . 현재 노드 JS 생태계 를 이끌 고 있 다 . ( 출처 : 노드 JS 재단 슬라이드 셰어 ) 
 노드 JS 가 인기 를 끌 자 노드 JS 로 기술 을 개발 하 는 기업 도 하나 둘 등장 했 다 . 대표 적 으로 2 대 BDFL 이 었 던 아이작 슐레터 는 npm 이 라는 자바 스크립트 관련 패키지 를 공유 · 관리 해 주 는 서비스 를 오픈 소스 프로젝트 로 시작 했 다 . 2014 년 에 는 npm 전문 스타트업 을 세우 고 패키지 를 보다 체계 적 으로 관리 하 고 있 다 . 처음 에 는 노드 JS 위주 의 기술 이 많 았 지만 지금 은 프론트엔드 와 관련 된 패키지 들 이 전부 모여 있 다 . 현재 등록 된 패키지 수 는 20 만 개 이 며 , 사용 자 수 는 15 만 명 이 넘 었 다 . 
 노드 JS 를 기업 용 서비스 로 확장 하 려는 움직임 도 많 다 . 노드 소스 라는 스타트업 은 2014 년 설립 된 이후 ‘ 엔 솔리드 ’, ‘ 엔 십 ’ 같 은 기업 용 노드 JS 서비스 를 제공 하 고 있 다 . 2015 년 에 는 300 만 달러 , 우리 돈 약 35 억 원 의 투자 를 받 기 도 했 다 . 고객 은 넷플릭스 , 페이팔 , 우버 , 야후 등 이 있 다 . 
 스트롱 루프 역시 노드 JS 업계 에서 주목 받 는 스타트업 이 었 는데 , IBM 이 2015 년 인수 했 다 . 노드 JS 와 합병 한 io . js 프로젝트 를 개발 했 던 핵심 커 미터 들 도 스트롱 루프 에 소속 돼 있 었 다 . IBM 은 최근 주력 하 고 있 는 플랫 폼 서비스 ( PaaS ) 인 ‘ 블루 믹스 ’ 에 노드 JS 기술 을 확대 하 고 있 다 . 
 이 밖 에 도 MS , 인텔 , 레드햇 같 은 기업 이 노드 JS 재단 을 지원 하 며 노드 JS 에 대한 투자 를 늘리 고 있 다 . 
 [ 원문 출처 : http : / / www . bloter . net / archives / 255115 ] 
 460 [ IT 열 쇳 말 ] 노드 JS 2016 - 06 - 23 2201 
 459 [ CMS ] 기업 에서 워드프레스 를 이용 하 려면 2016 - 06 - 23 3331 
 458 [ 사물 인터넷 ] 사물 인터넷 오픈 소스 기술 - IoTivity 2016 - 06 - 16 4691 
 457 [ IT 열 쇳 말 ] 아파치 소프트웨어 재단 2016 - 06 - 10 2479 
 456 [ Splunk ] 산업용 IoT 시장 및 기술 동향 과 빅 데이터 플랫 폼 으로서 의 Splunk ① 2015 - 10 - 20 10859 
 455 [ IT 열 쇳 말 ] MOOC 2015 - 08 - 28 4946 
 454 [ IT 열 쇳 말 ] 오픈 스택 2015 - 08 - 03 4458 
 453 [ CMS ] 3 대 공개 SW CMS 비교 2015 - 06 - 19 8722 
 452 [ IT 열 쇳 말 ] 시빅 해킹 2015 - 06 - 16 4615 
 451 [ 사물 인터넷 ] 사물 인터넷 ( IoT ) 보안 : 전망 및 도전 과제 2014 - 12 - 18 20427 
 « 1 2 . .. 8 9 10 11 12 13 14 . .. 55 56 » 
 « 11 / 56 »