본문 바로가기

임백준

(3)
[팟캐스트 나는 프로그래머다 2탄] 개발과 삶에 대한 나.프.다의 못다 한 이야기! ■ 본문 중에서 # 스탠바이 – 023p.퍼즐이나 알고리즘 문제를 풀 때, 심지어 회사에서 어떤 문제를 해결하고자 할 때 이런 파괴와 창조는 유용하다. 미국에서는 보통 이런 걸 ‘상자 밖에서(out of box)’ 생각한다고 표현한다. 자기 머리가 유연하지 않다는 생각, ‘나는 왜 이런 문제를 풀지 못하지?’라는 생각이 드는 사람은 자기가 올해 읽은 시집이 몇 권인지 생각해보면 답이 나올 것이다. 아니, 시집의 권 수를 세는 것이 아니라 제대로 읽은 시가 몇 편인지 따져보아도 답이 나올 것이다.상상이라는 말을 하는 사람은 많지만, 상상을 잘하기 위해서 노력하는 사람은 드물다. 하지만 상상을 하는 힘을 의미하는 상상력은 숨쉬고 밥을 먹으면 생기는 것이 아니다. 매일 헬스클럽에 다니는 사람의 배에 초콜렛 복..
[팟캐스트 나는 프로그래머다] 뉴욕, 서울, 도쿄 개발자의 촌철살인 IT 이야기 ■ 본문 중에서 # 보안전문가의 보안범죄 - 031-033p.객체지향, 리팩토링, NoSQL 등의 분야에서 잘 알려진 마틴 파울러(Martin Fowler)는 프로그래머의 윤리와 관련된 강연을 여러 차례 수행했다. 2010년 QCon 런던에서는 '소프트웨어 개발의 윤리 the ethics of software development'라는 제목으로, GOTO 2014 행사에서는 '그저 코드 몽키인 것은 아니야 Not Just Code Monkeys'라는 제목으로 강연을 했다. 이러한 강연을 통해서 그가 전한 질문은 이런 것이었다."고객이 도덕적으로, 혹은 심지어 법적으로 하자가 있는 요청을 해올 때 프로그래머는 그것을 구현해야 하는가?" 법적으로는 문제가 없어도 윤리적인 문제를 가지고 있는 경우를 묶어서 파..
임백준의 소프트웨어 산책 원문작성 [2008/05/05] 그러다가 어느 시점에서 특정한 조건이 충족되면 주어진(자바 언어에서 ArrayList로 선언된) 리스트의 내용을 모두 비워야 하는 순간이 있었다. 필자를 포함한 두 사람은 급히 다음과 같은 코드를 작성했다. for (int index = 0; index < list.size(); index++){ list.remove(index); } 필요한 내용을 모두 구현한 다음에 테스트를 수행했는데, 결과가 원하는 대로 나오는 것 같더니, 어느 순간 엉뚱한 결과가 나오기도 했다. 그래서 두 사람은 디버거(debugger)를 돌리면서 변수의 상태를 하나씩 검사하다가 위의 루프에서 오류를 발견하게 되었다. … … 버그를 발견한 두 사람은 서로 마주보고 웃으면서 루프의 내용을 다음과 같이..