[서평] 모바일 트렌드 2019

Posted by b모노리스d
2019. 2. 13. 17:17 독서/서평
반응형

모바일 트렌드 2019(지금 우리에게 5G란 무엇인가)


처음 이 책을 보고 트렌드 코리아의 모바일 버젼이겠거니 하고 생각하고 읽기 시작하였으나..5G에 대한 이야기가 시작부터 끝까지 이루어져 있다.(난 왜 부제를 확인하지 못했을까?)

앞에서 말한것과 부제와 같이 5G를 상용화 하기 위해 준비하는 시점에서 일상생활에 어떤 변화를 주는지? 어디까지 진행이되고 있는지? 문제점은 무엇인지? 등에 대해 상세히 적혀있다.

하지만 중간중간 모르는 용어들이 많이 무슨뜻인지 다시 확인을 해야하는 부분이 생각보다 많았다.

물론 서론 부에 해당 용어에 대해 설명을 해주지만 단기기억으로만 저장되어 있어 2~3일이 지나면 금방 잊혀지니..(이래서 제독이 중요하다는것을 다시금 알게 되었다.)

이 책은 크게 7개의 주제를 가지고 이야기를 하고 있다.

초고속, 초저지연, 초연결 5G시대의 개막

킬러 콘텐츠가 될 가상현실과 증강현실

더 똑똑해질 스마트 디바이스 전쟁

커넥트 카와 무인 자동차 시대가 열린다

클라우드를 넘어서 엣지 컴퓨팅 시대로

5G 시대 망 중립성의 변수 네트워크 슬라이싱 기술

5G와 블록체인 기술의 강력한 결합

단순히 현재의 일상생활에서 휴대폰으로만 생각해 보자면 5G는 크게 매력적이지 않을 수 있다. 책에서도 이야기 하고 있지만 현재의 4G(LTE)만으로도 충분히 만족하며 사용 하고 있는데 많은 비용을 들여서 굳이 5G를 사용하려는 사람이 있을까? 하는 생각이다.

3G에서 4G로 변화하면서 속도가 빨라진 만큼 매년 부과되는 사용요금도 그만큼 증가 하였다.

초기에는 터무니 없는 요금 증가에 많은 사람들이 거부 반응을 일으켰으나 시대의 흐름에 따라 다양한 요금제도 많이 나타나도 어쩔수 없이 4G로 변경해야 하는 추세로 변하면서 차츰 수긍하고 현실에 적응하는 분위기가 되었다.

이렇듯 5G가 정식 출범되므로서 4G와 마찬가지로 요금제에 대한 많은 반반이 발생할 가능성이 높으며 증가된 요금 만큼 다양한 컨텐츠가 없다면 5G 산업은 실패로 이어질 수 있다.

물론 5G의 범위가 단순 개인 휴대폰이 아닌 IOT , 빅데이터 등의 사업으로 확장되어 있긴 하지만 이역시 다양하고 만족할 만한 컨텐츠가 나오지 않는다면 보금화 되기는 어려울 수 있다.

이책은 읽은 날만 따지면 총 7일이 걸렸지만 설날 및 휴일 등으로 인해 걸린 기간은 15일 이다. 생각보다 어려운 내용이 많이 없어 어려움이 없었지만 출퇴근 시간에만 독서를 진행하다 보니 기간이 많이 걸렸다.

매주 1권 매월 4권의 목표를 따진다면 반성이 많이 필요한 부분이다. 

독서가 시간이 남을때 해야 한다는 생각을 가지고 있다보니 아래와 같은 결과로 이어지는거 같아 매일매일 독서를 1순위 할일로 지정을 해야 할거 같다.  

아래 통계는 완공100쇄 강연에서 발표 하신분의 자료를 사진찍어 거의 똑같이 만들어 봤다.(이거 보시고 저작권이 걸린다면 말씀해 주세요..ㅠ.ㅠ) 


 

반응형

XDCR(Cross Datacenter Replication) 이해 – Part 1

Posted by b모노리스d
2019. 1. 31. 13:34 IT/NoSQL
반응형

XDCR(Cross Datacenter Replication) 이해 – Part 1

 

당신이 카우치베이스를 잘 알고 있다면, 당신은 확실히 XDCR을 알 것이다.

응용 프로그램에 대해 Couchbase를 사용하는 경우 XDCR을 사용할 가능성이 매우 높다.

XDCR은 고객이 가장 좋아하는 제품 중 하나라고 해도틀린 말은 아닐 것이다.

지금 XDCR을 멋지게 만드는 것에 관심이 있다면, 제대로 들어온 것이며, 계속해서 읽으십시오.

반대로, 만약 여러분이 무슨 말을 하고 있는지 모른다면, 이것은 여러분이 그것에 대해 배울 수 있는 기회랍니다.


복제는 향상된 성능, 고가용성 및 내결함성을 제공하기 위한 분산시스템의 효율성의 핵심이다. XDCR은 두 개의 Couchbase 클러스터간에 데이터를 복제하는 데 사용되는 고성

능 복제 기술이다.

이것은 클러스터 내 복제를 보완한다. XDCR은 비동기식 복제를 제공하며, 궁극의 일관성을 통해 사이트 간 데이터 일관성을 유지한다.

이는 단일 돌연변이 복사본이 실행되자마자 승인이 애플리케이션에 전송되고 결국 데이터가 토폴로지의 서로 다른클러스터 간에 일관된다는 것을 의미한다.

 

 

기술의 핵심 원칙

고성능: XDCR은 대기 시간이 매우 짧은 네트워크 및 메모리 속도로 작동하는 고성능 복제 시스템이다. 복제는 메모리에 대한 메모리다.

독립적으로 확장 가능한 시스템 : XDCR은 클러스터를 추가하거나 제거할 수 있고 위상의 모든 클러스터를 다른클러스터에 영향을 미치지 않고 스케일업 또는 스케일다운

할 수 있는 피어 투 피어 아키텍처

인프라 불가지론: XDCR은 구축 플랫폼에 관계없이 베어 메탈, VM, 프라이빗 클라우드, 퍼블릭 클라우드, 하이브리드 또는 컨테이너로 데이터를 복제하는 데사용할 수 있다.

토폴로지 인식: XDCR은 토폴로지를 인식하며 노드가 클러스터에서 추가/제거될 때 시스템이수동 개입 없이 복제를 조정하고 관리함

단순화된 설정 및 관리: XDCR은 두 개의 Couchbase 클러스터 간에 <15초 이내에 설정될 수 있다. 일단 설정되면, 문서는 원본과 대상 간에 계속 동기화된다. 페일오버나 재

조정 같은토폴로지 변경 중에도 수동 개입 없이 작동한다.

유연한 위상 : 단방향, 양방향, 허브및 스포크, , 메시 등 복잡한 위상을 설정할 수 있다.

탄력적 : 모든 네트워크 장애의 경우, XDCR은 중단된 곳으로부터 복제를재개할 수 있다. 또한 XDCR 복제가 성공할 때까지 계속 재시도 한다.

 

 

XDCR 내부 구조

Couchbase 서버 아키텍처에 익숙해지려면 이 대화를 들어 보십시오.

이 블로그에서는 XDCR 아키텍처에 초점을 맞출 것이다.




상위 레벨의 흐름을 설명하기 위해 애플리케이션 서버의 애플리케이션 데이터가 클라이언트 SDK를 통해 내장된 메모리(캐시)에 기록됨.

이 데이터가 메모리에 저장되면 복제 및 지속성을 위해 다른 대기열로 채널 조정됨.


클러스터 간 복제는 위의 그림에서 표시한 대로 메모리 간에서 발생한다. 이것은 XDCR이 매우 짧은 대기시간을 제공할 수 있게 하는 주요 요인들 중 하나이다.


또한 소스와 타깃의 노드 간에 복제가 매우 유사함.

복제 대기열은 대역폭 가용성과 원하는 성능에 따라 2-100 사이에서 튜닝할 수 있다.




카우치베이스에 있는 버킷은 문서를 위한 논리적인 컨테이너다. XDCR은 버킷 레벨에서 설정할 수 있다. 각 버킷은 vbuckets라고 하는 1024개의 가상 버킷으로 분할됨.

이러한 vbuckets는 각 클러스터의 노드 간에 균등하게 분할된다. 이러한각 노드는 결국 일부 활성 및 일부 복제본 데이터가 된다. XDCR은 클러스터 내의 이러한 노드 간

에 복제를 분산시킨다.


카우치베이스는 주문된 changelog를 이용해 데이터 상태를 전달하기 위해 "데이터베이스 변경 프로토콜(DCP)"이라는 스트리밍 프로토콜을 유지한다. XDCR은 이 프로

토콜의 소비자로, 변화를 전파하기 위해 DCP에 의존한다.


XDCR 복제 대기열은 XDCR 관련 변경 사항을 유지 관리하며, XDCR 작업자 스레드는 노드에서 지정된 활성 vbucket에 대한 변경 사항을 선택하고 대상 클러스터에서 

vbucket을 유지하는 원격 노드에 변경 사항을 전달한다. 아키텍처에서는 지연 시간이 짧고 처리량이 높은 특성을 가진 각 vbucket의 복제를 위해 

중앙집중적 조정이 필요하지 않다. 가용 대역폭에 따라 처리량을 극대화하도록 작업자 스레드수를 구성할 수 있다.

XDCR은 체크포인트를 유지한다. 네트워크 장애 또는 소스 클러스터 페일오버등으로 인해 복제가 중단될 때마다 XDCR은 마지막 체크포인트에서 복제를 재개한다.

떤 이유로든 성공하지 못한 경우, XDCR은 성공할 때까지 계속재시도한다. 복제는 또한 키만 복제하는 비관적인 복제와 키와 값이 모두 복제될 수 있는 낙관적인 복제에

서도일어난다.


또한 XDCR은 문서 압축, 네트워크 조절및 낙천적 복제와 같은 기능을 통해 대역폭 보존을 위해 최적화되어 있으며, 여기서 복제를 위해 문서를압축하고 대역폭 활용도

를 제한하며, 지연 시간을 줄이기 위해 특정 임계값까지 낙천적인 복제를 선택하여문서를 복제한다.


XDCR 시리즈의 첫 번째 부분에서 XDCR의 정의, 작동 방식 및 효율적인 복제 시스템에 대한 좋은 개요를 제공받았기를 바란다.


다음 파트에서 이 제품의 기능, 이점, 애플리케이션, 성능 튜닝 등에 대해 자세히 알아보도록 하자


출처 : Chaitra Ramarao, 2018-12-01, https://blog.couchbase.com/understanding-xdcr-part-1/



반응형

'IT > NoSQL' 카테고리의 다른 글

Couchbase Eventing Service 예제  (0) 2019.01.28

독서 예정 리스트

Posted by b모노리스d
2019. 1. 28. 15:28 독서/앞으로 읽어야할 도서 목록
반응형

*페이스북이나 블로그등을 통해서 접하게 된 좋은 책들 중에 앞으로 구입 또는 읽기 위해 카카오톡 , 휴대폰 메모장에 제목을 저장해 놓았는데(읽는 책 대비 구입한 책의 비율이 갈수록 늘어가는 현실..ㅠ.ㅠ) 정리가 되지 않아 블로그를 통해 관리를 하기로 결심! 올해 부터는 체계적으로 이력관리 해서 2019독서 관련 통계 데이터를 추출해 봐야 겠다. *적색: 체인지 그라운드 추천도서*


구입예정 도서


[경제/경영] 안티프래질 - 나심 니콜라스 탈레브 지음 / 안세민 옮김

[컴퓨터/IT] 실용주의 프로그래머 - 앤드류헌트 , 데이비드 토머스 지음 / 김창준 , 정지호 옮김

[인문] 행복의 기원 - 서은국 지음

[인문] 소셜 애니멀 - 데이비드 브룩스 지음 / 이경식 옮김

[시/에세이] 일상을 기적처럼 - 퍼트리셔 라이언 매드슨 지음 / 강미경 옮김

[경제/경영] 벌거벗은 통계학 - 찰스 윌런 지음 / 김명철 옮김

[인문] 언플래트닝,생각의 형태 - 닉 수재니스 지음 / 배충효 옮김

[과학] 우리 본성의 선한 천사 - 스티븐 핑커 지음 / 김명남 옮김

[인문] 아픔이 길이 되려면 - 김승섭


 


구입 후 읽을 예정인 도서

[자기계발] 욱하는 성질 죽이기 - 로널드 T.포터 애프론 지음 / 전승로 옮김

[경제/경영] 생각하지 않는 사람들 - 니콜라스 카 지음 / 최지향 옮김

[자기계발] 몽키비즈니스 - 월리엄 언컨 3세 지음 / 한창수 옮김

[자기계발] 말이 무기다 - 우메다 사토시 지음 / 유나현 옮김

[경제/경영] 부의 감각 - 댄 애리얼리 / 이경식 옮김 

[자기계발] 세상에서 가장 발칙한 성공법칙 - 에릭 바커 지음 / 조성숙 옮김

[자기계발] 언제 할 것인가 - 다니엘 핑크 지음 / 이경남 옮김

[인문] 알고리즘 인생을 계산하다 - 브라이언 크리스천 , 톰 그리피스 지음 / 이한음 옮김

[컴퓨터/IT] 프로그래밍 수련법 - 브라이언 커니핸 , 롭 파이크 지음/ 옮긴이: 김정민, 장혜식, 신성국

[경제/일반] 상식밖의 경제학 - 댄 애리얼리 지음 / 장석훈 옮김

[자기계발] 아웃라이어 - 말콤 글래드웰 지음 / 노정태 옮김

[경제/경영] 오리지널스 - 애덤 그랜트 지음 / 홍지수 옮김

 






반응형

'독서 > 앞으로 읽어야할 도서 목록' 카테고리의 다른 글

씽큐베이션 추천도서  (0) 2019.04.16

Couchbase Eventing Service 예제

Posted by b모노리스d
2019. 1. 28. 11:49 IT/NoSQL
반응형
Eventing 서비스의 예제

Eventing Service는 Couchbase Server 5.5 부터 사용할 수 있는 새로운 기능입니다.

이번 게시글은 이벤트 기능에 대한 예제를 소개하는 게시글 입니다.

VIP고객에게 보다 신속하게 서비스를 제공하고자 합니다관리자는 한 명 이상의 VIP에게 할당됩니다. VIP가 야구장에 입장하면 문자 메시지가관리자에게로 전송됩니다관리자는 그 자리에서 VIP를만날 수 있습니다.

함수 (Eventing의 일부)를 사용하여 텍스트 메시지를 보내는 예제를만들었습니다Twilio  평가판 계정을 사용 하여 메시지를 보냅니다.  Twilio를 사용하여 시작하는 것은 무료이며 쉽습니다. 그래서 이벤트 기능을 알리기 위해서 예제로 사용하기로 결정했습니다. HTTP API가있는 한 원하는 메시징 / 알림 서비스 (대신)를 사용할 수 있습니다.

참고 : 컬 구성은 아직 개발 중입니다. 이 기능은 개발 목적으로 만 사용되며 프로덕션 환경에서는 사용하지 않아야 합니다.


티켓 검색


첫 번째 단계는 게이트에서 고객의 티켓을 스캔하는 것입니다나는 이것을 시뮬레이션 하는 프로그램을 썼다. Couchbase "티켓"버켓에 임의의 "ticketscan"문서가 생성됩니다.


티켓을 검색하기 전에 몇 가지 데이터를 Bucket에 미리 채워야 했습니다.

고객 1 ~ 9 VIP이고 그 외의 고객은 기타고객 이라고 결정했습니다.

1
2
3
4
5
6
7
8
9
_bucket.Upsert("customer::1", new { Name = "George Clooney" });
_bucket.Upsert("customer::2", new { Name = "Josh Hutcherson" });
_bucket.Upsert("customer::3", new { Name = "Darius Rucker" });
_bucket.Upsert("customer::4", new { Name = "Brooklyn Decker" });
_bucket.Upsert("customer::5", new { Name = "Eddie Vedder" });
_bucket.Upsert("customer::6", new { Name = "Nick Lachey" });
_bucket.Upsert("customer::7", new { Name = "Nick Goepper" });
_bucket.Upsert("customer::8", new { Name = "Johnny Bench" });
_bucket.Upsert("customer::9", new { Name = "Ryan Collins" });

또한 3명의 관리자를 만들었으며 그들에게 각각 3명의 VIP를 할당했습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
_bucket.Upsert("concierge::1", new
{
    Name = "Matt Groves",
    CellNumber = _yourVerifiedNumber,
    vips = new List<string> { "customer::1", "customer::2", "customer::9" }
});
_bucket.Upsert("concierge::2", new
{
    Name = "Mr. Redlegs",
    CellNumber = _yourVerifiedNumber,
    vips = new List<string> { "customer::3", "customer::4", "customer::5" }
});
_bucket.Upsert("concierge::3", new
{
    Name = "Rosie Red",
    CellNumber = _yourVerifiedNumber,
    vips = new List<string> { "customer::6", "customer::7", "customer::8" }
});

위의 예에서 고객 1, 2, 9 "Matt Groves"에게 지정합니다. 이것은 George Clooney, JoshHutcherson

Ryan Collins관리자 Matt Groves가 관리하는 VIP 인 것을 의미합니다. _yourVerifiedNumberTwilio로 확인한

전화 번호로 대체 하십시오.

또한 Twilio 자격 증명을 문서에 저장하고 있습니다. Couchbase Function 내부에 자격 증명이 필요하기 때문에 이

작업을 수행 함으로써 하드 코딩하지 않으려고 했습니다. 자격 증명 문서는 다음과 같습니다.

1
2
3
4
5
6
{
  "url": "https://api.twilio.com/2010-04-01/Accounts/< twilio user name here >/Messages.json",
  "username": "< twilio user name here >",
  "password": "< twilio password name here >",
  "fromNumber": "< twilio 'from' number here >"
}


새로운 "ticketscan"문서를 만들 콘솔 앱을 만들었습니다. 
실행하면 VIP 스캔 또는 기타 고객 스캔을 만들도록 선택할 수 있습니다.
1
2
3
4
Console.WriteLine("1 - Simulate a VIP ticket scan.");
Console.WriteLine("2 - Simulate a regular joe ticket scan.");
Console.WriteLine("Q - End simulation.");
var choice = Console.ReadKey().KeyChar;


ticketscan 문서에는 고객 문서의 ID, 타임 스탬프 및 시트 번호의 세 가지 필드 만 포함됩니다.
1
_bucket.Upsert(ticketScanId, new {CustomerId = customerId, Timestamp = ticketScanTimestamp,
Seat = seatInformation });
Github 에서 전체 소스 코드를 찾을 수 있습니다 .


이벤트 함수

이 글의 핵심은 함수입니다. 이 함수를 만들 때 "notifyConcierge"라고 했습니다. "tickets_metadata" Bucket을 사용했습니다 (아래 그림 참조). 가장 중요한 것은 "tickets" Bucket의 별칭을 만들고 이를 "src"라고 했습니다. 함수 내에서 이 Bucket은 읽기 전용이지만 Twilio 자격 증명뿐만 아니라 고객 및 관리자 정보를 얻기 위해 필요합니다.

전체 기능에 Github에서 볼 수 있습니다. 다음은 함수의 분류입니다.

1 - 돌연변이 된 문서가 ticketcan 있습니까? 그럴 경우 계속하십시오. 그렇지 않은 경우 이 함수는 이를 무시할 수 있습니다.

2 - 스캔 한 티켓의 고객이 VIP입니까? 그렇다면 관리자세부 정보를 받아 계속 진행하십시오. 그렇지 않으면 무시하십시오. 함수의 이 부분에서 인라인 N1QL을 확인하십시오. 이것은 Couchbase 기능에 사용되는 JavaScript의 고유 한 기능입니다.

3 - VIP의 세부 정보를 가져옵니다.

4 - Twilio 자격 증명을 가져옵니다.

5 - 메시지를 구성하십시오 (VIP 이름, 좌석 번호 및 관리자이름 포함). dataTwilio의 API를 사용하는 데 필요한 최소값입니다.

6 - Twilio API를 사용하여 관리자에게 문자 메시지 보내기. curl 구성은 여전히 ​​개발 중입니다. 이 기능은 개발 목적으로 만 사용되며 프로덕션 환경에서는 사용하지 않아야 합니다.

Eventing 데모 실행

이제 ticketcan 문서가 생성되거나 수정 될 때마다 관리자에 휴대 전화로 알림이 전송됩니다. 다음은 티켓 스캔에서 SMS 알림에 이르는 전체 데모의 예입니다.


이 이미지에서 4 장의 티켓 스캔을 만듭니다. 첫 번째는 VIP 용이고, 다음 두 개는 기타 그룹 용이며, 마지막은 VIP 용입니다. 두 개의 문자 메시지가 나타납니다. 실제로 이것은 다른 전화기에 표시되지만 모든 알림을 하나의 번호로 보내 테스트합니다. 참고 : join.me  사용하여 내 안드로이드 화면을 콘솔과 나란히 표시합니다.

어떤 문제가 발생하면 좋은 소식은 Couchbase의 함수에서 디버깅이 가능하다는 것입니다. 자바 스크립트에서 중단 점을 설정하고 Chrome과 같은 도구를 사용하여 단계별로 실행할 수 있습니다. 그것에 대한 더 자세한 내용은 Eventing 공지 사항을 확인하십시오.


출처 :Matthew Groves, 2018년 8월 6일, https://blog.couchbase.com/eventing-notification-couchbase-functions/



반응형

'IT > NoSQL' 카테고리의 다른 글

XDCR(Cross Datacenter Replication) 이해 – Part 1  (0) 2019.01.31

[비지니스영어] 자주 사용하는 문장

Posted by b모노리스d
2019. 1. 7. 11:17 자기계발/영어
반응형

업무상의 이유로 비지니스 영어를 사용하는 상황이 종종 발생한다.

영어를 제대로 공부하지 못해 구글신과 비지니스 영어회화 책의 도움을 받아 힘들에 메일을 쓰곤 하는데..(올해는 열심히 공부해야지..)

자주 사용하는 문장에 대해 정리하고 반복되는 구글신과 책의 검색 시간을 줄이고자 한다.


2019년 1월 7일

- I would appreciate it if you could send it to me.(그것을 제게 보내 주시면 정말 감사하겠습니다.

- Best Regards.(배상 또는 올림)

 

2019년 1월 8일

- I apologize for having made our situation unclear.(저희의 상황을 분명히 밝히지 못한것을 사과 드립니다.)

- Thank you in advance for your help.(도와주시는 것에 대해 미리 감사드립니다.)


 

2019년 1월 24일

- That presentation was awful, it was a complete trainwreck!(그 프리젠테이션은 최악이었어요. 그건 완전 실패였어요!)


2019년 1월 25일

- you're renegotiated too many times. You're walking on thin ice with this deal.(자네는 협상을 너무 많이 해왔어. 이번 달은 너무 위태위태 해.)


2019년 1월 28일

- I'm grateful for your help.(당신의 도움에 감사합니다.)

- Thank you for your generous assistance.(귀하의 아낌없는 지원에 감사드립니다.)


2019년 1월 31일

- Drop me a line if you have any additional questions!.(추가 질문이 있으면 언제든지 연락주세요!.)

- I don't understand what you mean, give me some rope on this.(어떤의미인지 모르겠습니다. 맥락을 좀 알려주세요.)


2019년 2월 08일

- Your prompt response to this inquiry would be highly appreciated.(이 문의에 대해 신속히 답장을 주시면 대단히 감사하겠습니다.)


2019년 2월 13일

- He really wants to close this deal, he's not messing around.(그는 정말로 이 거래를 마무리짓고 싶어 합니다. 미적거리고 싶어하지 않습니다.)

 

2019년 3월 20일

- I look forward to hearing from you.(연락 기다리고 있겠습니다.)

-Get back to me, please.(답장 주세요.)


2019년 3월 29일

- We missed the payments on our office space and now our lease is null and void.(사무실 렌트비 지불 일정이 지나서 우리 임대 계약이 무효가 되었습니다.)

반응형

완공 서평

Posted by b모노리스d
2018. 12. 24. 11:36 독서/서평
반응형

내가 살면서 정말 열심히 공부를 해봤다고 생각하는 때가 2가지 있다.

물론 남들이 보면 그게 무슨 열심히 했냐고 하겠지만 나 나름 정말 열심히 했다고 생각한다.

그 첫째가 고등학교 3학년때 이다.

고3때 그것도 수능이 두 세달 정도 남은 시기..우리 학교는 그닥 공부를 잘한는 애들이 모인 곳이 아닌 그저그런 지방 고등학교 이다.

고등학교 내내 과학 그중 물리는 거의 손을 놓고 지냈다.. 그도그럴것이 여러가지 수학 공식을 외워서 대입해야하고 이런저런 공부하는게 너무 싫었다.

하지만 수능성적을 위해 한달간 물리만 죽어라 독파 하였다.

하루가 지나고 이틀이 지나고 3주 정도가 될 무렵 난 이제껏 왜 물리는 이렇게 싫어 했는지 이해가 가지 않았다.

처음 일주일 정도 기본 공식을 이용한 문제를 풀어보고 아.. 나도 할수 있구나 하는 자신감을 얻고 한달 정도 지나면서 어느정도 수준에 도달하니 정말 보람찬 표정을 짓는 나자신을 발견할 수 있었다.

지금 생각하니 이건 내가 머리가 좋아서 이뤄낸 성가가 아니라 기본적인 나 자신이 나를 믿는 마음가짐이 어떻게 되냐에서 변화된 부분이라 생각한다.

두번째는 대학을 편입했을때다.

난 이미 회사를 몇년 다니다 편입을 한 상태라 이미 학교에 다니고 있는 친구들과는 나이차이가 많이 나는 상황이었다.

대학생활 동안 정말 내가 하고 싶었던 분야에 대해 배우고 공부를 하다보니 하루하루 학교 다니는게 너무 즐거웠다.

물론 이전 대학 생활이 즐겁지 않았다는 이야기는 아니다.

배우고 공부함에 있어 이전 대학 생활보다는 확인한 차이를 보였다.

틈틈히 자격증 공부해서 취득도 하고 이리저리 방학때 진행하는 강의도 먼저 찾아보고 수업을 듣고.. 이전 생활보다는 확인한 차이를 보였다.

하면된다...막연하게 하면된다가 아니라 내가 먼저 난 할 수 있다는 마음가짐으로 모든일에 최선을 다한다면

정말 남들은 이루지 못할 일이라도 꼭 성곡할 것이라 본다.(아직 그정도의 마음가짐을 가지지는 못했다.)


작은성공 경험 , 강점주목 , 의미와 가치 부여 , 성장형 사고방식을 가지고 상실한 기대를 되 찾자.[완공]


2017년 12월 20일 메타인지를 학습하고 나의 공부는 잘못된 방법으로 학습 했다는걸 깨닿게 되었다..이책을 일찍 알았더라면..ㅠ.ㅠ

--------------------------------------------------------------------------------

완공을 구입하고 거의 3주간 방치하다 일취월장이 나온이후로 하루에 1장씩 읽어보며 서평을 작성한지 3일째다.

3일인데 완공은 이제 2장? 어제는 일취월장만 읽었다...ㅠ.ㅠ

오늘 2장 메타인지는 정말 글귀 하나하나가 내 학창시절의 실수를 말하는거 같아 너무 부끄럽고 반성되는 시간이었다.


문제는 '나'를 아는것이다. (본문54P)

정말 나자신에 대해 전혀 모르고 있었고 나자신을 너무 과대 평가하고 있었다..너무 부끄럽다.


메타인지(메타기억 + 메타이해)

자신의 인지 과정에 관한 인지 능력을 말한다 즉 내가 뭘 알고 뭘 모르는지, 내가 하는 행동에 어떠한 결과를 낼 것인지에 대해 아는 능력

즉 자신을 객관적으로 볼수 있는 능력을 말한다.(본문57P)


메타기억 

자신의 기억에 대한 인지과정을 아는것(본문60P)


메타이해

자신이 언어를 잘 이해하는지를 아는 능력(본문61P)


메타인지의 내용을 읽으면 읽을수록 나에대해서 이야기를 하는거 같아 읽는내내 너무 부끄럽고 반성하는 시간이 었다..

하지만 이글을 쓰는 지금에도 아직 메타 기억과 메타 이해가 부족한 것을 실감하고 있으니..정말..

지금까지 공부 , 독서를 정말 잘못하고 있었고 제대로 한적이 없다는것을 깊이 반성한다.

(이전서평에서 인생에 열심히 공부한 2번의 경우는 나자신의 착각이었던거 같다..)


메타인지를 높이려면 어덯게 해야 하나?

1. 학습 전략을 배운다

2. 자신의 실제 실력을 객관적으로 파악하는 피드백을 경험한다.

3. 인간의 인지 과정을 학습니다.


내가 공부 또는 학습에 있어 제일 싫어하는게 있다..바로 시험.

시험이야 말로 내가 학습하는데 있어 실제 실력에 대한 평가를 할수 있는 좋은 매개체인것을..난 이제야 확인했다.

무슨일이든 연습문제를 푼다는 마음으로 남들이 알려준 답변으로 내가 이해했다는 잘못된 생각에 빠지지 않도록 지금 부터라도 학습에 대해 다시한번 생각해 보고 실천해야 겠다..

--------------------------------------------------------------------------------

"중요한것은 기술이고 기억이 작동하는 법을 이해하는 겁니다."[본문84P]


어렵게 공부하면 잊기 어렵다.[본문108P]


몰입은 고도의 '주의집중' 상태다. 우리는 기억의 시작이 '주의'라는 것을 배웠다. 몰입을 하게 된다면 당신의 기억 효율은 배가 될것이다.

기억을 쉽게하며 쉽게 잃어버리지만, 기억을 어렵게 하면 잊기 어렵다는 사실을 배웠다.

몰입은 매우 도전적인 과제 수행을 하는 상태이며 과제수행의 내용이 장기기억 여부를 결정한다.[고작과의 심화 119P]


얼마전에 유튜브의 공신 강성태의 동영상을 보면서 공부법에 대한 내용을 본적이 있다.

난 완공을 읽으면서 공신이 말한 공부법과 별반 다르지 않다는걸 알게 되었다.

공신의 영어단어 암기는 아래와 같다.


1. 단어장의 무작위로 한페이지를 펼침

2. 왼쪽페이지 단어를 외움

3. 한페이지에 몇초가 걸리는지 시간 체크

4. 기준시간을 정함

5. 2분동안 왼쪽페이지 암기

6. 오른쪽 페이지를 2분동안 암기

7. 2분동안 양쪽페이지 복습

8. 30분동안 (10페이지) 암기


45분공부 10분뒤에 5분

          1일뒤에 5분

          7일     2

          일주일  2


상세한 부분까지야 다르겠지만 일단 단기기억에서 장기기억으로 전환하기위한 시험(암기) 복습을 하는법에 있어 동일하다는 사실이다.

역시 공신들은 이미 알고있다는 사실에 더욱 놀라울 뿐이다.

영어 공부에 있어 학창시절 담을 쌓은 나도 위의 방법으로 한번 공부를 해볼 생각이다.

잊지말자. 어렵게 공부하면 잊기도 어렵다는 것을..

--------------------------------------------------------------------------------

목표는 왜 중요할까?

1. 목표는 현재 우리가  무엇을 해야 하는지를 알려 준다.

2. 목표는 강력한 동기부여 중 하나이다.

3. 목표는 현재의 모습을 구체적으로 보도록 한다. [본문 123P]


요즘 완공이나 페이스북의 체인지 그라운드에서 올린 내용을 읽으며 한번쯤 나도 계획있는 삶을 살아봐야 겠다는 생각으로 

무작정 구입한 두근두근에 하루일을 적기 시작한지 벌써 3주가 되어간다.

물론 반성할 부분이 너무 많다..정말 칭찬할 부분이 없을 정도이다.

난 BHAG가 없이 SMART부분만 계획해서 진행을 하다보니 그냥 하루 목표를 못해도 내일하지뭐..아직 연습이니 괸찮아..

하는 마음가짐으로 하루하루를 보내고 있는듯하다.

책에서 말하는 것과 같이


(BHAG , Big Hairy Audacious Goal) 크고 위혐하고 대담한 목표

목표가 너무 거대하고 도적적이면 묵직한 무게에 짓눌려 아무것도 못 할 수 있다.

그목표를 분해해야 한다, 구체적이고(specific), 측정가능하며(measurable) 성취할 수 있고(attainable) 현실적이며(realistic)

시간 계획(timeline)이 가능한 묙표로 말이다. [본문 135P]


모든일에 대해 철저히 분리하고 관리해야 내가 생각하는 진정한 계획의 성과를 보지 않나 싶다.

아래의 내용과 마찬가지로 BHAG부터 다시금 내가 하루하루 하고있는 습관(목표)이 과연 무엇을 위해 하는 것인지 생각하고

구체화 시키고 분해해봐야 겠다.


목표설정

1. 크고 위험하고 대담한 장기 목표(BHAG)를 세운다.

2. 그 목표를 달성하는데 필요한 실현 가능하고 구체적인 중단기 목표(SMART)로 세분화 싴킨다.

3. 오늘 해야할 일들에 대해서 언제 어디서 어떻게 행동하는지까지 세세하게 계획을 잡는다. [본문 138P]

--------------------------------------------------------------------------------

일취월장과 완공을 만나게 된 계기는 페이스북을 통해서이다.

신작가님과 체인지 그라운드에서 매일 등록하는 좋은 내용을 읽으며 한번쯤 나도 공부를 제대로 해봐야 겠다는 마음가짐에서 시작 되었다.

아직까지는 최고는 아니지만 나름 일일 계획도 세우고 하루하루 데일리 리포트도 작성하며 지내고 있다.

하지만 지금까지 나의 삶을 비춰 보자면 지금 하는 일들이 언제 그만 둘지 모른다는 것이다..

책에서 소개된 내용과 같이 지금까지 내재적 동기로 하루하루 계획된 일을 하고 있다면 슬..외재적 동기가 추가 되어야 하지 않을까?

하는 생각이 든다.

그렇다면 어떤 보상(?) 이 있는 동기를 설정해야 할까?

지금 바로 생각이 드는건 한달 목표한 일일 습관 계획을 체우면 하루 쉬는 날을 정해 음주가 가능한 날을 정할까?

아님 그냥 계획없는 하루를 보낼까?

좀더 고민을 해봐야 겠지만 오래 끌지는 말아야 겠다.

왜냐하면 내재적 동기가 사라져서 아무것도 하지않는 상황이 오면 않되니깐...

반응형

'독서 > 서평' 카테고리의 다른 글

[서평] 실용주의 사고와 학습  (0) 2019.02.20
[서평] 모바일 트렌드 2019  (0) 2019.02.13
만만하게 보이지 않는 대화법  (0) 2018.06.20
횡설수설 하지않고 정확히 설명하는 법  (0) 2018.06.04
일독  (0) 2018.05.21

만만하게 보이지 않는 대화법

Posted by b모노리스d
2018. 6. 20. 14:20 독서/서평
반응형



출퇴근 시간에는 가급적 쉽고 빠르게 읽을 수 있는 책으로 선택한 3번째 도서다.

벌써 3번째라니...읽은 권수 만큼 나자신의 생각과 습관의 변화가 발생해야 하는데..아직도 단지 읽는 수단 만이 목표가 되고 있어 아쉽긴 하다.

서평도 그날 그날 읽은 내용을 되새기며 작성을 해야 하는데..생각 날때만 하고 있으니..누가좀 도와주세요..ㅠ.ㅠ

책의 내용은 상황에 따라 환경에 따라 대화하는 상대에 따라 유용한 대화 방법에 대해 설명해 주고 있다. 

(제목과 같이 단지 만만하게 보이지 않기 위한 내용만 있는것이 아니다..^^)

책 단락 단락마다 중요 Point를 작성해 핵심 부분을 한번더 생각할 수 있게 구성되어 있는것도 책의 장점중 하나로 꼽힌다.

그중 읽으면서 특별히 업무중 또는 일상생활에 나 자신이 고쳐야 하는 부분에 대해 몇가지 정리해 놓으려 한다.

1. 문장의 끝맺음을 간단명료하게 하는 습관을 들이면 듣는 사람에게 또렷한 인상을 남길 수 있고 결론도 분명하게 전달할 수 있어 효과가 크다.[28P]

2. 불합리한 일을 시킨다는 허점 때문에 자꾸 말을 덧붙이려 하면, 듣는 쪽은 불공평함을 강하게 느낀다. 이럴 때는 부연설명을 삼가고 불합리한 채로 처리하는 편이 낫다.[40P]

=>1번 2번의 경우 회의나 동료 직원에게 업무를 지시할 때 상황에 대해 길게 나열하는 편이다.상황에 따라 다르겠지만 어떤경우는 업무를 줬다는 자체만으로 불편함을 느끼기도 하고 너무 길게 나열하여 이야기를 하다보니 어떨때는 내가 지금 무슨말을 하고 있나 하는 생각이 들때도 있다.무조건 간단명료하게 말하는 것 보다는 상황에 맞게 필요한 말을 하는것이 정답인것 같다.

3. 몇 번인가 얼굴을 마주친 사람과 일 이야기를 할 때, 내 기대와 달리 상대방이 내 이름을 모르는 경우가 꽤 흔하다. 그러니 일일이 자기소개를 하는 편이 좋다.[43P]

=> 난 처음보는 사람 또는 알고 있는 사람에 대해 인사하는 습관이 제대로 형성되어 있지 않다. 부끄럽다고 해야 하나? 항상 지나고 나서 "그때는 이렇게 할것을..."하고 후회를 한다. 지나간일을 후회 말고 항상 내가먼저 인사하고 웃는 습관을 만들자.

4. 빠른 말로 밀어붙이되 너무 새된 소리가 되지 않게 조심하면 상대가 내 말에 따를 확율이 높아진다.[46P]

=>흥분.. 흥분.. 가끔 말하다가 나도 모르게 흥분하여 감정적일 때가 있다. 감정적으로 이야기 하지말고 팩트를 가지고 설득을 할수 있도록 연습하자.

5. 상대에게 어떻게 보이고 싶다 혹은 어떻게 보여야 한다고 생각하는 것이 있으면, 스스로 노력하는 데 그치지 말고 눈으로 보일 수 있을 만큼 과장되게 해야한다. 그렇지 않으면, 미안하지만 의미 없는 일이다.[53P]

6. 잘모른다는 것을 들키지 않는 '한마디' 지극히 상식적인 것에 대해 질문을 할 경우 "어디까지나 확인하는 건데요...."라고 말을 꺼내는 편이 좋다[61P]

7. 우리의 뇌는 빈 곳이 있으면 채우려고 하는 습성이 있다. 일부러 최근의 상황을 강조함으로써 지난 상황까지 추측케 하면 거짓말을 하지 않고도 나를 포장할 수 있다.[81P]

7. 상관없는 사람에게도 가볍게 말을 걸어보자. 그렇게 하면 상대방에게 당신은 여유를 잃지 않는 사람으로 보일 것이다. 그리고 주변 사람들에게 말을 걸다 보면 스스로의 긴장감을 푸는 데도 도움이 된다.[95P]

8. 사전에 준비만 하면 어떠한 말을 듣더라도 버드나무가 바람에 나부끼듯 순순히 받아넘길 수 있다. 면접 등을 순발력으로 대처하겠다는 것이 가장 위험한 태도다[98P]

9. 말하는 사람이 자세를 바르게 하면 말의 설득력이 높아지고 심리적오로도 자신감이 생긴다.[114P]


반응형

'독서 > 서평' 카테고리의 다른 글

[서평] 모바일 트렌드 2019  (0) 2019.02.13
완공 서평  (0) 2018.12.24
횡설수설 하지않고 정확히 설명하는 법  (0) 2018.06.04
일독  (0) 2018.05.21
[서평] 신경끄기 기술  (0) 2018.01.30

횡설수설 하지않고 정확히 설명하는 법

Posted by b모노리스d
2018. 6. 4. 19:20 독서/서평
반응형

퇴근길 읽는 도서 2번째
상대방에게 이야기 할때 어떻게 해야 할까? 라는 주제로 생각보다 내용도 짧고 크기도 작은 책이다.
요즘 출 퇴근길 이렇게 쉽고 간단한 주제로 책을 읽고 있는 중이다.

이전에는 전문서적(?)등의 책을 지하철 또는 버스에서 읽다보니 소음에 취약해 정확하게 내용을 이해하기 어렵고 집중 또한 잘되지 않았다.

그래서 출퇴근 길에는 가볍고 쉬운 주제의 책을 읽기로 마음 먹었고 그래서 석택한 두번째 책이 "횡설수설 하지않고 정확히 설명하는 법" 이다.

첫 15초가 중요하다

알기쉬운 것이라고 일컬어지는 것에는 세 가지 요소가 있다.

1. 자신과 어떻게 관계되는지 알기 쉽다.

2. 이야기가 정리되어 있어 알기 쉽다.

3. 쉬운 말로 표현되어 알기 쉽다. [본문 17P]


반응형

'독서 > 서평' 카테고리의 다른 글

완공 서평  (0) 2018.12.24
만만하게 보이지 않는 대화법  (0) 2018.06.20
일독  (0) 2018.05.21
[서평] 신경끄기 기술  (0) 2018.01.30
일취월장 플러스 강연(1월 13일)  (0) 2018.01.15

일독

Posted by b모노리스d
2018. 5. 21. 01:08 독서/서평
반응형

생각만 계속 독서해야지 독서해야지 하면서 책상에 책만 쌓여가다 이제 정말 제대로 독서를 해야지 하고 저녁시간 자기전 한시간씩 책일기를 우선 싱천하기위해 쉽게 읽을수 있는 책으로 일독을 선택했다..
그냥 단순히 책을 읽는 방법에 대한 설명이 나열된 책인줄 일았는데..소설처럼 스토리가 있으며 독서 법에 대한 방향을 제시해 주고 있다.
우선 1단락 1문장 1쪽을 10일씩 매일 실천해 독서 습관을 위한 준비를 하고 일주일에 한권으로 습관으로 만들고 100일에 33권(?)주인공의 나이라는데...난 37권을 읽어 평생습관으로 각인되는...(오늘은 여기까지 읽었다)
생각해보면 가능할지도..책의 내용과 같이 티비보고 게임하고 웹서핑하는 시간을 줄이고 출퇴근 잠자기전에 독서를 한다면 어머어마한 시간이 나온다..
하지만 실천이 중요하지..
오늘부터 나도 일주일에 한권 독서 습관을 기르기 위한 준비 Start!!!!!

5월 21일 일독을 처음 읽기 시작했다..잠자기 한시간에서 두시간 정도..물론 매일 읽은 것도 아니고 이삼일 정도 공백이 있다.(매일 일일 계획표를 만들어 체크 해야 겠다)
그리고 딱 일주일인 오늘 일독을 모두 다 읽었다.
책의 내용이 쉬운것도 있지만 나름 선방해서 일주일 한권 일기를 완료했다..
이기세를 몰아 좀더 책 읽기에 몰입 해야 겠다.


목적 이 있는 독서를 강조해요. 아무리 많이 읽어도 읽는것만으로 끝난다면 의마가 없죠.

독서를 통해 자신의 삶에 적용해서 변화를 이끌어나가야 한다고 생각해요.[본문 224P]


자기 업무 분야에서 최고가 되기 위한 1년 100권 독서

1. 업무 분야의 고전으로 꼽히는 책을 한달에 역권씩 산다.

2. 일주일에 두권씩 읽는다.

3. 반드시 알아야 할 부분에는 밑줄을 치고 여백에 자신의 생각을 적는다.

4. 한 챕터씩 요약 정리를 하고 중요한 내용은 따로 메모하거나 녹음한 후 출퇴근 시간에 읽고 들으면서 자신의 것으로 소화한다.

5. 주말마다 두 권의 책에 대한 리뷰를 쓴다.



반응형

'독서 > 서평' 카테고리의 다른 글

만만하게 보이지 않는 대화법  (0) 2018.06.20
횡설수설 하지않고 정확히 설명하는 법  (0) 2018.06.04
[서평] 신경끄기 기술  (0) 2018.01.30
일취월장 플러스 강연(1월 13일)  (0) 2018.01.15
일취월장 서평  (0) 2018.01.10

지혜로운 개발자가 되기 위한 격언 65가지

Posted by b모노리스d
2018. 3. 23. 11:05 자기계발/ETC
반응형

지혜로운 개발자가 되기 위한 격언 65가지

이수경 기자 | ITWorld
소프트웨어 개발을 하면 할수록 인생의 지혜를 얻게 된다. 어떤 이들은 개발은 단순한 작업이 아닌, 삶을 사는 방식이라고도 말한다. 코드를 작성하는 일 자체가 직장과 일상 속에서 자신의 모습을 구현하는 일이기 때문이다. 깃허브(GitHub)에는 개발자 속담(Programmer’s Proverbs)이라는 저장소가 생성됐는데, 개발자를 위한 지혜로운 문장들을 모아놓은 것이다. 이제 미래 세대를 이끌어나갈 새싹들이 보고 배울 지혜에 대해 알아보도록 한다.

개발자의 현실
- 때로는 QA의 역할을 때로는 버그 수정 역할을 감당해야 한다는 사실을 인정하라.
- 일을 잘할수록 남들은 난이도가 쉽다고 생각한다.

개발자 사명서
- A/B 시험은 두 번 진행하고 변경사항을 한 번에 배치하라.
- 게으름이 자신의 가장 좋은 친구이다. 한 번에 자동화할 수 있는 것을 두 번 하지 마라.
- 최고의 요청은 아예 요청하지 않는 것이다.
- 웹 표준만 설정할 수는 없다.
- 자신의 데이터 구조를 파악하면 코드는 자연히 따라갈 것이다.
- 오래된 코드 중 일부는 다시 작성할 수 없고, 약간만 변경해도 깨져버린다.
- 취했을 때 자신이 춤추는 모습을 떠올리고 다음에 맥주를 마시고 코드를 작성할 때는 책임을 져야 한다.
- 술에 취했을 때는 상사와 대화하지 마라.
- 많은 시도를 통해 더 높은 품질을 달성할 수 있는 경우가 많다.
- 최종 버전의 성공은 거짓이다. 반복만이 있을 뿐이다. 반복을 통해 더 나은 제품을 얻는다. 더 나은 제품을 통해 인기를 얻는다. 인기를 통해 성공을 얻는다. 성공을 통해 잘못 이해한 기술 사양이 깨진다. 개발 사이클이 우리를 자유롭게 하리라.
- 버전 관리에 신경 써야 한다.
- 데모 페이지를 위한 프레임워크를 선택하는 대신에 코드를 위해 선택하라.
- 측정하기 전에 절대로 최적화하지 말라
- 지트(Git)에서 있었던 일은 지트에 남겨 둔다.
- 포리치 루프(Foreach Loop)를 피하면 CPU 사이클을 얻는다.

개발은 하루아침에 이뤄지지 않는다
- 프로그래머가 백 명이라도 2년짜리 프로젝트를 일주일 만에 끝낼 수 없다.
- 페이스북은 하루아침에 만들어지지 않았다.
- 호프스태터(Hofstadter)의 법칙에 따르면 프로젝트를 위해 필요한 시간보다 더 많은 시간을 더해야 한다. 왜냐하면, 호프스태터의 법칙을 고려하더라도 생각한 것보다 더 오래 걸리기 때문이다.

개발은 기초작업이 중요하다
채색하기 전에 밑그림을 그리듯이, 소프트웨어도 설계와 시공에 대한 가이드가 될 큰 밑그림이 필요하다. 이를 '아키텍처'라고 부르는데, 일단 시스템이 개발된 뒤에는 잘못된 구조를 바로잡기가 쉽지 않다는 점에서 매우 중요한 작업이다.

- 프로토타입 없이 완성품을 만들지 마라.
- 표준문안이 없다면 개발도 빠를 수 없다.
- 아키텍처와 디자인은 실행 시간의 핵심이 아니라 문제와 변화를 위한 대비책이다.
- 장기 지원이 필요한 애플리케이션의 아키텍처를 남겨두라.

간결성은 핵심이다
- 충분히 복잡한 앱 아키텍처는 스파게티 코드와 차이가 없다.
- 코드를 간소화하라. 읽고 이해하기 힘든 코드는 골치 아픈 잔재가 될 뿐이다.
- 코드가 간소할수록 버그가 적다.

디버깅
입력 데이터 유효성을 검증하는 것에 각별한 주의를 쏟아야 하는 부분이다. 버퍼 초과나 SQL 인젝션 공격에 이르기까지, 아주 흔한 보안 취약점은 올바른 입력 포맷인지 검증하지 않은 사용자 입력에 근거한 코드가 직접적인 원인인 경우가 많다. 한편으로는 제품을 출시하기 전에 많은 단위 테스트를 진행할수록 나중에 정식 출시 후 나비효과처럼 불어날 피해에 대한 근본적인 대책을 마련하는 데 도움이 된다.

- 모니터링하지 않는 앱을 배치하는 것은 연료계 없이 자동차 여행을 떠나는 것과 같다.
- 프로그램을 작성하는 것보다 디버깅할 때 두 배나 똑똑해야 하므로 동료에게 검토를 부탁하라. 왜냐하면, 자신의 코드를 디버깅할 만큼 똑똑할 수는 없기 때문이다.
- 동료의 코드 검토가 없는 코딩 스타일가이드는 자발적인 세금으로 국가를 운영하는 것과 같다.
- 처음부터 자신이 문제라는 사실을 인정하면 디버깅이 훨씬 쉬워진다.
- 프로그래머에게 올바른 코드를 주면 하루 동안 일 할 수 있다. 프로그래머에게 디버깅을 가르치면 평생 일할 수 있다. - 지락 구드(Chirag Gude)
- 디버깅(Debugging)보다는 시험이 쉽다.
- 동료가 검토하거나 자신이 사는 곳을 알고 있는 폭력적인 사이코패스가 유지 관리한다고 가정할 때만 오래도록 지속하는 코드를 작성할 수 있다.
- 코드에 대한 불만은 코드 재작성에 도움이 되지 않는다.
- 시스템이 완벽하게 동작하면 그 안에 뭐가 있는지 아무도 관심을 갖지 않는다. 문제가 발생하면 시스템 디자인과 아키텍처가 자신의 운명을 결정하게 될 것이다.
- "그냥 넘겨"라는 말로 설계를 대신할 수는 없다

새 출발이 더 나은 대안일 수도 있다
전임 개발자가 작성한 코드 일부분을 유지 보수하거나 디버깅하는 작업은 정말 어려운 일이다. 기존 코드 한 조각의 작동 원리를 파악하고, 최초 개발자의 의도를 파악하는 것, 특히 문서나 주석이 엉망일 경우에는 거의 불가능에 가깝다. 중복된 코드를 남발하거나 억지로 갖다 붙인 결과, 지나치게 비대해진 취약한 코드 베이스만 남을 뿐이다. 기존의 것에 새로운 기능을 연이어서 탑재하려는 욕심을 우선 버려야 하며, 기존 코드의 질과 정비 용이성을 평가하는 것이 우선이다. 코드 재작성 비용을 청구하는 것이 업그레이드 개발을 하는 것보다 더 저렴할 수도 있다.

- 레거시 코드를 다시 작성하면 품질이 나아진다.
- 다시 작성하라. 유지 관리가 불가능한 레거시 코드를 위한 패치는 존재하지 않는다.
- 때로는 레거시 지원을 중단해야 새로운 제품이 피어날 수 있다.
- 오랜 시간 작업할수록 코드 수가 늘어난다. 대부분 최고의 품질에서 역행하고, 버그를 유발하는 기능들이다.

끊임없는 자기개발
C#, 자바, 자바스크립트 등 전세계적으로 많이 쓰이는 개발 언어들 이외에도 스위프트 등의 새로운 언어들이 대세로 떠오르고 있다. 고지식한 개발자라 하더라도 이와 같은 변화와 새로운 기술을 익히는 데 언제까지나 저항할 수는 없는 노릇이다. '죽어도 다른 언어로는 개발하지 않겠다'는 식의 미숙한 발언은 피해야 한다. 개발자라면 무릇 하나 이상의 개발 언어를 잘 알아야 하며, 새롭게 떠오르는 주제에 대해서도 잘 알아야 한다.

새로운 기술이 번져가기 시작하면, 최소한 그 배경과 그 기술의 작동 원리를 이해할 필요는 있다. 세부적인 사항은 그 기술이 요구사항을 해결하는 데 도움이 될 때 파악해도 늦지 않다. 오래된 도구로는 새로운 문제를 해결할 수 없다는 점을 기억하고, 계속해서 새로운 언어를 익혀나가야 한다.

- 말을 잘하는 개발자는 빨리 일자리를 찾을 수 있지만, 마지막 순간에 간단한 시험에서 실패한다.
- 더 많은 기술을 배울수록 자신이 아는 것이 별것 아니라는 것을 알게 된다.
- 프로그래밍 언어를 배우고 새로운 개발자가 되라.
- 형편없는 프로그래머가 언어를 탓한다.
- 더 이상 배우지 않고 쉬운 길을 택하면 기존의 방법론에서 영원히 벗어나지 못하게 될 것이다.
- 오늘의 유행은 내일의 구식.
- 잘 알려지지 않고 이상한 언어를 배우면 이해의 폭과 깊이가 넓어진다.

오픈소스
오픈소스를 잘 활용하면 잠재적인 고용주에게 자신의 능력을 보여줄 있다. 오픈소스 커뮤니티에서는 '직접 이 부분을 작성했다'고 말하는 데 그 어떤 제약도 없는데, 특히 커미터(Committer) 지위를 얻었다는 것은 협동심이 있고, 진행 중인 프로그램에 기여할 수 있는 능력이 있다는 것을 어필하는 것이다.

옴니TI(OmniTI)에서 15년이상 개발자로 일해온 로버트 트리트는 "사이드 프로젝트(Side Proejct)나 오픈소스 커뮤니티에 참여해서 다양한 기술을 사용하는 기업에 입사하는 것도 좋은 방법"이라고 말했다. 물론, 여러 조직의 전문가, 준전문가 등 다양한 사람들이 협력하는 만큼 '다시는 만나고 싶지 않은 사람'으로 낙인찍힐 수도 있음을 주의해야 한다.

- 오픈소스 개발자는 개인의 명성을 추구하지 않는다.
- 오픈소스 프로젝트에서의 협업으로 우정과 커뮤니티를 얻음과 동시에 파벌과 전쟁도 생겨난다.
- 공개적인 코드 검토로 더 나은 자신이 될 수 있다. 더 나은 활동, 더 스마트한 솔루션, 개발자로서의 성장을 얻거나 깨지게 된다.

건강이 우선이다
개발자들은 컴퓨터 앞에서 많은 시간을 보낸다. 그러나 제때에 적절한 휴식을 취하지 않으면 안구건조증, 거북목, 손목 터널 증후군, 근막통증후군 등에 걸려 종합병원 신세를 면치 못할 수도 있다. 프로가 되기 위해서는 건강 관리도 병행하는 것이 무엇보다 필수다.

- 억지로 잠을 자라.
- 바보는 의사를 멀리한다.
- 지칠 때까지 코드를 작성하는 개발자는 생각 없이 산다.
- 모든 애플리케이션은 화면을 껐을 때 아름답다.

기타
- 수염을 깎지 못할 정도로 개발에 몰두하고 있는 정도라면 이미 그 수염이 자라 백발이 된 사람은 최소 백 명이다.
- 고객이 최고의 시험자이다.
- 오류 로그만큼은 없을 때 아름답다.
- 마케팅 담당자는 QA가 아니고 개발자는 홍보를 하지 않는다.
- 무료 사용자에게 행복감을 주는 제품은 재정이 바닥나면 투자자를 겁먹게 할 뿐이다.
- 하나는 하나 이상의 일을 하지 않는다.
- 언젠가라는 말이 가장 쉽다.
- 가장 매력적인 풀(Pull) 요청은 빨간색으로 도배되어 있다.
- 개발자는 먼 곳에서 동료를 찾는다.
- 코드의 미학을 스스로 터득할 수는 있지만 다른 사람들도 쉽게 배울 수 있으리라 착각하지 마라.



원문보기: 
http://www.itworld.co.kr/news/92821#csidx85dd55954643ae1a03d9720910afde2 

반응형
$(document).ready(function(){ var tmpLogin = document.getElementsByClassName("tt_menubar_logout")[0].getElementsByTagName("a")[0]; tmpLogin.className = ""; tmpLogin.innerHTML = tmpLogin.innerHTML.replace("로그아웃",' Logout'); tmpLogin.innerHTML = tmpLogin.innerHTML.replace("로그인",' Login'); document.getElementById("loginout_append").innerHTML = tmpLogin.outerHTML; });