티스토리 뷰
소프트웨어 개발자라는 직업은 여러 가지 유용한 장점을 발달시킬 수 있는 직업이다. 논리적으로 생각하고 문제를 해결하는 것도 그 중 하나다. 하지만 개발자들이 갖는 나쁜 버릇이 일상 생활에 영향을 미치기도 한다. 개발자들의 의견과 최근 ‘스택 익스체인지(Stack Exchange)’와 ‘쿼라(Quora)’에서 열린 두 차례 포럼 결과를 바탕으로, IT World는 프로그래밍 때문에 야기되는 8가지 나쁜 습관, 또는 ‘직업병’의 목록을 정리해 봤다. 물론 이들 습관은 비슷한 직군(수학자, 비 소프트웨어 엔지니어 등)에서도 발견될 수 있는 것들이지만 직종에 상관 없이 성가신 습관임은 분명하다.
0. 프로그래밍 습관이나 표현을 일상생활 속 대화에서 사용하는 습관
원인 : 프로그래밍 언어에는 그 나름의 구문론이 존재하기 때문에 개발자들은 여기에 익숙하게 된다. 또 들여쓰기 종류나 주석
스타일, 카멜 케이스 사용 등 특정 프로그래밍 언어, 애플리케이션 등에만 적용되는 코딩 규칙이 존재하기도 한다.
나쁜 습관의 결과 : 그런데 이렇게 프로그램을 쓸 때 쓰던 습관이 일상생활 속에서 글을 쓸 때나 말을 할 때도 불쑥불쑥 나오게
된다. 모든 문장이 세미콜론(semicolon)으로 끝나는 이메일을 받게 된다면 보낸 이가 개발자일 확률이 높다.
의견 : “이메일을 쓸 때 함수 호출을 사용한다.” 슙호지트 챠토패드하이야이
“가끔 이메일을 쓸 때 카멜 케이스(Camel Case)를 사용해 여동생을 짜증나게 만들곤 한다.” 익명
“글을 쓸 대 앞에다 ‘//’를 넣곤 한다.” 루카스 애졸라
“만약(IF) 차가 있으면 한 잔 하고, 아니면(ELSE) 그냥 물만 마실게.” 비자이 카마쓰
1. 실제 상황에서 키보드 단축키를 사용하려 한다
원인 : 개발자들은 키보드를 사용하는 시간이 많다. 그래서 자연스레 키보다 단축키도 많이 사용하게 된다. Ctrl +C같은 건
일반인들도 많이 알고 있는 단축키지만, 텍스트 에디터들만 알고 있거나(‘:wq’의 경우 저장하고 나가기 단축키다) IDE, 기타
프로그래밍 툴 및 애플리케이션에만 적용되는 단축키도 있다.
나쁜 습관의 결과 : 이런 단축키에 너무나 익숙해진 나머지 실제 생활에서도 이를 사용하려다가 당황하는 프로그래머들이 있다.
의견 : “방금 한 얘기를 머릿속으로 Ctrl + Z 하려 한 적 있다.” Fishtoaster
“실제로 컴퓨터 앞에서 책을 읽다가 프레스/패턴하려 했다.” 친메이 칸치
“실제 인생에서는 ‘실행 취소’버튼을 누를 수 없다.” JBR위킨슨
2. 숫자를 0부터 세는 습관
원인 : 프로그래밍 언어의 주요 개념 중 하나가 ‘배열(array)’인데, 이는 일련의 값이나 변수를 늘어놓은 것을 뜻한다. 계산상의 편의를 위해 배열 요소들은 1이 아니라 0부터 센다.
나쁜 습관의 결과 : 문제는 개발자들이 이 0부터 시작하는 숫자 세기에 익숙해져서 프로그래머가 아닌 사람들로서는 헷갈리는 방법으로
숫자를 센다는 것이다. 그러니 만일 코딩을 하는 친구가 5km 달리기 시합을 하는 당신에게 ‘0등’으로 들어오라고 말한다면 그건
좋은 뜻으로 한 말이다.
의견 : “가끔은 0부터 숫자를 세곤 한다. ‘맥주 몇 병 남았어?’ ‘0,1,2,3... 4병 남았네!’ 이런 식이다.” 데이비드 구알라노
3. 건강에 나쁜 라이프스타일 고집
원인 : 프로그래밍을 하다 보면 오랜 시간 컴퓨터 앞에 앉아있어야 한다. 때로는 아주 오랜 시간이 될 수도 있고, 하루 종일을 꼬박 앉아있기도 한다.
나쁜 습관의 결과 : 그렇기 때문에 식습관이나 수면 패턴이 불규칙해지고 운동 부족인 경우도 많으며 야외 활동이나 타인과의 교류도 현저히 줄어들게 된다.
의견 : “낮 3시에 점심을 먹고, 새벽 3시에 자러 간다.” 필립 추
“너무 오래 앉아있는다.” 빌 쉘튼
“손톱을 깨무는 버릇을 고치기 위해 노력 중이다.” 스콧 댄지그
“운동 부족 -> 과식 -> 건강에 나쁜 라이프스타일.” 존 사가라
4. 모든 것을 최대 효율로 활용하고 자동화하려는 경향
원인 : 소프트웨어 개발자들은 끊임없이 더 빠르고 효율적인 코드를 만들기 위해 노력한다. 이를 위해 개발자들은 멀티태스킹, 코드 재사용, 자동화 등을 자주 이용한다.
나쁜 습관의 결과 : 그러나 실제 생활에서 모든 것을 자동화 하거나 멀티태스킹 하려고 하다가는 득보다 실이 많아질 수 있다.
지나치게 효율성만 따지다 보면 오히려 게을러지거나, 더 나쁜 경우가 생길 수도 있다(예: 쓰레기를 일주일에 한 번 이상 버리지
않는다).
의견 : “하찮아 보이거나 지루해 보이는 일, 자동화나 멀티태스킹이 안되는 일을 하다 보면 짜증난다.” 아준 크리쉬난
“전혀 그럴 필요가 없는 일에서도 능률만을 따지고 있는 자신을 발견하게 된다.” systempuntoout
“정말, 반드시 꼭 해야 하는 경우가 아니라면 문제를 해결하지 않아도 된다.” 켄
5. 모든 이야기를 글자 그대로 받아들이거나, 완벽주의적 성향을 보이거나, 집착이나 강박 증세를 보이는 것
원인 : 컴퓨터는 프로그램의 명령을 그대로 따른다. 컴퓨터는 미묘한 표현의 차이나 애매한 표현 등을 이해하지 못한다. 조금만 코드를 쓰는데 실수해도 프로그램 실행 중 재앙이 일어날 수 있다.
나쁜 습관의 결과 : 이 때문에 프로그래머들은 실제 생활에서도 모든 이야기를 글자 그대로 받아들이고 사소한 디테일에 대해서도 집착하는 바람에 주변 사람들을 괴롭게 하기도 한다.
의견 : “아내는 내가 너무 말귀를 못 알아듣는다고 화를 낸다.” jmquigley
“심부름이나 부탁을 할 때는 분명한 지시를 내려주면 좋겠다. 계란 ‘좀’ 사오라니? ‘좀’이 대체 몇 개란 말인가?” Tzuwei Chen
“프로그래밍을 하다 보면 완벽주의에 시달리게 된다... 이 때문에 생산성 저하, OCD같은 심각한 문제를 초래할 수도 있다.” 익명
6. 사람들이 컴퓨터처럼 행동할거라 기대하는 습관
원인 : 소프트웨어 개발자들은 작업할 때 컴퓨터가 자신의 명령을 그대로 따를 것이라 생각하는 데 익숙해져 있다. 만일 컴퓨터가 실수할 경우 그것은 개발자의 명령이 잘못됐기 때문이다.
나쁜 습관의 결과 : 그런데 개발자들은 사람들이 컴퓨터처럼 명령을 그대로 따르지 않는다는 점을(혹은 전혀 따르지 않을 때도 있다는
점을) 자주 잊어버린다. 또 사람들은 컴퓨터처럼 논리적으로 행동하거나 생각하지 않으며, 사람에게는 ‘감정’이 있음을 잊곤 한다.
의견 : “프로그래밍을 할 때는 기계가 프로그래머의 명령을 그대로 따라 진행한다. 그런데 사람들을 대할 때는 꼭 그렇지만은 않다...” 매트
“논리적 착오에 대해 설명해야 하기 때문에, 누군가가 논리적으로 틀린 이야기를 할 때마다 견딜 수가 없다.” SnOrfus
“논리와 감정의 분리가 가장 중요하다.” 케빈 벡포드
7. 2의 제곱 수에 집착하는 버릇
원인 : 컴퓨터 정보의 기분 단위는 ‘비트’로 0 또는 1 둘 중 하나로 표현된다. ‘비트’로 작업하는 일이 잦은 프로그래머들은 2의 제곱을 사용해 이들을 세곤 한다.
나쁜 습관의 결과 : 프로그래머들에게 있어 어림수는 0으로 끝나는 것이 아니라 2의 거듭제곱이다. 일반적인 경우라면 배우자가 서른
살이 됐을 때 깜짝 파티를 해 주겠지만, 프로그래머들은 32살, 64살, 혹은 (이론적으로 가능하다고 쳤을 때) 128세에 깜짝
파티를 열어줄 지도 모른다.
의견 : “모든 것은 2의 제곱수여야 한다.” 조
“당신한테 1,000 달러가 있다고 치자. 아니다, 어림수면 더 좋겠다. 당신에게 1,024 달러가 있다고 해보자.” 라훌 애그라왈
'News' 카테고리의 다른 글
우분투한국커뮤니티 2014년 2월 정기 나눔 모임 (0) | 2014.02.22 |
---|---|
2014년 1월 정기 나눔 (0) | 2014.01.25 |
우분투한국커뮤니티 2013년 7월 정기 나눔 모임 (0) | 2013.07.27 |
중국 부호 2세들 “나 재벌 되기 싫다니깐” (0) | 2011.12.31 |
구글 vs 오라클의 소송중 판사느님의 한마디. (0) | 2011.07.26 |
- Total
- Today
- Yesterday
- 야마꼬툰
- diary
- BadCode
- Web Programming
- network
- Mabinogi
- console
- Information Processor
- 프리랜서로 살아남는 법
- Battle
- USB Lecture
- Life News
- cartoon
- Reverse Engineering
- Assembly
- 막장로그
- 짤방 및 아이콘
- Network Inspector
- wallpaper
- medical
- 3D Engine
- Embedded System
- C#
- Tech News
- 나비효과
- humor
- win32
- Linux
- WDB
- Military
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |