DB를 이용한 Pagination
게시판 만들기 대학 4학년 때쯤, 직업으로 개발자가 되고 싶었다. 영상 처리 랩에서 학부생으로 얼굴 인식(Face detection) 관련 논문을 읽고 MATLAB으로 코딩하는 일을 하며 용돈을 벌었지만 막막했다. 간단한 웹페이지도 만들 줄...
아는만큼 Search tree
회사 일을 하면서 자료구조를 구현할 기회는 별로 없었다. 하지만 최근에 데이터 타입 기반 동기화 플랫폼을 개발하면서 운 좋게도 일부 자료구조를 직접 구현해야만 했다. 나중에 잊어버리는 것보다는 짧은 지식이라도 적는게 나은...
부수면 안되는 장난감
책 “프로그래머의 길, 멘토에게 묻다.”의 “부숴도 괜찮은 장난감”에서는 프로그래밍을 효과적으로 학습하기 위해서 개인 프로젝트를 시작하라 조언한다. 프로젝트의 결과물은 언제든 부술 수 있는 장난감 같은 프로그램이기 때문에 기능을 쉽게 추가하고 구조를...
Google Docs 같은 실시간 협업 에디터를 만드는 방법
실시간 협업 애플리케이션 이제는 실시간 협업 애플리케이션이 많은 사용자에게 익숙하다. 대표적인 예로는 Google Docs가 있다. Google Docs는 동시에 여러 명의 사용자가 문서 하나를 수정할 수 있다. 각자 수정하는 문서를 메일로...
OpSets 요약
“OpSets: Sequential Specifications for Replicated Datatypes (Extended Version).” 읽으면서 정리한 내용 요약 이 논문은 분산 시스템에서 최종적인 일관성(eventual consistency)의 복제 데이터타입(replicated datatype)을 구현한 프레임워크인 OpSets를 제안한다. 또 이런 유형의 데이터타입(CRDT)을...