목록초보사장 생활 (1270)
Dharma
클로져(Closure)에 대한 말들은 많다. 최근 핫하다고는 하지만 전산의 태동기부터 존재하던 문법이다. 1급 객체(First class Object)를 지원하는 언어는 자연스럽게 지원하지만 개념 자체를 이해 못하는 경우가 많다. 파이선과 연계해서 클로져(Closure)를 설명하는 좋은 설명이 있어서 소개하고자 한다. Objects are data with methods attached, closures are functions with data attached. 객체는 메서드가 달라붙어 있는 데이타라면, 클로져는 데이타가 달라붙은 함수이다. 예제는 def make_counter(): i = 0 def counter(): # counter() is a closure nonlocal i i += 1 ret..
작가: 백수귀족 갑자기 쳐들어온 이계와의 전쟁후 극한의 상황에서 시작된다. 고아에 당장 먹고 살 길이 막막한 10살의 꼬마지만 지켜야 할 애들이 여러명이다. 피는 이어지지 않았지만 그 애들이 누구보다 행복하길 바라는 맏형 '이한'은 동생들을 위해서 먹을거를 훔치며 어른들과 맞서 싸우기까지 한다. 그래서 일찍 철이 들어버린 자신이 가진 최소한의 재능. 그 재능으로 인해서 동생들을 먹고 살릴 수 있다는 판단으로 이한은 지옥같은 전장으로 내 몰린다. 투정도 반항도 할 수 없이 자신이 할 수 있는 모든 것을 바탕으로 상승에 대한 의지. 간만에 재밌는 판타지를 보았다. 판타지로 분류가 되나 느끼기에는 SF물에 가깝다. 다만 액션씬(?)에 해당하는 부분이 판타지나 또는 무협스럽다. 결론은 SF 설정에 판타지스러움을..
OSX 에서 사용하는 ls 는 FreeBSD 에서 사용하는 다른 버젼의 ls 입니다. 그래서 GNU 버젼의 ls 를 사용하고 싶으면 따로 설치해줘야 합니다. $ brew install coreutils 이렇게 하면 GNU의 유틸들이 설치됩니다. 그리고 이제부터 –color=auto 라는 명령이 먹습니다. (OSX 버젼은 'ls -G' 를 사용해서 색을 출력했었습니다.) 게다가 다양한 유틸에서 화려한 색을 표출할 수 있게 만들어 줄 수가 있습니다. coreutils 는 위에서 설치했다고 가정하고 $ git clone https://github.com/seebi/dircolors-solarized.git ~/.dircolors-solarized 와 같이 컬러 테마를 받아줍니다. 그리고 ~/.bash_prof..
osx 에서 docker container 로 mysql 을 띄웠을 때, DB container 에 접속이 안되는 문제 $ docker run --name db -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql 입력하면 mysql container 가 db 라는 이름으로 만들어져서 동작한다. $ docker exec -it db bash 명령으로 들어가 보면 root prompt 가 떠서 여러가지 동작을 할 수 있게 된다. # mysql -uroot -p 접속해서 테이블이나 데이타베이스도 만들 수 있다. 그 뒤에 'OSX 터미널'에서 다음과 같이 명령을 치면 $ mysql -uroot -h192.168.99.100 -p (192.18.99.100 은 osx 에 깔린 dock..
1. 얼마나 좋은 것인지 '보게' 한다. 설명은 때때로 듣는 상대를 귀찮게 하기 마련이다. 보고 나서 흥미가 생긴다면 좋은 출발 2. 기본적인 것에 대한 설명은 자세하게 한다. 단 정말 기본적인 것에 그쳐야 한다. 복잡한 것은 알아가면서 본인이 깨달아야 재미는 증가하는 법이다. 3. 옆에서 지켜보고 있으면서 도움은 최소한으로 줄여야 한다. 정말 어려워 할때만 살짝 도와주고 어떠한 원리로 그게 가능한지를 설명해주되 역시 최대한 단순하게 반복적으로 설명이 가능해야 한다. 4. 제일 중요한 것은 지속적인 칭찬이다. 눈에 띄는 기량 향상이 보인다면 과한 칭찬도 부족하지 않다. 5. 스스로 난이도 있는 과제를 달성했을 때 기뻐하는 것을 '나도 알고 있다 그 마음' 이라는 눈길로 쳐다봐준다. (이제 거의 다 왔다)..
flake8 [2.5.4] 를 OSX El Capitan (10.11.3) 에 pip 이용해서 설치시 flake8 실행파일이 설치 안되는 문제가 있다. https://pypi.python.org/pypi/flake8#downloads 에서 수동으로 다운로드 받고 압축 풀린 디렉토리로 이동후에 $ python setup.py install 해주면 pyenv 관련 실행 파일 디렉토리에 저장된다. $ ln -s /Users/crazia/.pyenv/versions/3.4.3/bin/flake8 /usr/local/bin/flake8 해주면 제대로 동작하기 시작한다.
먼저 이건 철저하게 배포용을 위해서 만든 기술이 아니라 개인 소장용이라는 점을 명백하게 말하겠다. 어떤 사이트를 가 봤는데 맘에 드는 사진이나 그림들이 연달아 나열된 경우가 많다. 로딩도 해야하고 일일이 클릭도 하는게 귀찮아서 그 사진들을 다 다운받아서 만화책 보는 프로그램으로 쭉 보고 싶을때가 있다. 그렇다! 귀찮은 것이다. 귀찮으면 DRY (Don't Repeat Yourself:같은 일을 반복하지 말고 반복하는 일은 전부 컴퓨터에게 맡겨라) 원칙에 따라서 개발자 본능이 꿈틀거린다. 개발자의 종특중 하나는 일일이 눌러서 다운받는게 3시간 걸리는 작업이라도, 개발로 편하게 스크립트 짜는게 6시간이 걸려도 후자를 택하는 종족이기 때문이다. (다만 한번 한 작업은 다음에 할 때 무지하게 빨라진다는 장점이 ..
SQLite 관련 라이브러리가 컴파일이 안된다. 찾아봐도 자료가 쉽게 안나오는 걸 보면 El Capitan 의 문제로 생각된다. 컴파일을 방해하는 가장 큰 요소는 루트리스(Rootless) 라고 생각이 된다. 일단 그 기능을 끈다. 솔직히 개발자에게는 필요 없는 옵션이라고 생각된다. 저번에도 언급했지만 끄는 방법은 재부팅시에 Command + R 을 눌러서 복구모드로 들어가서 , Terminal 을 실행해서 다음과 같이 입력한다. $ csrutil disable 그리고 다시 재 부팅 하고 나서 Terminal 을 실행하고 Xcode 가 설치되어 있다면 (안되어 있다면 설치하고) $ xcode-select --install 하면 설치하라고 팝업창이 뜨고 설치해준다 하면 완성입니다. 여기까지 하고 나면 Py..
Homebrew 는 설치가 되어 있다는 가정하에 시작합니다. 그리고 OSX 10.11 El Capitan 에서 Homebrew 를 쓸 수 있다는 것은 이미 SIP (System Integrity Protection) 을 꺼둔 상태라는 것을 의미합니다. 혹시 몰라서 SIP 를 끄는 방법은 처음 부팅될 때 '사과 마크'가 나오기 전에 'Command + R' 을 누르고 있으면 Recovery Mode (복구 모드)에 들어갑니다. 거기에서 Terminal 을 실행시키고 $ csrutil disable 을 하고 다시 재부팅하면 됩니다. 이제 준비가 끝났으면 차례로 시작하면 됩니다. 1 osxfuse 인스톨 $ brew install Caskroom/cask/osxfuse 2 ntfs-3g 인스톨 $ brew i..
Android Studio를 OSX(내 경우에는 Yosemite 나 El Capitan 버젼) 에 설치하다 보면 발생하는 에러가 다음과 같다. 종종 발생하는데 해결하는 방법은 쉽다. $ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_xx.jdk $ open /Applications/Android\ Studio.app 위에서 xx 는 자신의 버젼에 맞게 쓰여져야 한다. 참고로 내꺼는 25 ("jdk1.7.0_25.jdk")이다. 안전하게 .bash_profile 에 STUDIO_JDK 값을 지정해주는 것이 좋다.