반응형


Beginner부터 다양한 세션이 준비되어 있어서, 기대되네요.
반응형
반응형
린 소프트웨어 개발의 적용(원서명:Implementing Lean Software Development: From Concept to Cash)을 읽고 있습니다. 테스트 주도 개발이라는 책으로 알려진 켄트 백의 추천을 받기도 했는데요. 서문에 의하면 린 소프트웨어 개발이라는 책의 연장선 상에서 이 책이 출발했더고 저자들은 밝힙니다.

기억에 남는 부분은 "프로세스 가치 효율"에 관한 부분이었습니다. 이는 "실제로 가치를 더하는데 사용된 시간의 비율이 얼마인가?"라는 의문에서 출발한 개념인데요. 이는 기업에서도 주요한 개선이 될 수 있겠지만, 개인에게도 적용하기에 좋다고 생각했습니다. 짧은 시간 안에, 자신의 능력을 끌어올려서 높은 가치를 얻는다면, 그것은 다른 사람보다 가용시간이 많은 것과 비슷한 효과를 가져오기 때문입니다.

이 책은 총 11개 장으로 나누어져 있는데요, 서문을 제외하고는 각 장의 말미에 "시도해 볼 것"이라는 부분이 있습니다. 이 "시도해 볼 것"에서는 여태까지 그 장에서 다루었던 모델, 통념 등에 대해 실제 조직에 적용하기 알맞은 형태로 배열되어 있습니다. 이는 수업을 듣고, 그 수업의 이해를 돕기 위해 주어지는 숙제와 유사해 보였습니다. 책 표지 바로 뒤에 위치한, 파란 속지 "린 소프트웨어 개발의 원칙"이 2쪽에 걸쳐 깔끔하게 정리되어 있어서 유익했습니다.

프로젝트에 관련된 여러 사람에게 도움이 되겠지만, 특히 관리쪽에 관련이 깊은 분이라면 이 책을 통해 인상적인 통찰을 얻을 수 있을 것이라고 생각합니다.
반응형
반응형
월드 와이드 웹 컨소시엄(W3C)은, 1997년 이래 HTML 명세를 처음으로 중요하게 개선할, HTML 5 첫 번째 초안을 2008년 1월 22일에 발표했다.[각주:1] HTML 5의 최종 버전은 2010년 후기까지 나오리라 생각되지 않고, 브라우저 벤더 중에서 명세를 지원하는 것은 벤더의 선택에 달렸다. HTML 5는 HTML 문서를 다루고 에러에서 복구하는 일에 대해 규칙을 세움으로써 소프트웨어 비용을 절감하고 상호운용성을 끌어올릴 셈이다. W3C HTML 작업 그룹 공동 의장 Dan Connolly는 HTML 5가 달성하려고 하는 두 주요 목표를 말한다.[각주:2]  어떻게 HTML이 실제로 구현되었는가에 대비하여, 명세가 이야기하는 것, 그리고 대개 웹 애플리케이션에 속하며, 비디오를 웹 상의 1급 매체로 통합하는 등 새로운 기능을 추가하는 일이다. Connolly는 W3C가 사람이 웹에서 하는 일, 첨단의 웹 사이트가 수행하는 일을 연구해왔고 그러한 프랙티스를 표준화해서 적응성이 오서링(authoring) 툴에서 나타나고 배우기 쉽게 되도록 할 때라고 말한다. HTML 5를 위해 계획된 다른 적응성은 문서와 문서의 일부를 상호작용적으로 편집하는 능력, 영속적인 클라이언트-사이드 스토리지의 유지, 그리고 익숙한 페이지 엘리먼트를 표현하기 쉽게 하는 특징을 포함한다.[각주:3] 모질라는 이미 HTML 5를 파이어폭스 브라우저에서 지원하고 있고[각주:4], 마이크로소프트, 애플, 오페라를 포함한 다른 브라우저 벤더는 HTML 작업 그룹에서 활발히 참여하고 있다.
반응형
반응형
Economics and Web 2.0

웹 2.0의 경제적 암시에 대한 분석, 그리고 위키, 블로그, 소셜 네트워킹, 오픈 소스, 오픈 콘텐트, 파일 공유, 동등계층 생산 등 느슨하게 연결된 기술은 과학적 관심도 얻었다. 이 분야의 연구는 경제에 대해 웹 2.0이 갖는 암시와 웹 2.0 경제에 잠재된 원칙을 조사하는 일이다.

돈 탭스코트와 앤토니 D. 윌리엄스는 그들의 책 "위키노믹스: 어떻게 대규모 협업이 모든 것을 바꾸는가"에서 대규모 협업에 새로운 웹의 경제가 의존한다는 점을 논했다. 탭스코트와 윌리엄스는 웹 2.0의 도움을 받아 어떻게 수익을 창출할 지, 그 방법을 강구하고 있는 미디어 회사들에게 중요한 점이라고 여겼다. 그들이 "위키노믹스"라 칭한, 장래에 나타날 인터넷 기반 경제는 세계적인 개방, 피어링(peering)[각주:1], 공유, 행동의 원칙에 따를 것이다. 탭스코트와 윌리엄스는 7개의 웹 2.0 비즈니스 모델을 확인했다. (동료 개척자, 아이디어고라(ideagora)[각주:2], 프로슈머, 신 알렉산드리아 인, 참여를 위한 플랫폼, 세계적 플랜트플로(plantfloor), 위키 작업장)
  1. 각 네트워크의 소비자 사이에 트래픽을 교환하기 위한 목적을 달성하기 위해, 행정적으로 분리된 인터넷 네트워크의 자발적인 상호 연결. peering [본문으로]
  2. idea와 agora를 합성한 말로 보인다. [본문으로]
반응형
반응형
아키텍트 이야기를 읽고 있습니다. 처음에는 딱딱하고 어려운 책 아닌가 생각했었는데, 설명 중간에 줄거리가 되는 이야기가 있어서 책을 읽을 때 흥미를 꾸준히 느낄 수 있도록 합니다. 책에서는, 아키텍트란 소프트웨어 개발과 관계되어, 기술적 결정을 하는 최고 책임자라고 정의합니다. 프로그래머의 정년은 다른 직업보다 짧게 이야기되곤 하는데요, 이 책에서는 그에 대한 대안으로 아키텍트라는 역할을 제시합니다. 줄거리가 되는 이야기의 등장인물들은 이니셜을 가지고 등장하는데요. C라는 인물이 아키텍트로서 마주하는 상황들이 재미있으면서도 현실적으로 느껴졌습니다. 이는 저자가 다양한 시스템을 개발한 경험을 가지고 있는 데에서 기인한 듯합니다.

한국에서도 아키텍트라는 직업은 이제 낯선 이름이 아니게 된 듯합니다. 네이버 카페 아키텍트를 꿈꾸는 사람들에서는 스터디와 캠프 등 활발한 활동을 펼치고 있습니다. 문제를 풀기 위해 기술을 판단한다는 점에서 아키텍트란 직업은 매력이 있습니다. 다만, 훌륭한 아키텍트가 되기 위해서는 끊임없이 기술을 학습하고 의사소통을 잘 하는 법을 익히는 등 많은 노력이 필요할 것 같습니다. 아키텍트에 대한 전반적인 정보를 듣고, 아키텍트와 개발자 사이의 차이를 인지하는 데 도움을 주는 책이라고 봅니다.
아키텍트 이야기 상세보기
야마모토 케이지 지음 | 인사이트 펴냄
개발자들을 위한 아키텍트 이야기를 담은『아키텍트 이야기』. 이 책은 아키텍트가 프로젝트의 흐름에 따라 어떠한 역할을 하고 어떻게 프로젝트를 성공시키는 가에 대하여 가상의 아키텍트를 통하여 상세하게 설명한다. 《아키텍트 이야기》에서는 아키텍트의 요구 분석 단계 업무와 설계방법, 아키텍처로 문제를 해결하는 방법, 왜 아키텍트가 돌파구인가에 대한 내용으로 구성했다.
반응형
반응형
서브버전을 이용한 실용적인 버전 관리Pragmatic Version Control using Subversion의 번역서입니다. 번역서가 2006년 3월에 나왔는데, Pragmatic Version Control using Subversion, 2nd Edition이 2006년 5월에 나왔습니다. 이 책의 번역서는 없는 것 같습니다. 2판에서는 subversion 1.3의 주요한 변화들이 반영되어 있다고 합니다.[각주:1]

번역서는 조금 낯선 용어들이 보입니다. 가지(branck), 꼬리표(tag), 조리법(recipe) 등이 그에 해당합니다. 책의 짜임새는 잘 구성된 편입니다. 명령 요약도 대체로 만족합니다. 설명이 명령어 중심이라, 서브버전을 명령 줄 인터페이스에서 사용할 때 참고하기 편합니다. 기타자료로 제시된 Subversion Book도 볼만 한 것 같습니다. 어제는 접속이 안 되었는데 이 글을 쓸 때에는 접속이 잘 되는군요. 영문이며, 무료로 내려받을 수도 있습니다.

모르는 부분을 찾아 보면서 서브버전[각주:2]을 익혀야겠습니다.
서브버전을 이용한 실용적인 버전 관리 상세보기
Mike Mason 지음 | 정보문화사 펴냄
오픈 소스 버전 관리 시스템인 서브버전(Subversion)의 효과적인 활용을 담고 있는『서브버전을 이용한 실용적인 버전 관리』. 이 책에서는 버전 관리 시스템을 최대한 활용하기 위한 여러 기본적인 조리 법들을 제시하고 있다. 《서브버전을 이용한 실용적인 버전 관리》에서는 왜 서브버전인가와 버전 관리의 기초, 서브버전 체험하기, 활용법, 저장소에 접근하기, 자주 쓰는 서브버전 명령들, 저장소에 프로젝트 만들기 등으로
  1. http://www.pragprog.com/titles/svn2 [본문으로]
  2. subversion은 영어 단어로 전복, 파괴라는 뜻을 가지고 있습니다. sub_version이라고 해석할 수도 있어서 재치있는 작명으로 생각합니다. CVS보다 뛰어나자는 마음에서 그런 의미를 지닌 단어를 택한 게 아닌가 추측합니다. [본문으로]
반응형
반응형
미루어 두었던 SyntaxHighlighter를 설치했다.
다음은 예시 코드.

<?php
class SqliteConnection extends BaseConnection {
  // ...
}
register_driver('sqlite', 'SqliteConnection', 'Sqlite Database');
?>
소스코드를 블로그에 게시할 때 예쁘고, 줄 번호가 붙어서 보기 편하다. 자바스크립트 등을 불러와야 하기 때문에, 접속이 다소 느리게 되는 일을 감수해야한다. 티스토리에서 사용하기 위해, "스킨"-"직접올리기" 메뉴를 통해 스타일시트, 스크립트, 플래시 파일을 업로드 한다.(희한하게도 전부 images 디렉토리에 올라간다.) 그 이후 HTML/CSS 편집을 통해 경로 설정을 해 주었다.

Usage를 따라서 설정을 해 두고, Making it Work 부분에서 처럼 shCore.js가 다른 언어 자바스크립트의 상단에 위치해야 한다. 그 밑에 두 줄에서

<script language="javascript">
  dp.SyntaxHighlighter.ClipboardSwf = '/flash/clipboard.swf';
  dp.SyntaxHighlighter.HighlightAll('code');
</script>
가 있는데, clein의 comment처럼

<script language="javascript">
  window.onload = function () {
    dp.SyntaxHighlighter.ClipboardSwf = '/flash/clipboard.swf';
    dp.SyntaxHighlighter.HighlightAll('code');
}
</script>
로 바꾸어야 제대로 작동했다. 티스토리 편집기에서 HTML 모드로 편집하다가, WYSIWYG 모드로 바꾸니깐, 소스 코드 부분에서 줄 바꿈을 했던 부분에 <br />이 강제로 붙어서 소스가 한 줄로 표현되어버리는 현상을 겪었다. HTML 등의 소스코드를 쓸 때 <(less than) 부등호는 &lt;으로, >(greater than) 부등호는 &gt;으로 바꾸어서 써 줄 필요가 있다.
반응형
반응형
snowall님의 텍스트큐브 건의사항에서 읽고, 언젠가는 해 봐야지 하고 마음을 먹고 있었는데 이번에 실천을 해 보게 되었다. 사용한 태그를 세어주는 사용할 수 있는 플러그인이 없으니[각주:1] 수동으로라도 세어보는 방법을 생각했다.

일단 자기 블로그에서 태그 페이지를 들어간다. 그 방법은 'http://블로그의 주소/tag'로 The note of Legendre(지금 보고 계신 블로그)의 경우 태그 페이지는 http://legendre.tistory.com/tag이다. 스킨에서 태그 또는 tag list 등의 메뉴가 지원된다면 그 곳을 클릭해서 태그 페이지로 들어가도 좋다.

태그 페이지

태그 페이지로, 블로그에서 사용했던 태그들이 나열되어 있다.


이제 이 페이지를 쉽게 다루기 위해 로컬에 저장한다.
파이어폭스에서 웹페이지 저장하기

Firefox에서 웹 페이지를 저장하는 모습

메뉴를 누르고 나면, 어디에 저장받을 것인지를 확인하는 창이 뜨는 데 자신이 찾기 편한 곳에 저장해 두면 된다. Microsoft Internet Exploerer를 웹브라우저로 사용하는 경우에도, '파일-다른 이름으로 저장' 메뉴를 통해 자신의 컴퓨터로 페이지를 내려받을 수 있다.
우클릭 메뉴 모습

파일에 마우스로 우클릭해서 메뉴를 띄운 모습


내려받은 파일에서 웹 페이지(확장자가 .html 인 파일)에서 마우스 포인터를 두고, 오른쪽 버튼을 누르고 연결프로그램에서 텍스트 편집기 프로그램(이를테면 메모장, gVim…)을 선택한다. 연결프로그램이 나오지 않을 경우 Shift 키를 누른 채 오른쪽 버튼 클릭을 해 본다. 원하는 텍스트 편집기 프로그램이 보이지 않을 경우, 프로그램 선택을 눌러서 선호하는 편집기 프로그램을 골라 열 수 있다.
사용자 삽입 이미지

편집기 화면


저장된 페이지를 편집기로 연다. 7번째 줄에 <link rel="stylesheet" ... style.css> 라는 부분이 있는 데 이 줄 전체를 지워 준다. 스타일시트가 적용된 채 페이지를 열면 리스트 태그를 바꾸어도 숫자가 표시되지 않기 때문이다.
<ul>

<ul> ul(unordered list)이 시작하는 부분

<ul> 끝

</ul> ul이 끝나는 부분



쭉 내려가서 300번째 줄 이후에 <h3>태그[각주:2]</h3>이라는 부분이 보인다. 그 밑에 <ul> 이라는 부분이 있는데 이를 <ol>로 바꾸어 준다. 그 밑에는 <li>로 시작하는 태그들이 줄줄이 나열되어 있다. 이 태그 리스트의 나열 부분이 끝나는 부분에 </ul>이 있는데 이 태그도 </ol>로 바꾸어 준다.
(태그를 리스트 형식으로 지정하고 있는데, ul은 unordered list의 약어라서 이를 ol(ordered list)로 바꾸어 준 것이다. 이렇게 바꾸고 나면 번호를 웹 브라우저에서 매겨 준다.)

이제 파일을 선호하는 웹 브라우저로 열어준다.

익스플로러의 경우 보안설정에 따라 "사용자의 컴퓨터를 액세스할 수 있는 액티브 컨텐트를 표시하는 것을 차단했습니다"가 노란 막대로 위에 주소창 밑에 나올 수 있는데 이번 일에 크게 관련은 없다. (html 파일 내에서 불러오는 경로에 있는, 자바스크립트의 실행을 차단했다는 의미로 보인다.)

예시 결과는 다음과 같다. 각 태그 리스트에 번호가 붙기 때문에 태그 리스트의 끝 부분에 가서 앞에 매겨진 숫자를 살펴보면 전체 몇 개의 태그를 사용했는지 알 수 있다.
웹 브라우저 화면

수정한 페이지를 연 화면

웹 브라우저 화면 2

연 페이지의 스크롤을 내린 화면

이 글을 공개하기 전에 621개의 태그를 이 블로그에서 사용했음을 알 수 있다.
  1. 티스토리 이용자의 경우 플러그인은 기본으로 탑재되어 있는 것만 사용 가능하다. [본문으로]
  2. 스킨에 따라 이 내용은 Tag Cloud 등으로 다른 이름일 수 있다. [본문으로]
반응형
반응형
PHP in Action(부제: Objects, Design, Agility)을 읽고 있습니다. 정말 좋은 책입니다.
이 책의 resource를 잠시 나열하겠습니다.
...
  1. Beck, Kent. Test-Driven Development by Example. Addison-Wesley. 2003.
    1. 테스트 주도 개발. 인사이트 2004.
  2. Evans, Eric. Domain-Driven Design. Addison-Wesley, 2004.
  3. Feathers, Micheael. Working Effectively with Legacy Code. Prentice Hall, 2005.
  4. Fowler, Martin, et al. Refactoring: Improving the Design of Existing Code. Addison-Wesley, 1999
    1. Refactoring(한글판). 대청. 2002.
  5. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns. Addison-Wesley, 1995.
    1. GOF의 디자인 패턴(개정판). 피어슨에듀케이션코리아. 2007.
      ...
  6. Bushman, Frank, et al. Pattern-Oriented Software Architecture. John Wiley & Sons, 1996.
  7. Shiflett, Chris. Essential PHP Security. O'Reilly, 2006.
    1. PHP 보안: 몇줄의 코드로 안전하게. 한빛미디어. 2006.
  8. Martin, Robert C. Agile Software Development. Principles, Patterns, and Practice. Prentice Hall, 2003.
책에서는 Part 1에서 "도구와 개념"을 논하고, Part 2에서는 "테스팅과 리팩터링"에 대해 논합니다.  Part 3에서는 "웹 인터페이스 빌드하기", Part 4에서는 "데이터베이스와 인프라스트럭처"를 논하고 있습니다.
부록에서는 "테스팅을 위한 도구와 팁"(Simple Test, PHPUnit와 같은 단위 테스팅 프레임워크에 대해), "보안" (SQL injection, XSS 등에 대해)등 간과하기 어려운 주제를 간략히 서술하고 있습니다.

이렇게 파격적인 구조로 이루어진 한글로 된 PHP 책은 아직까지 발견하지 못했습니다. 국내에 들어와 있는 "무작정 따라하는" 책에서는 PHP 문법은 무엇인지 암기하도록 독려하고, 예제를 들어 독자로 하여금 따라할 것을 요구하여 왔습니다. MySQL이나 Apache와 통틀어서 한 권의 책으로 다루어지는 일도 빈번했습니다.

건강한 웹 애플리케이션을 위한 설계와 개발 원리(단위 테스팅, 리팩터링, 디자인 패턴)에 대해 특정 언어에 적용하여 설명하고 있다는 점에서, 이 책은 정말 가치 있다고 생각합니다. PHP에 대해 기초적인 지식이나, 다른 프로그래밍 언어를 다루어 본 적이 있고, PHP를 당장 실무에 적용해야 할 일이라면 이 책이 적임이라고 봅니다.
p.s.
  1. 책의 저자 중 한 명인 Dagfinn Reiersøl의 블로그 PHP in Action이 있다. 드물게 포스팅이 이루어지나, 경험에서 우러나온 유익한 글이 많아 보인다.
  2. Manning에서 제공하는 Forum: PHP in Action이 있다.

PHP IN ACTION : Objects, Design, Agility 상세보기
Reiersol, DagfINn/ Baker, Marcus/ Shiflett, Chris 지음 | Oreilly & Associates 펴냄
반응형
반응형
티스토리 공지사항에 보면, 티스토리 초대장을 받으시고 난 뒤 블로그를 생성하여
스팸블로그(혹은 스플로그)로 사용을 하실 경우,
신고되어서 스팸센터에 제한조치가 걸리는 일이 일어날 수 있다는 등의 주의사항이 들어있습니다.


초대장이 모두 소진되었습니다. 97번째 부터 댓글을 다신 분께는, 초대장을 드리기 어렵게 되었습니다.
이 점 양해하시고, 다른 블로그에서 초대장을 구하시길 바랍니다.
12월도 다 가고 있습니다. 티스토리 초대장 24장 있습니다.
초대장이 2장밖에 없어서, 이런 포스팅을 올리기가 9월에는 부담스러웠는데
10월에 30장이 추가로 충전되어서 이런 포스팅을 올리기에 적당한 시기라고 생각합니다.
(티스토리 초대신청 페이지에서는 열심히 활동하면 충전이 된다고 써 있네요.)

티스토리 초대장을 받으시려면 이 포스트의 댓글에 전자우편 주소를 반드시 남겨 주셔야 합니다.
이메일 주소가 외부에 공개되는 게 꺼려지시면 비밀글로 남겨주시는 것도 좋은 방법입니다.
블로그의 운영목적도 같이 써 주시면 더 좋습니다만,
불편하게 느끼실 분도 있을지 몰라서 원하신다면 같이 기재해주세요.
(초대장을 보내는 순서에 참고가 된답니다. ^^)

주의: 탈퇴를 하신 티스토리 회원이셨던 분께서는,
한달 동안 초대가 제한되는 경우가 있으니 참고하시기 바랍니다.

티스토리에 오셔서 즐거운 블로깅하시길 기원하겠습니다.
감사합니다.
반응형

+ Recent posts