<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>서환수</title>
    <link>https://brunch.co.kr/@@Czw</link>
    <description>서환수의 브런치입니다.</description>
    <language>ko</language>
    <pubDate>Tue, 28 Apr 2026 14:50:24 GMT</pubDate>
    <generator>Kakao Brunch</generator>
    <image>
      <title>서환수의 브런치입니다.</title>
      <url>//img1.kakaocdn.net/thumb/C100x100.fjpg/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fguest%2Fimage%2FLc00CUmmo_5OlqCBIymBwudnwBU</url>
      <link>https://brunch.co.kr/@@Czw</link>
      <width>100</width>
      <height>100</height>
    </image>
    <item>
      <title>GitLab CI에서 환경변수 주입</title>
      <link>https://brunch.co.kr/@@Czw/32</link>
      <description>코드 저장소에 올릴 수 없는 정보는 보통 환경변수를 이용하여 지정합니다. 예를 들어 Vue.js로 개발하는 경우에 (vite를 이용하여 빌드한다고 할 때) 사용할 백엔드 서버 주소를 환경변수로 저장하고 싶으면 프로젝트 루트에 .env 파일을 만들고, 그 파일에서 VITE_ 로 시작하는 환경변수를 정의하면 됩니다. VITE_SERVER_ADDRESS=http</description>
      <pubDate>Sun, 28 Jan 2024 00:09:29 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/32</guid>
    </item>
    <item>
      <title>MySQL varchar 길이 기준</title>
      <link>https://brunch.co.kr/@@Czw/31</link>
      <description>Oracle용으로 만들어진 테이블 스키마를 받아서 MySQL용 테이블 스키마를 만들어야 한다고 해 봅시다. 이 때 VARCHAR2는 MySQL에서 varchar로 변환해야 하는데, VARCHAR2(100 BYTE) 이렇게 적어놓았으면 MySQL varchar에서는 길이를 어떻게 지정해야 할까요?  MySQL의 varchar에서는 길이를 문자 개수로 지정합니</description>
      <pubDate>Tue, 23 Jan 2024 10:17:18 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/31</guid>
    </item>
    <item>
      <title>GitLab 저장소 미러링</title>
      <link>https://brunch.co.kr/@@Czw/30</link>
      <description>작업을 하다 보면 모종의 이유로 깃랩 저장소에 있는 코드를 다른 깃 저장소로 복제해야 할 수 있습니다. 예를 들어 팀에서 CI/CD 플랫폼으로 GitLab을 연동해서 쓰고 있는데 전사 기준으로 코드를 공유할 때는&amp;nbsp;Github를 쓰게 돼 있다든가 하는 경우를 생각할 수 있습니다. 이 때 쓸 수 있는 방법이 미러링(mirroring)입니다. GitHub으로 옮</description>
      <pubDate>Mon, 22 Jan 2024 10:22:17 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/30</guid>
    </item>
    <item>
      <title>MySQL 행 INSERT/UPDATE 시각 기록</title>
      <link>https://brunch.co.kr/@@Czw/29</link>
      <description>MySQL에서 행이 새로 추가되거나 갱신되었을 때의 시각을 자동으로 기록하고 싶은 경우가 있을 겁니다. 이런 경우에는 TIMESTAMP나 DATETIME을 이용하면 됩니다.  예를 들어 행 추가 시각을 지정하기 위한 created_at이라는 열과 행 갱신 시각을 지정하기 위한 updated_at이라는 열을 추가하고 싶다면 다음과 같이 하면 됩니다. CREA</description>
      <pubDate>Sun, 21 Jan 2024 08:57:33 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/29</guid>
    </item>
    <item>
      <title>FastAPI에서 엔드포인트 숨기기</title>
      <link>https://brunch.co.kr/@@Czw/28</link>
      <description>FastAPI에서는 매우 손쉽게 Swagger UI를 생성할 수 있습니다. 그런데 자동으로 생성되는 Swagger UI에 노출시키고 싶지 않은 엔드포인트가 있을 수 있습니다.  이런 경우에는 include_in_schema라는 매개변수를 쓰면 됩니다.  from fastapi import FastAPIapp = FastAPI()@app.get(&amp;quot;/visib</description>
      <pubDate>Fri, 19 Jan 2024 15:02:44 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/28</guid>
    </item>
    <item>
      <title>v-data-table 페이지 유지 방법</title>
      <link>https://brunch.co.kr/@@Czw/27</link>
      <description>Vue.js로 개발을 하는데 디자인 역량이 부족하다 싶으면 적당한 UI 라이브러리를 잘 써야 그나마 볼 만한 인터페이스를 만들 수 있습니다. 그 때 쓸 수 있는 툴 가운데 하나가 Vuetify입니다.  Vuetify에서 표를 표현하고 싶을 때 많이 사용하는 게 v-data-table 컴포넌트인데요, 이 컴포넌트를 쓰다 보면 컴포넌트의 특정 행을 클릭해서 다</description>
      <pubDate>Mon, 15 Jan 2024 14:01:10 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/27</guid>
    </item>
    <item>
      <title>코딩 문제 입출력 성능 개선 팁 (C++) - sync_with_stdio, cin.tie, '\n'</title>
      <link>https://brunch.co.kr/@@Czw/26</link>
      <description>코딩 문제를 풀다 보면 알고리즘도 빠른 거 잘 썼고 특별히 느릴 이유가 없어 보이는데 채점 결과를 보면 누군가는 막 10 ms 미만인데 내 코드는 수십 ms가 나오는데 이유를 모르겠다며 고통을 호소하는 분들이 가끔 있습니다. 혹시 C++를 쓰신다면 가장 먼저 의심해야 하는 건 스트림 관련된 문제입니다. 프로그램과 환경(운영체제) 사이에는 입출력 통신을 위한</description>
      <pubDate>Sat, 13 Jan 2024 01:38:14 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/26</guid>
    </item>
    <item>
      <title>MySQL 데이터 변경 내역 추적 방법</title>
      <link>https://brunch.co.kr/@@Czw/25</link>
      <description>직접 관리하는 서비스를 통해서 데이터에 액세스하는 경우라면 서비스 로그를 통해서 데이터 변경 내역을 확인할 수 있지만 외부로부터 DB에 직접 액세스해서 작업을 처리할 수 있는 경우라면 그게 불가능합니다. 이런 경우에도 데이터 변동 내역을 파악하고 있어야 하는 경우라면 어떤 방법을 쓸 수 있을지 찾아봤습니다. (MySQL 기준)  바이너리 로그(Binary</description>
      <pubDate>Fri, 12 Jan 2024 10:19:17 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/25</guid>
    </item>
    <item>
      <title>Alembic 활용 - Python에서 SQLAlchemy로 개발하기</title>
      <link>https://brunch.co.kr/@@Czw/24</link>
      <description>Python에서 DB를 사용할 때는 SQLAlchemy + Pydantic을 많이들 사용합니다. FastAPI + SQLAlchemy + Pydantic으로 REST API를 만드는 작업을 하는데, DB 구조를 변경하는 일이 종종 있다면 Alembic을 쓰는 게 좋습니다. Alembic은 SQLAlchemy와 함께 사용하는 용도로 만들어진 데이터베이스 이전</description>
      <pubDate>Thu, 11 Jan 2024 12:15:30 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/24</guid>
    </item>
    <item>
      <title>프론트엔드 공부하기 3</title>
      <link>https://brunch.co.kr/@@Czw/23</link>
      <description>CH03-04 - 끝  점점 복잡도를 올리면서 완성도를 올리는 과정.  일부 템플릿 기능을 생 javascript로 구현하는 과정이 여전히 흥미롭다.  템플릿 라이브러리 관련하여 handlebars라는 템플릿 라이브러리를 소개하기도 한다.  예쁘게 만들기 위해 tailwindcss, FontAwesome의 아이콘 등을 활용한다. CDNJS에 들어가서 fon</description>
      <pubDate>Sat, 06 Jan 2024 12:02:25 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/23</guid>
    </item>
    <item>
      <title>프론트엔드 공부하기 2</title>
      <link>https://brunch.co.kr/@@Czw/22</link>
      <description>김민태의 프론트엔드 아카데미 1강, CH03 CH03_02 12줄의 코드로 시작하기 브라우저에서 제공되는 개발자 기능 중 검사 메뉴에서 콘솔을 통해&amp;nbsp;DOM을 액세스해서 HTML을 바꾸는 것부터 시작한다. document.getElementById('root').innerHTML = '&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;하나&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;둘&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;셋&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;'</description>
      <pubDate>Sat, 06 Jan 2024 11:31:26 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/22</guid>
    </item>
    <item>
      <title>프론트엔드 공부하기 2</title>
      <link>https://brunch.co.kr/@@Czw/21</link>
      <description>김민태의 프론트엔드 아카데미 1강, CH03 CH03_02 12줄의 코드로 시작하기 브라우저에서 제공되는 개발자 기능 중 검사 메뉴에서 콘솔을 통해&amp;nbsp;DOM을 액세스해서 HTML을 바꾸는 것부터 시작한다. document.getElementById('root').innerHTML = '&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;하나&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;둘&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;셋&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;'</description>
      <pubDate>Wed, 03 Jan 2024 13:49:59 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/21</guid>
    </item>
    <item>
      <title>프론트엔드 공부하기 - 2024년 1월 1일</title>
      <link>https://brunch.co.kr/@@Czw/20</link>
      <description>공부하면서 까먹지 않게 적어둘까 한다.  너무 체계 없이 그 때 그 때 필요한 것만 찾아서 코드만 베껴 쓰는 식으로 했더니 영 기초가 부실한 것 같아서 제대로 공부를 해 볼까 한다. 패스트캠퍼스에서 김민태의 프론트엔드 아카데미를 듣기 시작했다.  추천 도서 자바스크립트 완벽 가이드 한국어판은 번역이 영 안 좋다는 후기가 있어서 일단 영문판으로 보기 시작했다</description>
      <pubDate>Mon, 01 Jan 2024 06:57:57 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/20</guid>
    </item>
    <item>
      <title>자전거 헬멧 의무화 - 헬멧은 꼭 써야 한다고 생각하지만 법으로 강요하는 건 사양합니다.</title>
      <link>https://brunch.co.kr/@@Czw/18</link>
      <description>요약 나는 자전거 헬멧을 의무화하는 도로교통법 개정안에 반대한다. 그 이유는 다음과 같다. 헬멧을 착용하면 사고시 사망률을 현저하게 줄일 수 있다는 것은 의심의 여지가 없는 사실이다. 하지만 우리나라에서 자전거 사고 사망자가 많은 더 중요한 요인은&amp;nbsp;환경과 제도 등 도로 제반 여건이 자전거 타기에 좋지 않다는 점이다. 자전거를 타는 사람이 많아질수록 자전거 &lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2F8gHe3CVuJ_oRxwTyo_YTEc_5gUM.jpg" width="500" /&gt;</description>
      <pubDate>Tue, 02 Oct 2018 13:37:25 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/18</guid>
    </item>
    <item>
      <title>데상트 듀애슬론 레이스 사전 거치</title>
      <link>https://brunch.co.kr/@@Czw/17</link>
      <description>며칠 전, 택배가 왔다. 6월 17일에 있을 데상트 듀애슬론 레이스 준비물이 택배로 배달 온 것. 택배 상자 안에는 운동화(흰색 데상트 블레이즈 라이트)와 대회 공식 운동복 윗도리, 반장갑, 종아리 압박 토시, 배번호 세 개(윗도리용, 자전거용, 헬멧용)와 대회 안내문, 운동화 교환권, 칩 반송용 봉투 등이 들어 있었다. 운동화는 발에 잘 맞았다. 윗도리는&lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2FfZFqKficdv_xaRhv9oVTYevfvTA.jpg" width="500" /&gt;</description>
      <pubDate>Fri, 22 Jun 2018 12:40:31 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/17</guid>
    </item>
    <item>
      <title>화천DMZ랠리 후기 - 인생 라이딩!</title>
      <link>https://brunch.co.kr/@@Czw/15</link>
      <description>지난 2월, 브런치에도 글을 하나 올렸던 것처럼 화천DMZ랠리 대회에 참가 신청을 했다. 신청을 하기 전에&amp;nbsp;오르막에 약한 내 비루한 자전거 실력으로 완주할 수 있을까 고민도 많았다. 하지만 올해가 이미 11회째로 나름 역사와 전통을 자랑하는 대회이기도 하고, 과거에 화천DMZ 대회에 참가해본 사람들의 후기들을 봐도 초보자도 즐겁게 타고 올 수 있는 대회라는&lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2FQZLi-Ta4BqWTezv5CkTJkqAVmys.jpg" width="500" /&gt;</description>
      <pubDate>Wed, 23 May 2018 11:40:35 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/15</guid>
    </item>
    <item>
      <title>자전거 업힐과 파워 - 자전거의 물리학</title>
      <link>https://brunch.co.kr/@@Czw/13</link>
      <description>자전거를 타다 보면 오르막길을 오를 일이 자주 생긴다. 평지에서도 속도 차이가 많이 나지만, 평지에서 비슷한 속도로 탈 수 있는 사람들 사이에서도 오르막 속도 차이가 크게 나는 걸 흔히 본다. 평지에서 더 잘 타는 사람이 오르막에서는 한참 뒤처지는 일도 적지 않다. 거리로는 작은 부분에 불과한 오르막 기록이 전체 기록에서 큰 비중을 차지하기 때문에, 동호인&lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2Fx3pGBNOI-2Nj_2lg0rRtASQNyQw.png" width="500" /&gt;</description>
      <pubDate>Thu, 26 Apr 2018 12:03:51 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/13</guid>
    </item>
    <item>
      <title>천안(서) 200 km 브레베 - 2018년 4월 21일, 천안 에이플러스 출발/도착</title>
      <link>https://brunch.co.kr/@@Czw/12</link>
      <description>작년 5월에 참가했던 천안(남) 200 km 브레베에 이어 두 번째로 참가한 브레베였다. 원래 혼자 타려고 신청해 뒀는데 선배님 한 분께서 같이 타자고 신청을 하셔서 같이 탔다. 여러 모로 파란만장한 경험을 했던 브레베였다. 아마도 선배님 아니었으면 중간에 DNF 했을 거다.   지난번에는 천안으로 차를 몰고 갔는데, 끝나고 운전해서 올라오는 것도 은근히 &lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0.fjpg/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2Fde1LLLWyI2_Ux19bibRnGE6R2ss.jpeg" width="500" /&gt;</description>
      <pubDate>Wed, 25 Apr 2018 07:46:26 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/12</guid>
    </item>
    <item>
      <title>집에서 햄버거 만들기 - 안생햄버거를 찾아서</title>
      <link>https://brunch.co.kr/@@Czw/11</link>
      <description>미국에서 호기심에 햄버거를 직접 만들었다가 인생 햄버거를 경험해 본 후로, 한국에서는 적당한 고기를 사기 어렵다는 생각에 도전도 해 보지 않은 햄버거 만들기. 찾아보니 미국산 냉장육을 갈아서 파는 데가 좀 있어서 직접 도전해 보기로 했다. 안타깝게도 살코기/지방 비율을 적어서 파는 데는 찾지 못해서 그냥 블랙 앵거스 냉장 목심(chuck)을 갈아서 파는 걸&lt;img src= "https://img1.kakaocdn.net/thumb/R1280x0/?fname=http%3A%2F%2Ft1.daumcdn.net%2Fbrunch%2Fservice%2Fuser%2FCzw%2Fimage%2FlwTMbyNDdTUaxR6sxJSq4eipaWk.jpg" width="500" /&gt;</description>
      <pubDate>Wed, 18 Apr 2018 07:43:39 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/11</guid>
    </item>
    <item>
      <title>왜? - &amp;ldquo;중력은 왜 있을까?&amp;rdquo; 묻는 이를 위한 답</title>
      <link>https://brunch.co.kr/@@Czw/10</link>
      <description>왜는 육하원칙의 다른 요소들과 비교하면 조금 불분명한 면이 있다. 예를 들어 &amp;ldquo;너 이 공을 왜 바닥에 떨어뜨렸니?&amp;rdquo;라고 묻는다면 그 때의 왜는 의도, 정황, 사유, 배경 등을 묻는 것이다. 하지만 &amp;rdquo;하늘이 왜 파랗니?&amp;rdquo;라는 질문에서는, 누가 그림에서 하늘을 파란 색으로 칠한 이유를 묻는다든가 하는 게 아닌 이상, 어떤 원리로 하늘이 파란지를 묻는 의도로 왜</description>
      <pubDate>Fri, 13 Apr 2018 07:53:00 GMT</pubDate>
      <author>서환수</author>
      <guid>https://brunch.co.kr/@@Czw/10</guid>
    </item>
  </channel>
</rss>
