Categories

2024

첫 면접


거창하지 않아도 괜찮을 수 있는 설계


흑백 요리사를 보고


때로는 머리보다 손이 먼저


함께 일하기


옵시디언 이야기


넷츠고와 함께 했던 인터넷


나의 두번째 컴퓨터 이야기


컴퓨터 학원 이야기 (1996년)


2023 한해 회고


2023

Next.js 사용기


EA FIFA 23 FUT 웹 앱이야기


나의 첫 컴퓨터 (486 DX II)


Gmarket 빅 스마일 데이 쿠폰 오류


VS Code Extensions 추천


Flutter 사용기


Intellij IDEA New UI (Beta)


2022

2022 한해 회고


동기부여


축구와 소프트웨어 개발 - 02 로테이션


유닛 테스트의 범위


Edge DB


C++의 시대는 저물고 있고, Rust는 떠오르고 있다


Nullable (Feat. Kotlin, C#)


자기 객관화


게임 서버에서의 DB 사용 전략 - 02 NoSQL


주니어를 위한 성장에 필요한 노력


리더의 덕목 - 03. 과정도 중요시 여기기


C# LINQ 함수들의 작동 방식 (with skeches)


Ubuntu 22.04에 .NET 6 공식 탑재


Meta (Facebook)에서 서버 사이드 언어로 Rust를 승인


Google이 C++ 호환 언어 Carbon 출시


MongoDB 6.0 릴리즈와 7가지 핵심 변경 사항


예외처리 03 - try-catch 그리고 throw


리더의 덕목 - 02. 비전 제시


성장을 위한 환경 (Feat. Dev Toy)


마음껏 실패하기 (Feat. Dev Toy)


똑똑한 동료, 일 잘하는 동료


예외처리 02 - 로그 잘 남기기


예외처리 01 - 결과 코드 주고 받기


NoSQLBooster for MongoDB


게임 서버를 웹 서버와 같이 쓰기


트랜잭션 이야기 02 - 만능이 아닌 트랜잭션


MobaXterm 소개


HeidiSQL 소개


.NET 용어 정리


나의 Notion 활용법


2021

2021 한해 회고


리더의 덕목 - 01. 빠른 의사 결정


Fork - Git Client 추천


2020

2020년 회고


C# .NET CORE 기반 Lol-Crawler


C# .NET CORE 기반 Web-Crawler


온라인 코드 리뷰에 대해서


게임 개발 에서의 git vs svn


게임 서버에서의 DB 사용 전략 - 1. DB를 사용하는 방식


게임과 웹에서 다른 프로토콜 하위 호환


C# VS Java


Docker로 소켓 서버를 운용하기 어려운 이유


Notion (노션) 추천


트랜잭션 이야기 - 개발자 마다 다른 DB를 대하는 자세


Ocelot - ASP.NET CORE API Gateway


Docker 이야기


Kubernetis 이야기


2019년 회고


2019

개발자의 성장


웹과 게임에서 다르게 사용되는 캐시


개발자로서의 똑똑하다는 의미


.NET CORE 3.0 릴리즈


조직 문화가 중요한 이유


게임 개발로 복귀 하는 이야기


.NET CORE


C++ 게임 서버 개발자의 웹 프론트엔드 적응기


게임 서버 개발과 웹 서버 개발의 차이


(내맘대로 선정한) 프로그래머를 위한 필독서 두번째


C++ 게임 개발자의 웹 & 플랫폼 개발 적응기


특수화와 범용성


2018

2018년 회고


MySQL LIMIT + Offset 쿼리 성능 문제


Ubuntu vs CentOS


JavaScript 적응기 01 - Vue.js


Vue.js 참고 자료


JWT 사용기


MongoDB 장단점, 활용시 고민할 사항들


MongoDB 서버 구축 및 아키텍쳐


Java 적응기 06 - Netflix Zuul


MSA 그리고 API Gateway


안드로이드 앱 추천


크롬 확장 프로그램 추천


윈도우 10 앱 추천


브루스 테이트의 세븐 랭귀지


내가 다양한 언어를 익힌 이유


L4 스위치 도입시 생겼던 이야기


샤딩과 레플리카


100만건이상의 데이터를 다룰때 생기는 RDB성능 이야기


프로그래밍에서의 기본기란?


(내맘대로 선정한) 프로그래머를 위한 필독서 16선


LOL 게임 기록 (+임무) 장애에 대한 이야기


MongoDB 팁


리액티브 프로그래밍


비동기 프로그래밍 관점에서의 Akka


실수를 두려워하지 않기


도구의 중요성


경험과 인사이트


오픈 소스 기여하기


내가 그거 해봐서 아는데


Dev Toy 시작하기


삶을 지속적으로 개선하기


합리적 반박


정보 수집


코딩 호러의 이펙티브 프로그래밍


임백준의 대살개문


2017

폴리글랏 프로그래밍


Python 사용기 - Airflow


Java 적응기 05 - JPA


Java 적응기 04 - Spring


지적 받아들이기


기록 집착


사소한 차이


Head First Software Development


일을 했으면 성과를 내라


능률적인 프로그래머


리딩 - 알렉스 퍼거슨


나의 업무 관리법


프로그래머의 길 멘토에게 묻다.


축구와 소프트웨어 개발 - 01 역할과 협업


드리밍 인 코드 (Dreaming in code)


Java 적응기 03 - Akka


Java 적응기 02 - Netty


Java 적응기 01


변화에 뒤쳐지지 않기


나의 업무 기록과 관리


경험에 의한 편견에서 벗어나기


핵심 C++ 표준 라이브러리 - 우리 C++이 달라졌어요!


Rust 이야기


Ruby vs Python


스크립트 언어 이야기


ElasticSearch


ASP.NET CORE 사용법


Django to ASP.NET CORE


Django에서 ASP.NET CORE로 전환한 이유


동적 언어와 정적 언어


데이터 통계 이야기


Github Pages로 이전 후기 & 주요 글 이전 완료


블로그 이전.


2016

python 입문기


CentOS 7 Redmine 세팅


웹서버 장단점 비교


Django Celery 사용법 [with RabbitMQ]


Django 사용법


TCP 서버와 웹서버 장단점 비교


FlatBuffers Guide


LightSDK 공개


서버 개발 및 운영에 필요한 작업


Thread design 02 - 잠금을 고민하지 않는 프로그래밍


Rails 5.0 Release


동기화에 대한 간략 정리


프로그래밍 언어 이야기


VSCode with Rails


CentOS 7 Rails 세팅


PostgresSQL 요약 정리


2015

업무 일지 쓰는 법


윈도우 서버에서 리눅스 서버로의 감상


CentOS 7 세팅기


유니티3D 개발에 대한 단상


버그 노트


상향식 코드 분석과 하향식 코드 분석


코딩 컨벤션


로직의 네트워크 동기화 처리


레거시 코드 활용 전략


2014

Thread design 01 - 우리는 이미 알고 있었다


웹 로그 서버 구축기 with rails V2


유닛 테스트의 진짜 효과와 역할


non-blocking multithread programming


Ruby on rails 소개


TDD에게서 자유로워 지자


Welcome to Ruby!


Ruby on rails 세팅 for Windows


코드 작성과 디버깅을 쉽게하는 예외 처리


Reactor 패턴과 Proactor 패턴


2013

C++ 구조체 이니셜라이저 문제


좋은 코딩 나쁜 코딩 - 읽기 쉬운 코드가 좋은 코드다


Active Record Query Interface


명령행 프로그램 이야기


Ruby 변수 관련 정리


Ruby가 모듈을 찾는 장소.


조엘이 엄선한 소프트웨어 블로그 베스트 29선


NDC2013 요약 정리


데이터베이스 마이그레이션 with rails


웹 로그 서버 구축기 with rails


C++ 멀티 스레드 프로그래밍을 몇년간 해온 후 느낀 고찰


C++ 11 주요 Feature 정리


루비 사용기


디아블로2 렐름 다운 정책 정리


인공지능에 대한 간략 정리


서버 최적화 핵심 요약


2012

KGC2012 - 뛰어난 디버거가 되는 방법


단점 고치기


사고뭉치를 위한 디버깅 방법 03


사고뭉치를 위한 디버깅 방법 02


사고뭉치를 위한 디버깅 방법 01


2011

애플 신드롬과 MS에 대한 사설


윈도우 환경에서의 C++ 프로그램 예외처리


2010

프로그래밍 개발시 좋은 습관


거짓 공유 (false sharing)


데이터베이스 이용시 주의 사항


스티브 잡스의 수퍼 업무력 - 애플의 그리고 잡스의 성공 비결


누워서 읽는 퍼즐북 - 퍼즐의 쾌감


멀티스레드 정책


C++ 오류 발생시 원인 정리


멀티스레드 프로그래밍시 유의점


2009

C++ 코딩의 정석 - C++ 프로그래머 필독서의 목록에 올라야 할 책


UDP Hole Punching


Reliable UDP


포인터와 참조자 이야기


DB 인덱스 정리


인덱스가 있지만 인덱스를 안 타는 경우


MS-SQL 백업


MS-SQL 데이터 저장 방식


MS-SQL 조인 내부 처리 방식 정리


MS-SQL 복원


잡스처럼 일한다는 것 - 뛰어난 리더가 뛰어난 기업, 뛰어난 제품을 만든다.


문제해결 노트


게임 프로그래머를 위한 수학과 물리


2008

초심으로 돌아가기


프로그래밍은 상상이다 - 자극스러운 내용이지만, 자극적이지 않게 다가오다.


좋은 프로그래머란 무엇일까?


단점 고치기


C++ 코드 작성시 주의 사항


루비를 시작했습니다.


OS 구조와 원리 - 단연 최고의 OS 개발 서적


메모의 기술 - 더 많이 기억하기 위해 기록하라. 그리고 잊어라.


Software Development MEME


우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해 - 왜 같은 실수를 반복하는가?


사랑하지 않으면 떠나라 - 좀 더 나은 내가 되기 위한 가이드 라인.


Effective TCP/IP Programming


서버 테스트 방법 들


둠. 컴퓨터 게임의 성공신화. 존 카맥, 존 로메로 - 천재 프로그래머 이야기


아키텍트 이야기 - 프로젝트의 성공을 위한 지휘자, 아키텍트가 되자.


익스트림 프로그래밍 - 소프트웨어 개발도 결국 사람에 달려있다.


나의 게임 업계 투신기


코드 읽기


린 소프트웨어 개발 - 개발 효율 향상을 위한 애자일 지침서


대체 뭐가 문제야?


클라이언트 요청 처리에 대한 주의 사항


서버 프로그래밍시 주의 사항


패치의 악몽을 피하기 위해


C++ 오류의 원인들


테스트 주도 개발


함수의 리턴 값의 주소를 사용하려 할 때 생기는 문제


코딩시 유념할 점 들


2007

레이몬드 첸의 윈도우 개발 282 스토리 - 윈도우의 현재를 말해주는 비하인드 스토리


Art of Unix Programming - 프로그래머가 가져야 할 마음 가짐을 알려주는 좋은 책


패턴 그리고 객체지향적 코딩의 법칙 - 그들의 경험을 쉽게 이해하는 한가지 방법


네트워크를 훔쳐라 - 그들의 심리를 파악하자


실용주의 프로그래머 - 실용주의 마인드


생각하는 프로그래밍 - 효율에 관한 재밌는 이야기들


리팩토링 - 실용적이고, 현실적이며 실천적이었다.


프로그램은 왜 실패하는가? - 체계적인 디버깅 지침서


뉴욕의 프로그래머 - 실수를 두려워하지 말지어다


2006

해커와 화가


2005

해킹 파괴의 광학 - 프로그래밍 기본 소양 서적에 가까운 책


행복한 프로그래밍 - 당신은 프로그래밍으로 인해 행복한가요?


누워서 읽는 알고리즘


소프트웨어 산책 - 역시나 흥미로웠던 그의 산책


API로 배우는 윈도우즈 구조와 원리


조엘 온 소프트웨어 - 조엘은 알고 있었다


2002

C프로그래머가 알아야 할 것들 - 08 프로세스와 스레드


C프로그래머가 알아야 할 것들 - 07 어셈블리


C프로그래머가 알아야 할 것들 - 06 자료 구조


C프로그래머가 알아야 할 것들 - 05 메모리와 포인터


C프로그래머가 알아야 할 것들 - 04 프로그램 언어


C프로그래머가 알아야 할 것들 - 03 운영 체제와 컴퓨터 원리


C프로그래머가 알아야 할 것들 - 02 비트의 법칙


C프로그래머가 알아야 할 것들 - 01 진법