비공개 메서드를 테스트 해야 하는가?

September 29, 2017 Opinion

TDD(Test-Driven Development, 테스트 주도 개발)에 익숙하지 않은, 개체지향 프로그래밍 언어를 사용하는, 프로그래머들은 간혹 이런 질문을 한다. 비공개(private) 메서드도 테스트 해야 하는가? 이 질문의 대답은 ‘그렇다’ 또는 ‘아니다’보다 좀...

로그를 잘 남기기

September 29, 2017 Dev

보통의 웹 어플리케이션, 사이트 등을 만들 때 순수한 개발 외적으로 신경 써야 할 부분 중 여러 가지가 있는데 그 중에 하나가 로그이다. 잘 돌아가는 사이트들도 서버에 들어가서 로그를...

첫 번째 mac OS app YATA #3

September 24, 2017 App

  YATA YATA는 macOS용 자작 앱으로 Yet Another Telegra.ph App을 의미하는 약어이다. 약 2달 반 정도 개발하면서 생각나는 것들을 정리해본다. Cocoa 텍스트 시스템 Bold, Italic 등 텍스트 서식을...

OpenStack에서 사용할 Windows imange 생성

September 22, 2017 Dev

기본 준비사항 Ubuntu 16.04 VirtIO driver CloudBase init Windows CD virt-manager 설치 1 $ sudo apt install -y kvm virt-manager virt-manager 설치 후에 VM을 생성한다. 이미지는 qcow2로 만들어야된다. VirtIO 드라이버 설치 가장 중요하다. 이 작업을 하지 않으면,...

인공지능 스피커, 과연 이게 필요한가?

September 15, 2017 Opinion

카카오미니, 네이버의 웨이버, 아마존의 에코 등 인공지능 스피커들이 난리다. 정확히 인공지능 스피커라는 용어가 맞는지도 모르겠지만, 개인적으로는 솔직히 왜 이게 필요한지를 모르겠다. 일단 기능자체는 거의 모든것들이 현재의 스마트폰에서 되는것이다....

mypy와 함께하는 Python Typing

September 14, 2017 Code

파이썬은 자유로운 영혼이에요 Python의 장점 중 하나를 꼽으라면 동적 타입 언어(dynamic typing language)라는 점입니다. 실행하는 시점에서 변수의 타입을 고려하기 때문에 타입을 신경쓰지 않고 코딩이 가능하죠. 아래 코드는 파이썬의...

Vim에서 저장하는 방법 – 자동 저장

September 14, 2017 App

Vim은 25년 된 텍스트 에디터이고, 조상인 vi와 호환성을 남겨두기 위해 (어찌 보면 갸륵하기까지 한) 노력을 하는 에디터라고 생각한다. 파일을 메모리로 불러들여 편집한 후 저장하는 프로세스는 (버퍼라는 용어만 빼면)...

뉴콘텐츠 팀이다

September 13, 2017 Life

대체 <뉴>는 뭐고 <콘텐츠> 는 뭘까? 뉴콘텐츠란 무엇인가…    ‘새로움’ ‘새롭다’ ‘새로워’  어쩐지 마음이 간질간질 두근두근, 새싹이 파릇파릇 피어날 것 같은 단어지만 따지고 보면 ‘새 것’ 은 늘 어렵다. 생각해 보니 모든게 그랬다....

비즈니스모델, 주동목(SVO)으로 바라보다.

September 13, 2017 Opinion

일단 들어가기 전에, 내가 영향을 받은 육하원칙 프레임에 대한 글부터 살펴보시길 권해드린다. 박성혁 COMPANY D­대표의 비즈니스 모델 강의, 사업 육하원칙으로 바라보다: https://brunch.co.kr/@haegyung/28 이제 앞으로 나눌 이야기들은 전략과 비즈니스...

python – db stored procedure 호출에 generator 활용하기

September 12, 2017 Code

프로시저 호출은 몇 가지 제약을 가진다. 일단 프로시저명을 전달해야 하고 파라미터를 순서대로 전달해야 한다. 그리고 결과를 주는 방식이 하나의 결과를 줄 수도 있고 여러 결과를 줄 수도 있다....

macOS Sierra, Safari 11에서 Flash Player 사용하기

September 10, 2017 App

딱 1년 전 macOS Sierra, Safari 10에서 Flash Player 사용하기 이와 같은 제목으로 포스팅을 했었다. 그리고 큰 문제가 없이 잘 사용하고 있었는데, macOS High Sierra 가 새로 나오면서 Safari의 Flash...

퇴사자는 진실을 말하지 않는다.

September 10, 2017 Opinion

나도 그랬고 다른 사람도 그랬다. 친한 사람들 앞에서는 퇴사의 이유에 대해서 이야기를 하지만 진짜 퇴사 이유를 밝히지는 않는다. 더 좋은 오퍼가 있어서 간다는 식이다.(어떤 사람이 더 나쁜 오퍼가...

flask-sqlalchemy multiple databases – 1

September 7, 2017 Code

사용하기 flask-sqlalchemy 에서 기본적으로 SQLALCHEMY_DATABASE_URI 설정을 통해서 mapping class 에 정의된 테이블들이 DB와 연결되게 된다. 그런데 1개 이상의 DB와 연결해야하는 경우가 생긴다. 기존의 회원정보를 같이 쓰는 다른 서비스의...

첫 번째 mac OS app YATA #2

September 6, 2017 App

  YATA YATA는 macOS용 자작 앱으로 Yet Another Telegra.ph App을 의미하는 약어이다. 약 2달 반 정도 개발하면서 생각나는 것들을 정리해본다. 첫 버전 기능 명세 정리 UI 디자인을 하기...

첫 번째 mac OS app YATA #1

September 2, 2017 App

  YATA YATA는 macOS용 자작 앱으로 Yet Another Telegra.ph App을 의미하는 약어이다. 약 2달 반 정도 개발하면서 생각나는 것들을 정리해본다. Telegra.ph Telegra.ph는 telegram에서 만든 웹에 글을 쉽게 게시할...

python sorted 에 대해서.

September 2, 2017 Dev

sorted 에 대해서 질문을 받았고 잘 대답을 하지 못해서 복기차원에서 이 글을 쓴다. 대부분의 내용은 Sorting HOW TO 라는 글에서 가져왔음을 밝힌다. list.sort() vs sorted() list.sort() 는 리스트...

dev-meetup.github.io – 마우스 오버 기능 추가

September 2, 2017 Code

작은 기능을 추가했다. 데스트탑 환경에서는 현재 월 캘린더 형태로 보여주고 있는데, 위의 사진과 같이 시간 제목 으로 표시하다 보니 세부내용을 확인하려면 일일이 들어가서 봐야하는 불편함이 있었다. 그래서 캘린더...

내 맘대로 위클리 뉴스 – 2017년 35주(09월 01일)

September 1, 2017 Dev

Django with Python News Django Patterns: Fat Models and cached_property django.utils.functional의 fat모델과 cached_property의 조합을 소개하는 기사 fat 모델은 Controller가 아닌 Model에 로직(Django의 view)을 구현하는 일반적인 MVC 개념입니다. 공통된...