서비스를 개발 할 수 있는 회사는 따로 있다.

June 30, 2017 Opinion

몇번의 회사들을 옮기면서 느낀점이다. 내가 다녔던 회사들의 대부분은 솔루션이나 B2B 사업을 통해서 캐쉬카우를 확보한 회사들이었다. 그런 회사들은 이상하게 공통적으로 어떤 자체 서비스를 개발하고 싶어한다. 회원 가입을 하고 뭔가...

3D 프린터 구입 및 조립기

June 23, 2017 Gadget

3D 프린터 구입기 개인적으로 늘 3D 프린터보다는 CNC를 갖고 싶었지만.. 아무래도 아파트에 거주하다 보니 소음이나 분진 문제도 있고 해서 포기하고 지냈었다.. 마음을 비우고 살고 있었지만 우연히 보게 된...

칩 수준 멀티쓰레딩 (CMT: Chip-level Multithreading)

June 20, 2017 Dev

최근 프로세서에서는 ILP(명령어 수준 병렬화, Instruction-level Parallelism) 보다 TLP(쓰레드 수준 병렬화, Thread-level parallelism) 지원의 중요성이 커지고 있다. ILP에서 TLP로 관점이 옮겨간 이유가 두가지 있는데, 하드웨어 설계 상의 한계와...

스핀락의 구현

June 20, 2017 Code

스핀락에 대해 어렵게 생각하시는 분들이 많으시더군요. 실제 구현은 간단합니다. static inline void arch_spin_lock(arch_spinlock_t *lock) { unsigned long tmp; /* * 스핀락의 ARM 아키텍쳐 구현입니다. * 1. lock->lock의 값을...

애저 펑션에서 Application Insights로 로그 남기기

June 19, 2017 Dev

이 포스트에서는 애저 펑션과 Application Insights를 연동시킬 때 적용시킬 수 있는 몇 가지 방법에 대해 간략하게 알아보기로 한다. Azure Functions (애저 펑션)는 자체적으로 TraceWriter 인스턴스를 통해 로깅 기능을...

flask – json_encoder 지정하기

June 16, 2017 Code

API 상에서 JSON 으로 응답을 내보내기 위해서는 데이터를 Json Serialize(직렬화)를 해야한다. 그런데 json 에서 표현할 수 있는 데이터는 한정이 되어 있어서 각 프로그래밍 언어에 있는 모든 타입을 지원하지는...

Cookpad Ruby style guide

June 14, 2017 Code

Ruby style guide와는 다른 부분이 보여서 읽고 신경쓰이는 부분을 정리해보았습니다. 전체는 여기에서 확인하실 수 있습니다. 긴 메소드 체인의 마지막 부분이 블럭인 경우 이런 경우에는 앞 부분과 뒷 부분을...

테스트 주도 개발 : Test-Driven Development by Example

June 13, 2017 Book

예전에도 테스트주도개발에 관한 글을 인터넷에서도 한참 찾아보고 읽었었다. 글을 읽고서 TDD를 행동으로 옮겨보면 대부분 글이 구호만 잔뜩 나열했지 무슨 일을 어떻게 해야 하는지 과정을 제대로 설명하는 경우가 거의...

Azure Functions에 Swagger 통합하기

June 12, 2017 Dev

얼마전 Azure Functions(애저 펑션)에 Swagger로 알려진 OpenAPI 지원 기능이 추가됐다. 애저 펑션을 API로 사용할 경우 굉장히 유용한 기능인데, 이 포스트에서는 어떻게 Swagger를 연동시킬 수 있는지 간단하게 알아보기로 한다....

2017년 반절 회고와 반절 계획

June 5, 2017 Life

매년 계획을 정리해서 올렸는데 올해는 반절 지나갈 동안 생각만 하고 분주하게 지냈다. 어떻게든 틈을 내서 글을 쓰면 생각도 차분해지고 일정도 정리되기 마련인데 모든 일이 다 끝나고 나서야 글을...

웹훅 기능을 테스트 하기 좋은 도구들 소개

June 2, 2017 Dev

마이크로서비스 환경에서는 API로 메시지를 주고 받게 마련이다. 이런 API는 단순히 요청(Request)을 던져서 응답(Response)을 기다리는 방식이 대부분이지만 좀 더 긴 처리시간을 필요로 하는 경우도 있을 수 있고, 하나의 워크플로우...