개발&Development 190

문서쓰기

간만에 만난 친구가 일전에 개발회사에서 쓸데없는(!) 문서 쓰는 것에 대한 하소연을 들었다. 팀장으로서 오늘도 잡다한 문서를 작성하고 있는 본인에게 그런 불평을!!!! 다른 직종들의 경우 문서를 쓰는 것에 대해 당연하게 여기는 분야도 많으나 유독 프로그래머나 개발 관련 사람들의 경우 문서를 쓰는 것에 대해 불만이 많고 그 작업을 귀찮다고 여긴다. 그런 상황에서 생성되는 문서는 당연히 내용이 충분하지 못하고 별 도움이 안되며 그런 문서만 쓰고 보다보니 다시 그것을 만드는 작업에 대해 불필요하다고 느낀다. 덕분에 때로는 통신 포맷을 정리해 놓은 문서조차 제대로 기술이 되어 있지 않아서(있다 하더라도 예외나 확장등에 대해 정확히 기술되지 않아 정말 쓰레기정도의 문서만 존재하기도 한다) 전임자에게 욕을 한바가지..

Lineage2 클라이언트의 보안 변천사

이전에 암호를 다르게 넣어도 인증되는 오류(암호화 알고리즘은 함부로 생각해 내지 말자라는 교훈을 주고 있음)와 이번에 Plain Text로 로그에 저장하는 문제때문에 시껍한 문제의 프로그램... 본인이 지켜본 리니지2 클라이언트의 변화를 적어 보고자 한다. 일전에 NCSoft에 면접 보러 갔다가 거기의 아는 선배가 던진 질문이 생각난다. 서버의 부하때문에 일부 연산은 클라이언트로 옮기는 것이 좋을거 같은데 괜찮을까? 역시 대답을 예상하고 던진 질문이겠지만 "NO"이다. 다른 게임의 Speed Hack(게임에서 설정한 정상적인 이동 속도보다 더 빠르게 움직일 수 있게 하는 프로그램)이 이런 이유에서 나올 수 있는 것이다. 리니지를 보고 있노라면 적어도 이런 부분은 잘 지키고 있다. 클라이언트는 말 그대로 ..

어플리케이션에서의 보안

우선 권장하는 책은 Writing Secure Code 2/E : 안전한 코드 작성 기술 정도가 있다. 이 분야에 대해 그나마 뭔가 주제를 가지고 쓴 책. 내용도 상당히 훌륭한 편. 언젠가 웹페이지나 프로그램에서 암호 부분에 '*'로 표시 된 것을 읽어 내는 프로그램이 유행한 적이 있다. 대부분의 개발자나 사용자는 화면에 보이지 않으면 암호가 안전할 것이라 생각하였는데 그런 부분에 대한 일침이었다. 하지만 아직도 많은 곳에서 이 방법을 사용중에 있다. 이것을 고치려는 노력은 별로 보이지 않는다. 정말 일부분의 프로그램만이 해당 위치에 가비지값을(혹은 암호화된 내용. 원래 패스워드를 구지 거기에 적을 필요는 없지 않은가) 넣어 둔다. 보안이라는 것은 자신의 자산을 지키는 것도 중요하지만 이제는 타인 특히 ..

조엘온소프트웨어에 대한 메모

중간에 너무나 정형적인 개발 프로세스에 대한 비판이 나오면서 http://www.construx.com/resources/ 여기를 지적하고 있는데 아는 사람은 알겠지만 이 회사는 바로 Steve McConnell씨의 회사이자 그의 책에서 쓸만한 리소스들을 보라고 가르쳐 준 곳이다. (Code Complete, Rapid Development, Software Survival Guide, Professional Software Development 등의 저자) 블로그의 특성답게 조엘씨는 스티브씨를 거의 대놓고 씹어 버린게 아닌가 싶을 정도이다. 일련의 나의 팀에 표준 개발문서들이 그 리소르를 토대로 만들었단 말이닷! ㅠ.ㅠ 사실... 그것을 만들면서 너무 쓸데없는 것들이 많은게 아닌가 하는 생각도 들었지만..

조엘 온 소프트웨어

조엘 온 소프트웨어, 강컴 + 겐도의 서평도 있음 소문도 익히 들었고.. jrogue님의 블로그에서 드디어 나왔다는 소식을 들은 이후... 바로 사서 읽어보게 되었습니다. 를 인생에 걸쳐 몇번은 읽어봐야 하듯 현세를 사는 프로그래머라면 읽었을때 적어도 책값은 벌 수 있고 도움이 될 가능성이 상당히 높은 책으로 추천합니다. 위의 강컴링크에서 저나 다른 사람들의 서평도 읽어보시면 대충 감이...

C++ 창시자「C++ 반격이 시작됐다」주장

C++ 창시자「C++ 반격이 시작됐다」주장 in ZDNet 나름대로 System Programer이자 C++을 주로 사용하고 있노라면 최근 개발 이슈들이나 개발 툴들이 지원하는 것에 약간은 아쉬움이 생기곤 한다. Java, C#, VB쪽은 엄청난 광고, 지원, 자료들이 나오지만 C++은 이제 지는 해라는 생각만.... 더구나 웹 어플리케이션이 엄청 강조되면서 나같은 SPer는 소외되지 않나하는 생각도 들곤 한다. 스트라우스트럽 아저씨의 말 즉 C++이 더이상 광고를 많이 안할 뿐이라는 말에 다소간 위로를 받는다. 마치 지금 COBOL 개발자는 엄청난 대우를 받고 있다는 소리도 있고 등등등. 가끔은 C#이 해보고 싶고 따분한(?) SP보다는 반짝반짝 UI쪽도 해보고 싶은 충동도 느끼지만... 중요한 것은 ..

다익스트라 할아버지.

전산학「새 지평 연」다익스트라 in ZDNet Korea 전산학책에 심심치 않게 등장하시면서... 프로그래머란 직업을 만드는데 일조하셨고 지금 내가 밥벌어먹고 사는데도 상당히 도움(?)을 주신 분. 전산을 하는 사람이라면 이분의 영향을 벗어나기란 어려울 것이다. 심지어 산업공학에서도 나오는 최소경로알고리즘.. 그냥 링크 걸어봄. ;;;

사람의 목숨을 위협하는 UI

Medical killer design from GUUUI 소프트웨어 공학에서 Case Study로 자주 사용하는 분야가 의학과 군사쪽이 아닌가 싶다. 다른 분야라 하더라도 사람의 목숨에 직접적인 영향이 있는 것들이 아무래도 Fault의 영향이 가슴에 뼈져리게 느껴져서 그런 것일지도. 이번에는 UI의 영역에서도 그런 Case를 보고 있는 것 같다. 사용자의 인풋을 받는 다이얼로그에서 초기값을 어떻게 주느냐에 따라, 그리고 표현 용어의 선택이나 범주에 따라 환자의 목숨이 왔다갔다 하는 상황이다. 일반적인 케이스에서 (몇몇 직원의 목이 달랑달랑 할지는 모르지만..) 사람의 목숨이 왔다갔다 하는 경우는 드물지만 해당 시스템(혹은 어플리케이션)이 기업에 주는 생산성에 주는 영향은 매우 클것이다. 심지어 도입전 ..

텝팔과 텝사...

C 프로그램 들여쓰기 크기 논쟁 from KIDS - slowxslow님의 블로그 1999년도에 이런 일이 있었다니... 중간에 나오는 학부생은 꺼져라는 말에 약간 가슴이 아팠습니다만... 아무튼 Coding Style에 대해 몇자 적어 볼까 합니다. Quantum Leaps C/C++ Coding Standard 다른 자료들도 들고 있습니다만 이 자료도 상당히 재미있습니다. 특히 TAB과 관련해서는 이 문서에서 이야기하는 요소도 있구나 하는 생각을 들게 해 주었으니까요. 그래서 KIDS의 이야기를 봤을때 문득 떠오르는 문서기도 하였습니다. 뭐 자세히 읽어 보지 않을 분들을 위해 몇군데 발췌를.. In General Rules No tabs are allowed in the source code beca..