반응형
반응형

지금 당신이 겪는 시련을 통해
자신의 진정한 모습을 발견하기를.
지금 당신이 지나고 있는 깜깜한 고통의
터널 끝에서 눈부신 깨달음의 빛을 만나기를.
그 여정 끝에 희망을 만나기를. 그리고
괴로움의 폭풍이 지나가고 난 후에
더 없는 평온과 기쁨을 누리기를.


- 대프니 로즈 킹마의《인생이 우리를 위해 준비해 놓은 것들》중에서 -


* 세상의 모든 것이
눈부신 깨달음의 재료입니다.
시련, 고통, 괴로움의 폭풍도 마찬가지입니다.
그때는 견딜 수 없는 시련이었고 고통이었으나
한 순간 깨닫고 나면 빛으로 변합니다.
깨달아야만 비로소 빛이 됩니다.
희망이 되고 기쁨이 됩니다.

반응형

'생활의 발견 > 아침편지' 카테고리의 다른 글

얼음 없는 세상  (0) 2015.08.05
비노바 바베  (0) 2015.08.04
설레는 일을 시작하자  (0) 2015.08.01
희망이란  (0) 2015.07.31
인생의 투사  (0) 2015.07.30
반응형
추상적이고 거창한 구호로
삶이 행복해지고 재미있어지는 것이 아니다.
그 어떤 위대한 가치나 이데올로기도
내 삶에 구체적으로 경험되지 않으면 실천되지 않는다.
결정적인 순간에 지식인이 비겁해지는 이유는
바로 이 구체성이 빠져 있기 때문이다.


- 김정운의 《남자의 물건》 중에서 -


* 내가 좋아하는 일,
가슴 설레는 일을 계획하고 바로 시작해 보십시오.
한 번 해보세요. 시작해야 변화할 수 있습니다.
행복해질 수 있습니다.

 

반응형

'생활의 발견 > 아침편지' 카테고리의 다른 글

비노바 바베  (0) 2015.08.04
눈부신 깨달음의 빛  (0) 2015.08.03
희망이란  (0) 2015.07.31
인생의 투사  (0) 2015.07.30
나침반마저 없을 때  (0) 2015.07.29
반응형
실력주의가 자리 잡으려면
‘반대할 의무’가 존재하는 문화가 필요하다.
어떤 아이디어에 잘못이 있는데도
반대의견 없이 채택되면 비난받아 마땅하다.
일반적으로 사람들은 반대 의견을 내세울 때 불편해한다.
바로 이것이 반대의견이 선택사항이 아니라
의무가 되어야 하는 이유다.
- 에릭 슈미트, ‘구글은 어떻게 일하는가’에서



어떤 일이 정확하지 않거나
고객의 이익에 반한다고 생각할 때
누구나 반대할 의무가 있다.
모든 사람의 의견은 존중 받아야 한다.”는
내부 규정이 나와 있습니다.
직급에 관계없이 누구나 자유롭게 자기 의견을,
특히 반대의견을 편안하게 드러낼 수 있는 문화가 필요합니다.

 

 

 

 

반응형
반응형

희망이란
본래 있다고도 할 수 없고 없다고도 할 수 없다.
그것은 마치 땅 위의 길과 같은 것이다.
본래 땅 위에는 길이 없었다.
한 사람이 먼저 가고
걸어가는 사람이 많아지면
그것이 곧 길이 되는 것이다.


- 루쉰의《고향》중에서 -


* 그렇습니다.
희망은 처음부터 있었던 것이 아닙니다.
아무것도 없는 곳에서도 생겨나는 것이 희망입니다.
희망은 희망을 갖는 사람에게만 존재합니다.
희망이 있다고 믿는 사람에게는 희망이 있고,

희망 같은 것은 없다고 생각하는 사람에게는
실제로도 희망은 없습니다.  

반응형

'생활의 발견 > 아침편지' 카테고리의 다른 글

눈부신 깨달음의 빛  (0) 2015.08.03
설레는 일을 시작하자  (0) 2015.08.01
인생의 투사  (0) 2015.07.30
나침반마저 없을 때  (0) 2015.07.29
마음을 꺼내 놓는다  (0) 2015.07.28
반응형

성공하는 사람들이 하지 않는 7가지

 

 

 

 

1. 과거로 미래를 결정짓는다.

과거에 했던 실수나 경험에 얽매이지 말고 자신에 대한 믿음을 가져야 한다. 과거로부터 배움을 얻는 것과 과거에 얽매이는 것은 서로 다른 일이다.

2. 다른 사람의 험담을 하고 소문을 퍼뜨린다.

남의 험담을 하는 사람은 그 역시도 다른 데서 자신의 험담이 나오게 마련이다. 뒷담화는 뒷담화를 부른다. 이것은 진리다.

3. 거절할 생각이면서도 '알았다'고 대답한다.

더욱 높은 단계의 성취를 위해서는 건강한 관계를 맺는 것이 필수다. 우리의 시간은 소중하고 그래서 어떤 기회나 상황이 발생할 때마다 이를 위해 자원을 투자할 가치가 있는지 제대로 따져봐야 한다. 모호하게 말했다 생길지 모를 감정싸움도 큰 낭비다.

4. 다른 사람의 말을 끊는다.

성공하는 사람은 곧 좋은 '리스너'다. 이해하려고 노력하는 자세는 기본이다. 성공하는 사람들은 자신이 상대방의 말을 중요하게 여기며 귀 기울여 듣고 있다는 것을 상대방이 느낄 수 있게 행동한다.

5. 지각한다.

기본적인 존중의 문제다. 사람들이 당신에 대해 나쁜 인상을 갖도록 만드는 지름길.

6. 분한 마음, 질투심, 반감을 지우지 않고 품고 있다.

마음에 병이 든다. 그리고 2번을 보라!

7. 두려움으로 주저한다.

실패에 대한 두려움은 누구나 당연하게 갖고 있다. 남들 눈에 부적절해 보일까 봐 두려워하기도 한다. 사람들 앞에서 말하는 것, 높은 장소에 올라가는 것 등 공포의 종류는 많다. 성공하는 사람들은 두려움을 느끼면서도 앞으로 나아간다.

반응형
반응형
깨끗한 코드 만들기

 

 


가독성의 기본
1. 코드는 이해하기 쉬워야 한다.
2. 코드는 다른 사람이 그것을 이해하는 데 들이는 시간을 최소화하는 방식으로 작성되어야 한다.
3. 1회용 코드는 되도록 피해야 한다(스스로가 희생양이 될지도).
참고: Perl 코드(WORN: Write Once Read Never)


코드 읽기 vs 코드 쓰기
읽기: 쓰기의 비율은 읽기 = 10: 쓰기 = 1
비율이 이렇게 높으므로 읽기 쉬운 코드가 매우 중요하다. 비록 읽기 쉬운 코드를 짜기가 쉽지는 않더라도 말이다. 하지만 기존 코드를 읽어야 새 코드를 짜므로 읽기 쉽게 만들면 사실은 짜기도 쉬워진다.
이 논리에서 빠져나갈 방법은 없다. 주변 코드를 읽지 않으면 새 코드를 짜지 못한다. 주변 코드를 읽기가 쉬우면 새 코드를 짜기도 쉽다. 주변 코드를 읽기가 어려우면 새 코드를 짜기도 어렵다. 그러므로 급하다면, 서둘러 끝내려면, 쉽게 짜려면, 읽기 쉽게 만들면 된다.

현실에서는 ? 데이비드 파나스(소프트웨어 공학 태두)
소프트웨어 설계자가 요구 사항으로부터 이성적이고 오류가 없는 방식으로 설계한 그림은 엄청나게 비현실적입니다. 어느 시스템도 이런 이성적인 방식으로 개발되지 않았으며, 아마도 앞으로도 이런 일은 생기지 않을 것입니다. 심지어 교과서나 논문에 나온 작은 프로그램 개발조차도 비현실적입니다. 교과서나 논문에 나온 프로그램은 개선되고 수정되는 과정을 거치면서 저자들이 바라는 바를 보여주지 실제 일어난 과정을 보여주지는 않습니다.


단위 테스트 실행시 지켜야할 원칙 : F.I.R.S.T.
빠르게(Fast): 테스트는 빨라야 한다.
독립적으로(Independent): 각 테스트는 서로 의존하면 안 된다. 한 테스트가 다음 테스트가 실행될 환경을 준비해서는 안 된다.
반복가능하게(Repeatable): 테스트는 어떤 환경에서도 반복 가능해야 한다.
자가검증하는(Self-Validating): 테스트는 부울(bool) 값으로 결과를 내야 한다. 성공 아니면 실패다.
적시에(Timely): 테스트는 적시에 작성해야 한다. 단위 테스트는 테스트하려는 실제 코드를 구현하기 직전에 구현한다.


이름 짓기
1. 수학 함수라고 해서 어려울 필요는 없다. i)함수 포인터 타입 정의 ii) 좌표를 구조체로
2. 표현을 잘개 쪼개기.
 - 거대한 표현을 작은 조각으로 나누고 함수로 분리한다.
 - 하위표현을 간결한 이름으로 대체해 함수로 분리한다.
 - 코드를 읽는 사람이 핵심 ‘개념’을 파악하게 읽기 쉬운 코드를 작성한다.
3. 변수는 내버려두면 계속 늘어난다. 변수를 덜 사용하고 최대한 ‘가볍게’ 만들어 가독성을 높인다. 아래와 같이 실천한다.
 - 방해되는 변수를 제거: 결과를 즉시 처리하는 방식으로, 중간 결과값을 저장하는 변수를 제거
 - 각 변수의 범위를 최대한 작게 줄임: 각 변수 위치를 옮겨 변수가 나타나는 줄의 수를 최소화.

    안 보이면 멀어진다.
 - 값이 한번만 할당되는 변수를 선호: const, final 등으로 값이 한 번만 할당되어 바뀌지 않는(즉 불변)

    변수는 이해하기 쉽다.

코드 흐름 제어 : 코드 흐름을 읽기 쉽게 만들어야 논리가 명확해진다. 아래와 같이 실천한다.
 - if/else문의 블록 순서에 주의: 긍정적이고 쉽고 흥미로운 경우가 앞쪽에 위치
 - 삼항연산자(: ?)나 do/while, goto는 코드 가독성을 떨어뜨리므로 되도록 사용 금지
 - 중첩된 코드 블록의 흐름을 따라가려면 많은 집중이 필요하다  선형적인 코드 추구
 - 함수 중간에 반환하면 중첩을 피하고 코드를 더 깔끔하게 작성 가능하다. 

   함수 앞부분에서 ‘보호 구문’으로 간단한 경우를 미리 처리하는 방안도 고려
 


켄트 백의 간단한 설계 규칙 네 가지
모든 테스트를 실행한다.
중복을 없앤다.
프로그래머 의도를 표현한다.
클래스와 메소드 수를 최소로 줄인다.

 

 

 

.

반응형

+ Recent posts