개발자와 건강 6

개발자는 건강을 챙기고 살아야 한다. 요즘 내가 무지하게 중요하게 생각하는 것이다. 근데 개발자가 건강을 지키기 싫어서 안지키는 게 아니다. 업무량에 치이고 야근하고 뭐하고 하다보면 이것저것 나쁜 습관이 자연스럽게 생겨서 몸을 망치는 것이다. 그래서 개발자의 건강을 해치는 것이 무엇인지 하나하나 짚어보면서 글을 나가보려고 한다. 특히 내가 몸이 안좋기 때문에 내 몸상태를 망친 녀석들을 위주로 올리긴 하겠지만, 아마 내 몸을 망친 녀석이 남의 몸을 안망칠 꺼란 생각은 안하기 때문에…

오늘은 간단한 식습관에 대해서 예기해 보려고 한다. 회사에서 개발하면 점심시간은 제대로 챙겨먹는다. 다른 사람들이 점심식사하러 쭉 나가고 하다보면 “아, 점심시간이구나…” 라고 생각하고 정리하고 나오게 된다. 근데 이 식습관 중에서도 회사 근처에서 먹는 회사밥들에 대해서 논해보려고 한다.

거의 매일 먹어야 한다. 하루 한 끼일지라도 주중에는 매일 먹는 것이다. 그렇기 때문에 메뉴 선정을 잘 해야 한다. 근데 이 메뉴들이 보면 대부분 기름진 반찬 아니면 그냥 맵거나 쓸데없이 달거나(?!) 하다. 그냥 먹을만하다고 해서 막 먹기도 뭐한 것들이 많다.

의외로 잘 생각하고 제대로 된 곳에서 밥을 먹는 게 중요한데.. 의외로 그렇지 못한 현실이 좀 아쉽다. 그래서 그냥 도시락 싸다니는 분들도 있는데, 그 비중이 얼마나 될지…… 이젠 점심 먹는 것도 잘 판단하고 먹자. 굳이 몸에 부담되는 메뉴라면 굳이 먹지 말자. ㅇㅅㅇ

리눅스와 C

리눅스의 대부분이 C언어로 작성되었고, 리눅스 수많은 어플리케이션을 C로 작성한다. 실제로 C로 작성된 프로그램도 상당수 존재한다. 따라서 리눅스 프로그래밍은 C프로그래밍을 의미한다. (거의 일반화된 예기)

또한 C 프로그래밍을 위한 환경을 리눅스에서는 기본적으로 제공하고 있다. C 컴파일러인 gcc, C 디버깅 툴인 gdb, C 컴파일 자동화 툴인 make 등을 기본적으로 제공한다.

결국 리눅스 환경에서 프로그래밍을 한다면 C는 계속 이용하게 될 것이다.

요즘 많은 언어들이 있어도 C는 안쓸 수 없을 것이다.

C언어

C언어는 제디느 리치와 켄 톰슨이 벨 연구소에서 유닉스를 개발하던 중 1972년 데니스 리치에 의해 개발되었다. 그리고 유닉스도 C언어로 구현되었다. 이러한 C언어는 뛰어난 기능과 융통성을 제공함으로써 여러 곳으로 빠르게 보급되어 많은 프로그래머(특히 1학년들…)에 의해 사용되기 시작하였다. 그러나 많은 프로그래머들이 자신이 사용하기 편리하게 C언어를 수정하기 시작하여 프로그램간에 호환성이 결여되고 표준 라이브러리 함수마저도 조금씩 달라지는 문제가 발생하였다. 이런 문제점을 해결하기 위해 ANSI에서는 1983년에 C 표준화를 위한 위원회를 결정했고, 1989년 ANSI 표준 C라고 알려진 표준안을 발표했다.

이러한 C언어는 유닉스, 리눅스와 같은 대부분의 시스템 소프트웨어를 구현하는 언어로, 고급 언어이면서 저급 언어처럼 비트나 바이트 처리, 그리고 포인터에 의한 주소 처리를 한다. 그리고 PC에서부터 대형 컴퓨터에 이르기까지 모두 사용할 수 있는 이식성이 뛰어난 언어다. 또한 구조화되어 있어 같은 기능을 구현하는 다른 언어보다 프로그램 코드 길이가 짧다는 장점이 있다. 이러한 장점 때문에 C언어의 명성은 앞으로도 계속 갈 것이다.

SSHD랑 듀얼 드라이브에 대한 개인적인 의견

좀 오래된 기사를 검색하다가 읽었다. (기사는 본문 아래에…) 하드 제조업체들이 SSD가 빠른 속도로 용량이 증가하는 것과 동시에 가격이 낮아지니깐 하드의 성능 향상을 위해 여러가지로 만들어 낸 것이다.

사실 시작은 시게이트의 SSHD였고, 웬디는 13년 말(저 기사 기준)이 되어서야 듀얼 드라이브 내놓은 상황이다.

.근데 시케이트나 웬디나 비슷하지만 뭔가 전혀 다른 소리를 하고 있는 것이다.

SSD를 “HW레벨”에서 캐시로 제어하는 시게이트의 SSHD나..
SSD랑 HDD를 “하나의 포트를 통한 연결”을 통해 양쪽 다 쓸 수 있도록 하겠다는 웬디나….

저 둘이 기존 하드들보다 속도가 빠르다고 하는 것에 대해서는 확실히 맞긴 하다만… 여러모로 좀 회의감이 들기도 한다.

……근데 둘 다 공통적인 것이 있다면…
둘 다 속도 향상을 위해서 SW 레벨이나 OS 내부에서 뭔가 처리하고 하는 걸 선택하진 않았다.

p.s. 내가 손대려고 했던 부분을 제조사들이 그냥 하드웨어 레벨로 때려박았다. 그래서 기분이 영…
p.s.2. 안그래도 이런 거 뒤져보다가 일본인 친구넘하고 여러 논쟁을 벌이고 난 뒤에 이런 걸 뒤늦게 찾았단 것에 대한 좌절도 있다….

http://news.donga.com/3/all/20131206/59388722/1