분류 전체보기
-
python language studyDaily 2014. 6. 15.
그 동안 작성된 코드를 웹에서 정보를 찾아가며 읽을 수 있거나 만들어져 있는 스크립트를 수정하는 정도로만 알고 있었는데, 스크립트 언어 1-2개는 훌륭하게 활용할 줄 알아야할 필요성이 있어서 공부를 시작했다. 처음 pyhton을 접할 때에는 시중에 학습할만한(특히 한글로 된) 책이 1-2권밖에 없었던 것으로 기억하는데 현재는 열혈강의 시리즈부터 Head First 시리즈까지 다양한 책이 나와 있었다. python은 객체지향을 지원하는 스크립트 언어다. C, C++, java등 Major 언어에 비해 상대적으로 쉽게 프로그래밍을 접할 수 있고 매우 광범위한 라이브러리를 활용할 수 있다는 장점이 있다. 또한 기초 컴퓨터 과학 교육을 증진시키기 위해 만든 싱글 보드 컴퓨터인 라즈베리 파이의 학습 언어로써 py..
-
에버노트 신규 사용자 세미나Daily 2014. 6. 13.
에버노트 신규 사용자 세미나에 다녀왔다. 에버노트의 코끼리 의미를 알게 되었다. 실제 코끼리를 모티브로 삼았는데, 코끼리는 기억력이 좋아서 사소한 일을 언제까지고 기억하고 있다고 한다. 각 세션마다 어떻게 발표자는 활용하고 있는지, 그리고 발표자가 생각하는 팁을 알려주었다. 태그나 분류, 이메일로 보내기등 다양한 기능을 완벽하게 사용하려 하지 말고 한가지 주제로 작성하고 관찰하라는 것이다. 요즘은 스마트폰을 대부분 사용하니까요. 의지만 있다면 작성도 그리고 살펴보는 것도 간단하다. 에버노트를 사용하는데 있어서 정리 및 활용이 매우 중요하다는걸 느꼈다.정보를 수집한다. 에버노트에 작성수집된 정보를 활용한다.활용된 정보를 재가공 및 정리한다. 저장은 했지만 다시 노트의 내용을 살펴보고 활용하는 것은 드물었던..
-
개발자는 소스코드를 작성하는 사람이죠?Think 2014. 5. 21.
소프트웨어 개발을 하고 있다면, 소스코드를 작성하는데까지 있어서 여러 절차들이 필요하다. 언어의 문법을 이해하고 활용하여 소스코드를 작성하고 빌드, 실행하는 것만 생각한다면 소프트웨어 개발자의 삶의 일부만 알고 있는 것이다. 개발자들은 개발조직에서 합의된 개발 프로세스에 의해 움직이며 소스코드 작성 뿐만아니라 설계, 문서, 테스트를 경험하고 기존의 기능을 개선하거나 버그를 수정하는 일에도 굉장히 많은 시간을 보내기도 한다. 기능을 개선시키기 위해서 잠시 걸으면서 해결방법을 생각하거나 메모지 또는 보드에 기능을 정리하는 일은 보기 어려운 모습이 아니다. 또한 새로운 기능을 개발하기 위해서 이해관계자들에게 설득을 해야 하는 상황도 오기 때문에 대화 스킬도 매우 중요하다. 요구사항을 정확하게 분석 해야하고 이..
-
linux 시스템의 하드웨어 사양 확인하기IT/DevOps 2013. 12. 14.
Windows에서는 하드웨어 사양을 확인하는데 CPU-Z라는 프로그램만(심지어 무료) 있으면 CPU부터 시작하여 마더보드와 그래픽카드까지 모두 확인할 수 있다. 하지만, linux에서는 CPU-Z와 같은 프로그램이 없기 때문에 하드웨어 사양을 확인할 수 있는 방안을 소개한다. lshw, lspci lshw 명령어를 통해서 하드웨어 정보를 알 수 있다. 아래는 가상화 환경에서 실행한 하드웨어 정보이다. morenice@ubuntu-morenice:~$ sudo lshw [sudo] password for morenice: ubuntu-morenice description: Computer product: VirtualBox () vendor: innotek GmbH version: 1.2 serial: 0..
-
개발자라면 알아야할 인코딩 이야기IT/101 2013. 12. 12.
character set, encoding 컴퓨터 세상에서는 문자를 표현하기 위해서 문자집합을 정의해야 한다. 표현해야할 문자(a,b,c,...)와 특수문자를 정의하고 순서를 지정한 것을 문자 집합(character set)이라고 한다. 이러한 문자집합을 행렬의 코드형태로 표기한 것을 "코드화된 문자집합(coded character set) 이라 한다. 예를 들어 '가'를 10001 이렇게 2진수를 통하여 표기하는 방식이다. 문자집합을 컴퓨터에 저장하기 위하여 Byte형태로 표현한 것을 인코딩 방식(CES, character encoding scheme)라 불려지고 있다. 대표적으로 ASCII(American Standard Code for Information Interchange)를 이야기 할 수 있..
-
Disk fragmentation defragmentationIT/DevOps 2013. 12. 11.
오래전부터 windows를 사용하면서 디스크 조각 모음(defragmentation)을 PC가 느려졌다고 느끼거나 혹은 한해를 마무리 할 때마다 한번씩 실행하곤 했었다. 확실히 디스크 조각모음을 하게 되면 속도가 다시 빨라지는걸 느낄 수 있었지만, 문득 궁금한게 생겼다. linux에서는 왜 디스크 조각 모음을 하지 않을까? 이 답을 찾기 위해서 일단 디스크 조각 모음의 원인과 정체를 찾아보았다. fragmentation, defragmentationwindows에서의 디스크 조각 모음은 파일들을 사용/수정/삭제를 반복하면서 생기게 되는 단편화(fragmentation)를 해결하기 위한 프로그램이다. 예를 들어 하나의 파일이 디스크에 연속적으로 있으면 좋겠지만 여기저기 나눠서 저장하게 된다. 이렇게 나눠진..
-
Disk usage analyzeIT/DevOps 2013. 12. 10.
디스크 용량은 이상하게도 항상 부족하다. 처음에는 여유있었겠지만 결국 가득 찬 디스크의 파일들을 삭제할 것인지 또는 디스크를 증설할 것인지를 결정해야 할 시점이 올 것이다. 보통은 첫 번째로 낭비되고 있는 파일들이 있는지를 가장 먼저 알아보게 되는데, 사람이 직접 찾는 것은 꽤 어려운 일이다. 필자도 어느날 갑자기 디스크 사용률 100%에 가까이 되서야 정리를 시작했는데 그 과정에서 도움을 받았던 몇 가지 툴들을 소개한다. Ubuntu Disk usageUbuntu에서는 디스크 사용량을 분석해주는 프로그램이 내장되어 있다. "디스크 사용량 분석"이란 프로그램을 실행하면 분석시간이 다소 걸리지만 아래처럼 디렉토리 단계별, 유형별로 확인할 수 있다. 또한 오른쪽 이미지는 파일 유형별 어떤 파일이 크게 자리잡..
-
Disk wipeIT/DevOps 2013. 11. 5.
Disk wipe란 disk에 있는 데이터를 파티션 고려없이 있는 그대로 완전 삭제를 의미한다. Raid 구성을 위해 디스크 전체(partition 정보, MBR 데이터 포함)를 초기화를 해야 하거나, 보안상의 이유로 복구가 되지 않도록 완전 삭제를 하고 싶을 경우가 있을 것이다. 일반적으로 사용하는 disk format은 disk 사용을 위한 설정(partition, file system type)을 기반으로 데이터를 초기화하기 때문에 disk wipe와는 다르다. linux dd 리눅스에서는 프로그램을 다운받을 필요 없이 dd 명령어로 간단히 disk wipe를 할 수 있다. 1. 0 숫자값으로 모두 채우기dd if=/dev/zero of=/dev/sda bs=1M 2. random 숫자값으로 모두 ..