본문 바로가기

함수형 vs 객체지향 프로그래밍의 이해 알고리즘 수업을 듣고 있었다. 렉처러는 알고리즘 분야에서 많은 저명한 논문을 발표한 옥스포드의 Ralf Hinze 교수였다. 그는 OOP와 FP(Functional Programming)을 아래의 수학식을 통해서 간단히 정의한 뒤 설명을 덧붙였다. OOP와 FP를 설명하는데 있어 서 어떤 설명도 이 수학식보다 간단 명료할 수 있을까? 간혹, FP를 실제 코드에 적용하다 보면 가끔 OOP와 혼용되어 identity가 조금 흔들릴 때가 있지만 그럴때 다시금 이 철학을 되새겨야 한다. 더보기
[애자일 사례] 쏘트워스트의 원거리 환경에서의 XP 프로젝트 쏘트웍스(ThoughtWorks)는 미국에 본사를 둔 세계적인 IT 회사이다. 직원이 3000명 가까이 되고 각 세계의 주요 도시마다 사무실이 있을 만큼 큰 IT 조직이다. 이 회사는 애자일의 거장으로 손꼽히고 또 리팩토링으로 유며한 마틴 파울러가 CSO(Chief Scientist Officer)로 몸 담았던 회사이기도 하다. 그래서 그들은 애자일에 있어서 누구보다 빠르고 적극적으로 도입했다. 그 결과 애자일에 대한 지식과 경험이 월등히 뛰어난 기업이다. 하지만 그들은 원거리(사무실이 지역적으로 떨어진 복수팀에 의해 진행되는) 프로젝트를 진행하면서 새로운 도전을 맞게 되었다. 원거리에서 개발 프로젝트를 진행하게 될 경우 구성원 사이의 커뮤니케이션, 협업, 지식의 공유 등 많은 어려움이 존재하기 때문이다.. 더보기
나라별 개발자 구인통계 (한국,미국,영국) 새로운 웹 프로젝트를 기획하면서 어떤 기술스택을 가져갈지에 대한 고민이 있었다. 그리고 그 고민으로 각 잡사이트를 뒤지면서 구인 현황들을 조회해봤다. 물론, 비지니스와의 연계성뿐만 아니라 개발자의 향후 경쟁력 둘다 고려해야 했다. 비지니스에 최적화만 고려할 수 없는 것이 개발자들이 충분히 흥미가 있어야 하고 또 그 기술적인 투자가 헛되지 않아야 개발 시너지가 생기기 때문이다. 노드를 기반으로 한 MEAN 스택과 파이썬의 장고와 플래스크 그리고 루비 중에 어떤 스택을 선택해야 될지에 대한 고민이 이어졌다. MEAN(Mongo, Express, Angular.js, Node.js)스택의 경우 API 기반의 서비스나 싱글 애플리케이션과 같은 모바일 환경에는 최적화 되었지만 일단, 웹이 주를 이루는 서비스 부분.. 더보기
[애자일 도입사례] 아브락사스의 좌충우돌 애자일 사례 아브락사스 애플리케이션(Abraxas Applications) 이라는 회사는 고객사에게 소프트웨어를 납품하는 미국의 중간 규모의 개발사이다. 세계적으로 널리 알려진 회사가 아님에도 세 번째 사례로 소개하게 된 이유는 그들이 겪었던 문제들은 처음 애자일을 도입하는 회사들에서 자주 볼 수 있는 패턴들이기 때문이다. 즉, 그들이 가졌던 애자일의 오해와 문제들을 통해서 애자일의 가치들을 다시 한번 되짚어 볼 수 있는 기회가 되기를 바란다. 이 회사의 사례는 2009년 미국에서 개최된 애자일 컨퍼런스에서 브라이언 빅터(Brian Victor)와 노아 제이콥슨(Noah Jacobson)에 의해서 소개되었다. 그들은 초기 애자일 프랙티스(Agile Practice)들을 회사에 소개하고 도입하기 시작했다. (애자일 프.. 더보기
node.js와 닷넷은 어떻게 다른가? 오늘 아침에 훈스닷넷에 올라온 질문글에 대한 답변으로 node.js와 닷넷의 웹 서버 동작 구조에 대한 썰을 풀어보고자 한다. 이전 글 "완전히 새로운 닷넷 개발 환경이 온다"에서 런던에서 게임을 개발할 때 IIS기반의 ASP.NET 웹 페이지를 개발하다가 Node.js 로 옮겨 같 사례를 언급한적이 있었다. 당시 그 팀은 SignalR 기술을 이용해서 플래쉬 게임의 데이터를 닷넷으로 구현된 서버에 전달했다. 서버의 메모리 보다는 CPU 효율이 낮다보니 여러 가지 테스트를 거쳐 node.js가 당시 시나리오에서 더 좋은 효율을 가져와 교체하게 되는 결정을 하게 되었다. 이번 글에서는 Node는 어떻게 동작되고 닷넷의 웹 서버는 요청을 어떻게 처리하는지 살펴보도록 하겠다. 먼저 성능에 대한 이야기를 하기 .. 더보기