Offcanvas

������

‘좋은 걸 어떡해’··· 손이 가는 프로그래밍 일탈 10가지

규칙을 어기면 약간의 스릴을 느낄 수 있다. 때로는 더 좋고 더 효율적인 코드를 작성할 수 있기도 하다.   우리 모두 해본 적이 있다. 엄마가 보지 않을 때 쿠키를 집어 들고, 저녁으로 와인을 좀 많이 마시고, 차를 애매한 곳에 잠깐 살짝 주차하는 것 등등 말이다. 종종 제한속도를 초과하기도 한다.  그리고 맞다, 우리 개발자 모두는 프로그래밍의 기본적인 규칙들을 위반한 적 있다. 모두가 동의하는 규칙들이 걸리적거렸기에 우리 모두는 몰래 그렇게 하는 것을 좋아했다. 나쁜 코드를 입력하기도 하면서 우리는 살아왔다.  그럼에도 불구하고 프로그래밍 신이 번개를 내리지는 않았으며, 데스크톱은 폭발하지 않았다. 사실, 우리 코드는 컴파일된 채 발송됐고, 고객들은 충분히 행복해 보였다. 왜냐하면 나쁜 프로그래밍은 예를 들어, 전기 울타리를 핥거나 호랑이의 꼬리를 잡아당기는 것과 같지 않기 때문이다. 대부분의 경우 잘 작동된다. 규칙은 방침이나 양식상의 제안인 경우가 더 많지, 반드시 따라야 하거나 죽음이 수반되는 융통성 없는 지침이 아니다.  물론, 당신의 코드가 비웃음을 살 수도 있고, 어쩌면 공개적으로 조롱당할 수도 있다. 하지만 당신이 규칙을 어기고 있다는 사실은, 근엄한 사회적 관행을 살짝 뒤집는다는 유쾌한 스릴을 더해주기도 한다. 규칙을 어기는 것이 더 나은 경우도 있다. 코드가 더 깔끔하게 나온다. 심지어 더 빠르고 더 간단할 수도 있다. 규칙은 보통 너무 광범위한데, 숙련된 프로그래머라면 규칙을 어김으로써 코드를 개선할 수도 있다. 상사에게 자랑할 정도는 아닐지라도 가끔은 당신 방식대로 코딩하는 게 말이 된다.  다음은 사람에 따라 도저히 납득할 수 없겠지만, 우리들 중 대부분이 성공적으로 그리고 즐겁게 자주 어기는 규칙 10가지다. 나쁜 프로그래밍 습관 No. 1 : 베끼기(Copying)  학교에서는 분명히 금지된 행동이다. 단 직장에서는 그리 분명하지 않다. 차용하지 말아야 할 코...

코드 작성 프로그래밍 코딩 개발 언어

2020.01.06

규칙을 어기면 약간의 스릴을 느낄 수 있다. 때로는 더 좋고 더 효율적인 코드를 작성할 수 있기도 하다.   우리 모두 해본 적이 있다. 엄마가 보지 않을 때 쿠키를 집어 들고, 저녁으로 와인을 좀 많이 마시고, 차를 애매한 곳에 잠깐 살짝 주차하는 것 등등 말이다. 종종 제한속도를 초과하기도 한다.  그리고 맞다, 우리 개발자 모두는 프로그래밍의 기본적인 규칙들을 위반한 적 있다. 모두가 동의하는 규칙들이 걸리적거렸기에 우리 모두는 몰래 그렇게 하는 것을 좋아했다. 나쁜 코드를 입력하기도 하면서 우리는 살아왔다.  그럼에도 불구하고 프로그래밍 신이 번개를 내리지는 않았으며, 데스크톱은 폭발하지 않았다. 사실, 우리 코드는 컴파일된 채 발송됐고, 고객들은 충분히 행복해 보였다. 왜냐하면 나쁜 프로그래밍은 예를 들어, 전기 울타리를 핥거나 호랑이의 꼬리를 잡아당기는 것과 같지 않기 때문이다. 대부분의 경우 잘 작동된다. 규칙은 방침이나 양식상의 제안인 경우가 더 많지, 반드시 따라야 하거나 죽음이 수반되는 융통성 없는 지침이 아니다.  물론, 당신의 코드가 비웃음을 살 수도 있고, 어쩌면 공개적으로 조롱당할 수도 있다. 하지만 당신이 규칙을 어기고 있다는 사실은, 근엄한 사회적 관행을 살짝 뒤집는다는 유쾌한 스릴을 더해주기도 한다. 규칙을 어기는 것이 더 나은 경우도 있다. 코드가 더 깔끔하게 나온다. 심지어 더 빠르고 더 간단할 수도 있다. 규칙은 보통 너무 광범위한데, 숙련된 프로그래머라면 규칙을 어김으로써 코드를 개선할 수도 있다. 상사에게 자랑할 정도는 아닐지라도 가끔은 당신 방식대로 코딩하는 게 말이 된다.  다음은 사람에 따라 도저히 납득할 수 없겠지만, 우리들 중 대부분이 성공적으로 그리고 즐겁게 자주 어기는 규칙 10가지다. 나쁜 프로그래밍 습관 No. 1 : 베끼기(Copying)  학교에서는 분명히 금지된 행동이다. 단 직장에서는 그리 분명하지 않다. 차용하지 말아야 할 코...

2020.01.06

블로그 | IT 개발자를 위한 글쓰기 가이드

개발자가 코드만 잘 써야 하는 것은 아니다. 글을 잘 쓰는 개발자는 커리어 경로에 있어 월등히 유리한 입지를 확보하게 된다. 필자가 다른 개발자와 함께 일을 하거나 이들을 멘토링할 때 느끼는 점은 글 쓰는 기술이 취약한 사람이 많다는 것이다. 이는 ‘글이 조잡하다거나’ 또는 제2언어를 쓸 때처럼 문법이 틀렸다거나 하는 차원을 넘어선다. 문제는 일정한 의도에 따라 생각을 체계화하여 독자에게 전달하지 못한다는 것이다. 누구나 한번쯤은 겪는 문제이긴 하다. 기술 계통 사람에게 완벽한 문법이나 문장을 기대하는 이는 드물다. 그러나 사람들이 이해할 수 있는 방식으로 사실을 명확히 전달할 수 있을 것이라는 보편적 기대치는 존재한다. 이러한 기대에 부응할 수 있느냐 없느냐는 소프트웨어 개발 조직의 리더가 되느냐, 아니면 혹독한 유지보수 코드를 모두 떠맡는 일꾼이 되느냐를 가르는 차이가 되는 경우가 많다. 다음과 같이 글 쓰기 작업을 하나씩 분해해보면 글을 통한 소통, 그리고 설득 과정이 한층 원활해질 것이다. 목적 글을 쓰는 첫 단계는, 기술적이든 또는 다른 경우이든, 목적(purpose)을 생각하는 것이다. 개발자라면 ‘이 소프트웨어가 하는 일과 그 이유를 설명하는’ 것이 보통이다. 때로는 ‘자신(개발자)의 방법이 가장 좋다고 누군가를 설득하는 것’이다. 여기서 대개 개발자가 추진하는 아이디어가 개략적으로 드러난다. 독자 기술 벤더의 기술 구현 관리자인 필자는 상이한 독자(audiences)를 겨냥한 글을 많이 쓴다. 이들은 대개 경영진, 설계자, 개발자, 실무자들이다. 독자는 예컨대 소매기업 실무자 같이 한 단계 더 구체적인 경우가 많다. 독자가 더 구체적일수록 이들에게 더 많은 말을 할 수 있으며, 더욱 효과적인 글이 가능해진다. 대다수의 개발자에게 표적 독자는 다른 개발자, 경영자, 실무자일 것이다. 디테일 디테일 수준은 목적 및 독자를 기준으로 한다....

커뮤니케이션 소통 작성 글쓰기

2018.06.18

개발자가 코드만 잘 써야 하는 것은 아니다. 글을 잘 쓰는 개발자는 커리어 경로에 있어 월등히 유리한 입지를 확보하게 된다. 필자가 다른 개발자와 함께 일을 하거나 이들을 멘토링할 때 느끼는 점은 글 쓰는 기술이 취약한 사람이 많다는 것이다. 이는 ‘글이 조잡하다거나’ 또는 제2언어를 쓸 때처럼 문법이 틀렸다거나 하는 차원을 넘어선다. 문제는 일정한 의도에 따라 생각을 체계화하여 독자에게 전달하지 못한다는 것이다. 누구나 한번쯤은 겪는 문제이긴 하다. 기술 계통 사람에게 완벽한 문법이나 문장을 기대하는 이는 드물다. 그러나 사람들이 이해할 수 있는 방식으로 사실을 명확히 전달할 수 있을 것이라는 보편적 기대치는 존재한다. 이러한 기대에 부응할 수 있느냐 없느냐는 소프트웨어 개발 조직의 리더가 되느냐, 아니면 혹독한 유지보수 코드를 모두 떠맡는 일꾼이 되느냐를 가르는 차이가 되는 경우가 많다. 다음과 같이 글 쓰기 작업을 하나씩 분해해보면 글을 통한 소통, 그리고 설득 과정이 한층 원활해질 것이다. 목적 글을 쓰는 첫 단계는, 기술적이든 또는 다른 경우이든, 목적(purpose)을 생각하는 것이다. 개발자라면 ‘이 소프트웨어가 하는 일과 그 이유를 설명하는’ 것이 보통이다. 때로는 ‘자신(개발자)의 방법이 가장 좋다고 누군가를 설득하는 것’이다. 여기서 대개 개발자가 추진하는 아이디어가 개략적으로 드러난다. 독자 기술 벤더의 기술 구현 관리자인 필자는 상이한 독자(audiences)를 겨냥한 글을 많이 쓴다. 이들은 대개 경영진, 설계자, 개발자, 실무자들이다. 독자는 예컨대 소매기업 실무자 같이 한 단계 더 구체적인 경우가 많다. 독자가 더 구체적일수록 이들에게 더 많은 말을 할 수 있으며, 더욱 효과적인 글이 가능해진다. 대다수의 개발자에게 표적 독자는 다른 개발자, 경영자, 실무자일 것이다. 디테일 디테일 수준은 목적 및 독자를 기준으로 한다....

2018.06.18

블로그 | 구직자가 이력서에 저지르는 7가지 실수

캐리어빌더(CareerBuilder)와 잡폭스(Jobfox) 설립자 롭 맥거번이 구직자들의 이력서를 읽으면서 발견한 7가지 실수들에 대해 지적하며 고용주의 입장에서 당부의 말을 전했다. 이력서에 넣으면 그럴 듯하게 보인다고 생각했던 ‘꼼꼼한 프로젝트 관리, 계획대로 실천해 결과 달성, 팀원들에게 비전을 제시하는 전문가’ 등은 사실 매우 상투적인 말들이다. 이런 표현들은 과감하게 이력서에서 삭제하는 게 좋다. 구직 검색 사이트 및 이력서 작성 서비스 업체인 잡폭스의 CEO로서 맥거번은 구직자들이 이력서에서 저지르는 가장 일반적이고-그리고 가장 멍청한-실수들을 종종 발견하곤 했다. 그가 말한 가장 흔하게 발견되는 7가지 실수들을 공유하고자 한다. 독자 여러분들도 얼마나 많은 실수를 저지르는지 확인해 보길 바란다. (참고로 필자는 네번째 실수를 저지른 적이 있다.) 첫번째 실수 : ‘~에 대해 책임진다’는 말을 사용한다 구직자의 이력서에서 등장하는 가장 끔찍한 말 중 하나가 바로 ‘~에 대해 책임진다’는 것이라고 맥거번은 지적했다. 이 말은 당신의 성과물이 무엇이고, 고용주가 당신에 대해 정말 알아야 하는 것들이 무엇인지를 그들에게 설명해 주지 못한다. 당신이 네트워크 운영, 통신, 데이터센터, 서버 및 워크스테이션에 대해 책임진다는 말은 마치 ‘모 회사가 주문을 5배 빠르게 처리하는 WAN(Wide Area Network) 기술로 설계했다, 업체와 재협상해서 통신비를 몇 %까지 줄였다, 4개의 데이터센터를 하나로 통합해 1년에 수 백 억 달러를 절약했다 등과 같은 말이다. 두번째 실수 : ‘몇 명의 직원들을 관리했다’고 말한다 고용주는 IT리더의 책임 영역에 대해 알고 싶어하기 때문에 IT부서의 직원 규모와 내부 인력 및 아웃소싱 인력 비율을 알고 싶어하지만 이 숫자들로 리더의 관리 기술 효율성을 설명할 수는 없다고 맥거번은 말했다. 매니저들은...

CIO 이력서 실수 구직 작성

2011.09.23

캐리어빌더(CareerBuilder)와 잡폭스(Jobfox) 설립자 롭 맥거번이 구직자들의 이력서를 읽으면서 발견한 7가지 실수들에 대해 지적하며 고용주의 입장에서 당부의 말을 전했다. 이력서에 넣으면 그럴 듯하게 보인다고 생각했던 ‘꼼꼼한 프로젝트 관리, 계획대로 실천해 결과 달성, 팀원들에게 비전을 제시하는 전문가’ 등은 사실 매우 상투적인 말들이다. 이런 표현들은 과감하게 이력서에서 삭제하는 게 좋다. 구직 검색 사이트 및 이력서 작성 서비스 업체인 잡폭스의 CEO로서 맥거번은 구직자들이 이력서에서 저지르는 가장 일반적이고-그리고 가장 멍청한-실수들을 종종 발견하곤 했다. 그가 말한 가장 흔하게 발견되는 7가지 실수들을 공유하고자 한다. 독자 여러분들도 얼마나 많은 실수를 저지르는지 확인해 보길 바란다. (참고로 필자는 네번째 실수를 저지른 적이 있다.) 첫번째 실수 : ‘~에 대해 책임진다’는 말을 사용한다 구직자의 이력서에서 등장하는 가장 끔찍한 말 중 하나가 바로 ‘~에 대해 책임진다’는 것이라고 맥거번은 지적했다. 이 말은 당신의 성과물이 무엇이고, 고용주가 당신에 대해 정말 알아야 하는 것들이 무엇인지를 그들에게 설명해 주지 못한다. 당신이 네트워크 운영, 통신, 데이터센터, 서버 및 워크스테이션에 대해 책임진다는 말은 마치 ‘모 회사가 주문을 5배 빠르게 처리하는 WAN(Wide Area Network) 기술로 설계했다, 업체와 재협상해서 통신비를 몇 %까지 줄였다, 4개의 데이터센터를 하나로 통합해 1년에 수 백 억 달러를 절약했다 등과 같은 말이다. 두번째 실수 : ‘몇 명의 직원들을 관리했다’고 말한다 고용주는 IT리더의 책임 영역에 대해 알고 싶어하기 때문에 IT부서의 직원 규모와 내부 인력 및 아웃소싱 인력 비율을 알고 싶어하지만 이 숫자들로 리더의 관리 기술 효율성을 설명할 수는 없다고 맥거번은 말했다. 매니저들은...

2011.09.23

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.6