칼럼
-
왜 나는 DataTable을 싫어하는가?칼럼 2025. 6. 22. 18:23
⚠️ C# 개발에서 DataTable을 지양하는 이유"빠르게 시작하려다, 나중엔 유지보수 지옥에 빠진다."1️⃣ DataTable은 실질적으로 Dictionary이다DataTable은 겉보기엔 테이블처럼 보이지만, 내부 구조는 매우 느슨합니다.Key: 문자열 기반의 컬럼명Value: object 타입즉, Dictionary와 매우 유사한 동작을 합니다.이는 유연하지만, C#의 정적 타입 시스템과는 정면으로 충돌합니다.2️⃣ 값 형식(Value Type)에선 성능 손실이 발생한다int value = (int)row["SomeColumn"]; // Unboxing이처럼 object에서 값 형식을 꺼내려면 Unboxing이 필요합니다.Boxing/Unboxing은 CPU 연산을 수반반복 루프 안에서 수천 번 ..
-
대안없는 비판칼럼 2025. 6. 21. 18:35
모든 문제는 인식할 수 있는 것이 아니다. 문제는 반드시 발생해야만 인식된다.그렇기에 문제를 인식했다는 것은, 그 자체로 책임이 수반되는 일이다. 대안 없는 비판은 문제를 인식한 것이 아니라, 문제 ‘자체’를 공격하는 것에 불과하다.나 또한 개발 과정에서 수많은 문제를 겪었고, 그에 대해 비판도 했다. 하지만 늘 대안을 전제로 했다. 이전 글에서 인상 깊었던 두 명의 개발자에 대해 언급했었다.그들의 공통점 중 하나는, 비판할 때 반드시 대안을 제시한다는 점이었다.대안이 없으면 함부로 비판하지 않는다. 이것이 진정한 문제 인식자의 태도다. 나 역시 지금까지 글을 통해 "이건 하지 말자"고 비판할 때, 그에 상응하는 실질적 대안을 함께 제시해 왔다.“하지 마라”는 말만 반복하는 것은 비판이 아니라 무책임한 ..
-
나는 그들을 기억한다 — 진짜 개발자가 무엇인지 보여준 두 사람칼럼 2025. 6. 21. 16:58
내가 지금까지 일하며 가장 기억에 남는 두 사람이 있다.한 명은 DB를 깊이 이해한 웹 개발자,또 한 명은 정체를 알 수 없지만 전체를 지휘하던 실력자였다.이 두 사람의 공통점은 단 하나.일을 만들어서 쉬지 않고 해냈다는 것이다.일을 만든다는 것의 진짜 의미‘일을 만든다’는 건 단순히 무언가를 바쁘게 만든다는 얘기가 아니다.비즈니스나 사업부의 요구를 수동적으로 구현하는 수준을 넘어서야 한다.그들은 요구를 이해하고,단순화하고,개발에 맞게 구조화한 후,다시 결과를 단순하게 정리해냈다.이건 아무나 할 수 있는 일이 아니다.그리고, 내가 최근에 함께 일한 대부분의 개발팀 리더들은 이걸 해내지 못했다.단순 분업이 아니라 통찰이 필요하다단순히 서버 개발, 클라이언트 개발을 나누는 게 능사가 아니다.전체를 통찰하고,..
-
내 인생의 최악의 코드는칼럼 2025. 6. 20. 19:20
근래 YES24가 뜨겁다. 해킹 사태로 문제가 되어 1주일 동안 시스템이 멈추고 피해액만 수십억에 달할 것이다. 내 인생에서 최악의 코드는 YES24에서 보았기 때문에 생각난 김에 글을 남긴다. YES24에서 보았던 최악의 코드는 DB 프로시저 까지 합쳐서 약 5000줄 이상이 되는 예매 코드였다. 논리는 아래와 같다. 1. 사용자가 선택한 좌석에 대해 극장사에 질의 한다.2. 유휴 좌석 있다고 회신하면 해당 좌석을 Lock한다. (5분 동안)3. 제휴사의 결제 정보를 확인한다.3-1. 제휴사 할인 정보 확인3-2. 제휴사 결제 정보 확인4. Yes24 결제 정보를 확인한다.4-1. Yes24 할인 정보 확인4-2. Yes24 쿠폰 정보 확인5. 결제 확인된 정보에 대해 최종 결제 한다.6. 유휴 좌석에..
-
-
-
UI가 사라집니다. (WITH CHATGPT)칼럼 2025. 5. 22. 21:20
Q: UI는 사라지지만 이건 B2C. 기초 입력에 대한 부분... 즉, 기업용 엔터프라이즈에서 기초 데이터 입력 UI는 사라지지 않는다. 내가 생각하는 UI와 AI 결함에 따라 사라지는 UI는 이런 기초 데이터에 바탕으로 하기 때문이다. ChatGPT의 말:정확한 통찰입니다. 아래와 같이 정리할 수 있습니다:✅ UI의 진화 방향에 대한 구조적 분석1. UI가 사라진다는 담론의 오해AI 시대에서 흔히 언급되는 "UI의 소멸"은 B2C 영역의 사용자 인터페이스 간소화 또는 대화형 인터페이스로의 전환을 지칭합니다.예: 챗봇, 음성 인터페이스, 자동 추천 UI이는 소비자 경험 중심의 인터페이스 최적화이며, 모호한 요구를 명확하게 정제해주는 AI가 핵심입니다.2. 그러나 기업용 B2B/엔터프라이즈 시스템은 다르다..
-
MCP를 해보며 느낀 철학적 통찰칼럼 2025. 3. 28. 09:59
이 문서는 CHATGPT와 대화를 요약한 요약본 입니다. “UI 없는 시대의 도래와 개인화된 AI: 인터페이스, 존재, 그리고 기업 구조의 재정의” 최근 AI 인터페이스의 방향성과 기술 철학적 함의에 대해 정리한 메모를 공유합니다.인터페이스의 본질, AI의 진화, 개인화 기술의 영향, 그리고 향후 기업 구조의 재편성 가능성에 대한 전망입니다. 1. MCP(Multimodal Command Processing)는 GUI 이후의 진화인가, 복귀인가현대 UI는 클릭, 터치, 메뉴 기반의 시각적 계층 구조입니다.그러나 MCP는 음성, 손짓, 시선, 표정, 상황 등 의도 기반 멀티모달 입력을 통해 컴퓨터와 상호작용합니다.이는 명령어 기반 패러다임으로의 회귀가 아니라, ‘보이지 않는 지시’의 실현입니다.2. 신체 ..