2018년 11월 26일 월요일

[책쓰기] 목차는 어떻게 작성할까요?

- 1 개의 댓글


목차는 어떻게 작성할까요?

이 작업을 하기 전에, 좋은 목차가 어떤 것인지를 우선 알아보도록 합시다.
좋은 목차란 어떤걸까요?

좋은 목차란 한눈에 책의 진행 방향 및 내용을 개략적으로 이해할 수 있어야 합니다.
이를 위해서는 다음과 같은 항목을 지켜주면 좋습니다.

1. 수준(Level)

각 장에서 사용하는 수준은 가능한 일률적이어야 합니다.
즉 2장에서 수준 4단계를 적용했다면, 3장과 4장에서도 가능한 수준의 깊이는 4단계를 넘지 않아야 합니다. 그리고 가능한 (도입부는 제외) 수준은 각 장마다 비슷하게 맞춰주는 것이 좋습니다. :)

제목
부제목
소제목
본문
[그림] 수준이 4단계인 예시


2. 대칭성 및 연속성
각 장의 제목은 같은 수준에 대한 내용을 다루고 있어야 합니다.
예를 들어, 5-1에서 NX-OS를 다루었다면, 5-2에서는 VyOS에 대해서 언급하는게 좋습니다.




그렇다면 좋은 목차를 어떻게 작성할까요?

1. 수정되지 않도록 작성 
우선 수정되지 않도록 작성한다는 것은 사실 거의 불가능합니다.
하지만, 가능한 수정되지 않도록 하는 것이 중요합니다.

수정되는 이유는 다음과 같습니다.

1) 생각해 보니 부족한 내용
2) 불필요한 내용
3) 버전 업데이트등

수많은 이유로 목차는 수정됩니다. 하지만, 가능한 이런 수정이 이루어지지 않도록 처음에 목차가 잘 작성되어져 있어야 합니다. 이를 위해서는 이미 개별 챕터의 내용을 써져 있어야 합니다. (으응?)
황당 으응에 대한 이미지 검색결과

....황당할수는 있는데..이런 내용을 써야지 하는 목차가 아니라, 이미 내용이 다 써져 있는 상태에서 목차가 작성되어야만, 목차의 수정이 거의 이루어지지 않습니다.
그러니까, 이건 이미 여러가지의 매체를 통해서 내용이 완성되어진 적이 있다는 것입니다.

Hoonjo pycon에 대한 이미지 검색결과
[그림] 강의를 위해서 이미 내용이 작성됨

그러지만, 이런 경우가 아니라면 써야할 내용을 간략하게라도(혹은 가능한 자세히) 목차에 따른 내용의 전반적인 시나리오라도 쓰시는게 큰 도움이 됩니다. 


2. 욕심을 버려라.
책을 쓰다 보면, 알고 있는 내용을 모두 담고 싶어집니다.
내용이 풍부한 것은 좋은데, 모든 내용을 담는 것이 과연 독자를 위한 것인지를 고민해 보아야 합니다. 즉 책을 구매해서 보려는 독자에게 어떻게 전달하는 것이 효과적인지, 그리고 어디까지 전달하는 것이 올바른지를 파악하고 그에 맞게 수준을 조절해야 합니다.

내용을 깊이 없이 쓰라는 것이 아니라, 초중급을 대상으로 작성하고 있는 책이 일부분을 제외한 대부분이 중급이상이 되어 버리면, 출판사에서 판매하는데 어려움이 있습니다..;;;


3. 중심내용은 버리지 않도록

글을 쓰다 보면, 주변 가지를 전달하기 위해서, 중심 내용이 흐려지기도 합니다.
이럴 경우, 주변 가지를 쳐서 당장 필요하지 않은 내용을 빼야 합니다.

최근에 백종원 선생님이 메뉴를 단일화 하라는 것과 의외로 비슷합니다.
백종원 메뉴 단일화에 대한 이미지 검색결과

물론 책의 성격이 부페라면, 부페로 가도 됩니다.
하지만, 대부분의 IT 책은 전문서적이기 때문에 선택과 집중이 필요합니다.

주변부를 많이 다루다 보면, 중심 내용이 흔들리고, 정체성이 흔들립니다.
과감하게 버려야할 내용은 버리고, 집중해야 합니다.
정말 쓰고 싶은 내용이 있다면, 부록으로 빼시는게 낫습니다.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

목차를 쓰긴 했는데, 전체 내용에도 일부 포함되는거 같네요
저를 위해서 한번 정리해 봤습니다 :)

좋은 즐거운 하루 되세요~!
  
[Continue reading...]

2018년 11월 14일 수요일

[책쓰기] 책을 쓸때 교정을 어떻게 하면 좋을까요?

- 0 개의 댓글
안녕하세요~

책을 쓰다보면, 정말 많은 부분이 신경쓰이지만, 오타 및 띄어쓰기가 정말정말정말 더할나위 없이 중요하죠.
그럴 경우에는 일단 가능한 범위내에서 쓰고, 아래의 링크를 통해서 온라인으로 교정을 1차로 하고 자세한 것은 국립 국어원에서 2차 검색하는 것을 강력하게 추천드립니다.

가끔은 책 쓰는 것보다 조판(책을 찍어내기 위한 PDF / 보통 인디자인으로 작성)이 더 힘든 경우가 있어요~!! 처음에 잘 만들면 이 과정이 수월하게 넘어가곤 하죠.

정리하자면,

1차 교정은: 한국어 문법/맞춤법 검사기
2차 교정은: 국립국어원에서 검색

이렇게만 하시면 조판으로 넘길때 출판사 편집부에 이쁨을 받으실 수 있을꺼에요~! :)

예제를 한번 보여드리고 마치겠습니다아아아~

요즘은 GNS3+앤서블 강의를 준비중이랍니다. 열심열심히 하고 있어요

1) 검사 시작


2) 검사 끝


3) 적용 

요즘은 GNS3+앤서블 강의를 준비 중이랍니다. 열심 열심히 하고 있어요

참, 한국어 문법/맞춤법 검사기는 개인과 학생에게만 무료로 제공됩니다.
빠잉 :)

[Continue reading...]

2018년 11월 8일 목요일

[Network] The trend of Form Factor

- 0 개의 댓글

 Hi Folks,

I hope you enjoy your weekday.

I would like to share and clarify the Form Factor for Network (even include interface)



 As you may know, server will provide very high speed in the future.


we support 1 Gbe & 10 GbE interface now, it will transit to other speed now.
And we will handle 10, 25, 50 and sometimes 100 GbE in a server.

Thus it is good to understand clearly for Form Factor now.


Here is speed and distance per interface.
 


And
  • SFP is 1 GbE or Fibre interface,
  • CFP and QSFP28 is 100 GbE
  • QSFP28 DD is 200 GbE

You probably have curiosity for + , 28, DD.
+ meaning is mostly advanced feature and speed but same interface.
  • Thus SFP is 1 GbE and SFP+ is 10 GbE supported. (other purpose as well.)
  • And   QSFP+ is same.

28 meaning is enhancement from +
  • Thus SFP28 could support 25 GbE as same interface.
 


DD is a littble different.
  • DD just put in 2 ports.
  • In my view, it is not developed yet currently
  • Thus in my view it will support by CFP or QSFP interface type.



Reference:


Appedix: interface type.

SFP
SFP, small form-factor pluggable for short, is a compact, hot-pluggable transceiver module used for both telecommunication and data communications applications. SFPtransceiver can be regarded as the upgrade version of GBIC module. Unlike GBIC with SC fiber optic interface, SFP is with LC interface and the main body size of SFP is only about half of GBIC, which makes the SFP space saving. SFP interfaces a network device mother board (for a router, switch, media converter or similar devices) to a fiber optic or copper networking cable. Meanwhile, SFP is a popular industry format supported by many network component vendors. SFP transceiver modules are designed to support SONET, Gigabit Ethernet, Fibre Channel, and other communications standards.

SFP+
SFP+ is an enhanced version of the SFP that supports data rates up to 10 Gbit/s. SFP+ supports 8 Gbit/s Fibre Channel, 10-gigabit Ethernet and Optical Transport Network standard OTU2. It is a popular industry format supported by many network component vendors. Initial standard applications focused on 8G Fibre Channel, 10G Ethernet and 10G Fibre Channel, where the electrical interface to the host board is a standardized serial interface called SFI. The applications have expanded to include SONET OC-192, SDH STM-64, OTN G.709, CPRI wireless, 16G Fibre Channel, and the emerging 32G Fibre Channel application.

XFP
XFP has appeared before the SFP+. It is also a standardized form factor for serial 10 Gb/s fiber optic transceivers. It is protocol-independent and fully compliant to the following standards: 10G Ethernet, 10G Fibre Channel, SONET OC-192, SDH STM-64 and OTN G.709, supporting bit rate from 9.95G through 11.3G. XFP transceivers are used in datacom and telecom optical links and offer a smaller footprint and lower power consumption than other 10 Gb/s transponders. The electrical interface to the host board is a standardized serial 10 Gb/s interface called XFI.

QSFP/QSFP+
QSFP is short for quad (4-channel) small form-factor pluggable. It is a compact, hot-pluggable transceiver also used for data communications applications. QSFP+ evolved as the standard to support 10Gb/s data rates per SFF-8436. Compared with QSFP+, QSFP products support Quarter Small Form-factor Pluggable with the different data rate so that there is no change in the product solution. Nowadays, QSFP+ gradually replace QSFP and is widely used by people as it can provide higher bandwidth.


CFP
CFP, namely C form-factor pluggable, is a multi-source agreement to produce a common form-factor for the transmission of high-speed digital signals. The c stands for the Latin letter C used to express the number 100 (centum), since the standard was primarily developed for 100 Gigabit Ethernet systems. It can support a wide range of 40 and 100 Gb/s applications such as 40G and 100G Ethernet, OC-768/STM-256, OTU3, and OTU4.



Thanks & Regards,
Hoon Jo (CCIE DC #44667, VCIX6-NV, C-HanaTec151)
Automation Specialist  (Ansible, Python)
Enterprise Resolution Manager, Korea
Dell EMC | Commercial Solutions Support (CSS)

[Continue reading...]

2018년 11월 7일 수요일

[Ansible] ansible-vault로 생성한 암호화 파일을 ansible-vault의 키로 사용할 수 없음

- 0 개의 댓글
안녕하세요 


앤서블 심화 과정의 강의 중에 발견된 이슈에 대해서 간단하게 요약하고 work-around에 가까운 해결책을 공유합니다. (Andrew님이 알려주신 이슈)
해당 이슈는 앤서블 버전 2.5.0a1 이후로 모두 발견됩니다. 

#1 생성한 AES256 암호화 파일을 ansible-vault에서 볼트 암호화 파일로 인식하지 못하게 하기

#1-1 우선 알고 계시는 방법으로 vault_key를 생성합니다.
[vagrant@ansible-server ~]$ ansible-vault create ~/.ansible/vault_key
New Vault password:
Confirm New Vault password:
0L, 0C written
[vagrant@ansible-server ~]$ cat ~/.ansible/vault_key
$ANSIBLE_VAULT;1.1;AES256
34613235653831373135356463663939353438633731356666363961663338366433613833663235
6632336534323665393132646432633338373738303661610a636564656134356136363833663230
65353539323437636266373933646565613961636136656131346565666237393735303562356330
6261333337356137320a353466656237373837613933613038373637613539363461353061366361
3039

#1-2 여기서 $(달러 기호)를 삭제 합니다.
[vagrant@ansible-server ~]$ cat .ansible/vault_key
ANSIBLE_VAULT;1.1;AES256
34613235653831373135356463663939353438633731356666363961663338366433613833663235
6632336534323665393132646432633338373738303661610a636564656134356136363833663230
65353539323437636266373933646565613961636136656131346565666237393735303562356330
6261333337356137320a353466656237373837613933613038373637613539363461353061366361
3039

#1-3 그런 이후에 는 vault_key를 평문으로 인식하고 진행이 됩니다.
[vagrant@ansible-server ~]$  ansible-vault encrypt ./group_vars/nodes --vault-password-file ~/.ansible/vault_key
Encryption successful
[vagrant@ansible-server ~]$  ansible-vault decrypt ./group_vars/nodes --vault-password-file ~/.ansible/vault_key
Decryption successful


#2 볼트가 아닌 openssl을 이용하여 난수로 작성된 vault_key를 생성합니다.

#2-1 아래의 명령어를 실행하여 vault_key_by_ssl 이라는 vault_key파일을 생성합니다.
[vagrant@ansible-server ~]$ openssl rand -base64 2048 > ~/.ansible/vault_key_by_ssl

#2-2 처음 보는 거니까, 내용을 살펴 봅니다.
[vagrant@ansible-server ~]$ cat ~/.ansible/vault_key_by_ssl
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

#2-3 새로 생성한 vault_key인 vault_key_by_ssl을 이용해서 암호화합니다.
[vagrant@ansible-server ~]$  ansible-vault encrypt ./group_vars/nodes --vault-password-file ~/.ansible/vault_key_by_ssl
Encryption successful

#2-4 암호화된 파일을 확인합니다.
[vagrant@ansible-server ~]$ cat ./group_vars/nodes
$ANSIBLE_VAULT;1.1;AES256
38323237383235633039383566343232336237326565633738393662383837316134636639373732
6463626234326530633032323437303638663362643930350a323033636166646334656362343361
65336132366366633936323230363866316135613764336339333830393134356532663662363965
3166653161386136330a313232666439343536393932343730366334666235343738306630303534
35343637306238376362396563383034643564313431653834613938646464663332

#2-5 복호화도 해봅니다.
[vagrant@ansible-server ~]$  ansible-vault decrypt ./group_vars/nodes --vault-password-file ~/.ansible/vault_key_by_ssl
Decryption successful

혹시 비슷한 이슈가 있다면, 위의 방법이 도움이 되시길 바랍니다.
조훈 드림. 
[Continue reading...]

[책쓰기] 저자등록방법 (Yes24, 알라딘, 교보문고 등)

- 0 개의 댓글

안녕하세요~~!

오랜만에 쓰는 글이 앤서블 쪽이나, 파이썬이 아니라 실망 하시는 분들은 없으시겠죠오;;;

실망실망 짤에 대한 이미지 검색결과

하하하 이러지 마시고~~ 이번에 제가 책을 하나 더 냈는데요.
그러다 보니..이제 저자(?) 라는 느낌도 들고 해서 저자에 대해서 책 관련 사이트들에서 등록도 하고 관리를 좀 해보려고 시도를 했습니다.

향후에 책을 번역 또는 쓰시고, 나서 저자로서 셀프 관리해보고 싶을때 도움이 되시라고 정리해 보아요~~~!

우선 기본 정보로 저자로 등록되면, 아래와 같답니다.



그나마 이건 책 정보가 두개가 올라와 있기라도 한데, 책 정보도 뒤죽박죽에 제대로 링크도 안 걸려 있는 경우도 있어요. 뭐....한달에 수천권(아마두?)아 쏟아지는데, 일일히 저자를 관리한다는게 사실상 불가능 한게 아마두...? 당연하겠죠?

그러니 저자 관리는 셀프 관리가 필요한 영역이랍니다. 하하하하 ;;;;

자 그러면 저자 관리는 어떻게 하는가 하면 말이죠.

1. 진행 방법
진행 방법은 각 저자 관리 담당자에게 이메일 또는 고객센터에서 1:1 문의를 하면 된답니다.
고객센터에서 1:1 문의를 하는 방법은 대표적인 인터넷 서점인 Yes24와 알라딘에서 사용하는 방법이고요.

담당자에게 메일을 보내는 방법은 전통적인 서점으로 유명한 교보문고에서 사용하는 방법이랍니다.

아마 이러한 차이는 회사 출발점의 차이에 기인하는 것 같네요.

2. 문의 하는 방법

2-1. 고객센터 1:1 문의



2-2. 이메일로 요청
교보문고: 상품관리팀/김선popsuny@kyobobook.co.kr




대략 요청하고 나면 1-2일 내로 모든 것들이 반영 된답니다.

3. 요청 이후에는?
문의 하고 나면 이렇게 변한답니다.

Yes24: http://www.yes24.com/24/AuthorFile/Author/236681






바꾸고 나면 뿌듯? 하실꺼에요~~~ 잘 정리된 저자 프로파일 관리 :) 방법이었습니다. 

ps. 리디북스나 ebook 전문출판사는 제가 저자로 등록된 적이 없어서 진행해 보지 못했지만, 따로 저자 수정을 누르고, 요청하시면 됩니다.~~ 참고하세요

재미난 좋은 하루 보내세요~!
조훈 드림. 



[Continue reading...]
 
Copyright © . 쿠버네티스 전문가 블로그 - Posts · Comments
Theme Template by BTDesigner · Powered by Blogger