소사이어티

사람들

arrow_downward최신기사

강성훈

"'코드골프' 한번 쳐보실래요?"

프로그래머만 칠 수 있는 조금 특별한 골프가 있다. '코드골프'라는 게임이다. 골프는 타수가 적을 수록 이기는 게임이다. 이 원리를 프로그래밍에 적용한게 바로 코드골프이다. ‘가장 짧은 코드 만들기’라고도 불리는 이 게임은 소스코드 분량을 적게 만드는 것에 도전하는 놀이다. 일본쪽에서는 ‘숏코딩(Short Coding)’이라고 부르기도 한다. 코드골프를 취미로 삼고 있는 강성훈 개발자는 “마치 익스트림 스포츠가 누군가에게 취미인 것 처럼 코드골프도 취미 종류 중 하나다”라며 “개인적으로는 시간 제한이 있는 코드골프 문제도 있기 때문에  코드골프를 위해 그리 많은 시간을 투자하진 않는다”라고 설명했다. 그는 “가장 코드골프를 열심히 했던 시절에도 주말 중 하루 정도 코드골프 문제를 푸는데 시간을 보냈다”라고 덧붙였다. 위키백과에 따르면 코드골프는 1990년대 후반 '펄 골프'에서 파생됐다고 한다....

C

[블로픽] 프로그래밍 언어 계보도

프로그래밍 언어는 애초에 사람이 컴퓨터와 소통하기 위해 만든 것이지만, 필요에 따라 서로 다른 방식으로 발전해왔다. 처음에 사람과 컴퓨터는 바이너리 코드(2진수 언어)로 소통했다. 컴퓨터가 인식할 수 있는 건 1과 0 두 가지뿐이다. 전기가 통하면 1, 안 통하면 0이다. 컴퓨터에서 작동하는 모든 복잡한 프로그램과 데이터는 결국 1과 0의 조합이다.  컴퓨터는 1과 0으로 조합된 복잡한 명령을 재빨리 처리하는 장치다. 초기 컴퓨터에 명령을 내리려면 직접 전선을 연결해야 했다. 전선을 연결하면 1, 연결하지 않으면 0이라는 식이었다. 이런 식으로 수많은 전선 가닥을 연결해 복잡한 계산식을 설계해야 했다. 이것이 초창기 프로그래밍이었다. 이진수로 컴퓨터에 직접 명령을 내리던 단계에서 조금 나아가 자주 쓰는 비트 패턴을 사람이 이해할 만한 약어로 바꿨다....