들어가며 인증과 인가와 관련해서 공부를 할 때 원리가 이해가 안 되어서 로그인과 CSRF와 같은 개념을 그냥 예시를 통해서 귀납적으로 학습하는 데에 그쳤다. 당연히 뭔가 답답한 느낌이 들었고 CSRF의 경우 외우고 까먹고를 반복했다. 그러다가 최근에 갑자기 이 내용이 이해가 되었다. 방금 깨달은 사람의 따끈따끈한 이해를 말아드리고 싶어서 이 블로그글을 작성...
지난주는 nextjs에 익숙해지는 데 많은 시간을 할애했다. 주어진 속도로는 시간을 최대한으로 투자해도 진도를 정해진 일정대로 따라가는 것은 무리라고 판단하였다. 그래서 어차피 챌린지 일정이 밀릴거라면, 1-2주차처럼 무리해서 시간을 배분하지 말고 챌린지 외 일정들을 챙기면서 진도를 천천히 따라가자는 계산을 했다. 사실 지난주와 지금을 비교해봤을 때 실력적...
개인적으로 이번 챌린지를 신청하는 데 많은 용기가 필요했다. 하나는 타인의 문제 해결을 클론코딩하면서 내가 문제를 해결하는 문제해결력이 떨어지는 것이 아닌가 걱정했기 때문이고, 다른 하나는 내 자신의 문제해결력에 하자가 있다는 것을 인정해야 했기 때문이다. (주의: 개인적인 맥락 하에서만 맞는 얘기입니다. 일반적으로 클론코딩 수업을 듣는다고 문제해결력에 하...
오늘은 처음으로 불안에 직면했을 때 긍정적인 피드백을 받은 날이다. 처음 노트북을 꺼내들었을 때는 불안에 떨고 있었는데, 중간에 tailwind 스타일링 할 때 따라해보면서 변주를 주는 과정에서 몰입이 되었고, 시간 가는 줄 모르고 강의 끝까지 따라치게 되었다. 강의가 끝났을 때의 성취감, 효능감이 장난이 아니었다. 물론 객관적으로는 한 것은 정말 아무것도...
불안이 또 찾아왔다. 개인적으로 데드라인에 대한 불안으로 일을 그르친 것이 한두번이 아니었다. 고질병이었던 불안으로 인해 나는 일을 미루는 습관을 가지고 있었고 간단한 일조차도 너무 크게 느껴졌다. (글을 잘 쓰려고 하지 말자. 사실은 지금도 불안하다.) 나는 분명 저번에 불안한 일들에 내 자신을 노출시키면서 어느 정도 해결되었다고 생각했는데 웬걸, 이번 ...
개인적으로 수학 공부를 하고 있었는데 이걸 기록으로 남겨도 누군가에겐 쓸모가 있겠다는 생각이 들었다. (설명을 위한 글이 아니라 뭐라도 남기는 것이라 설명이 깔끔하지 못한 점 양해 부탁드립니다.) An infinitely large napkin이라는 책을 예전에 한 번 읽어본 적이 있는데, 그 때는 실로우 정리를 그냥 확인만 하고 넘어갔다. 며칠 전에 문득...
개요 스프링 입문 강의의 예제 코드 강의를 보고 따라해보면서 모듈화를 하는 전략에 대해서 고민하고 어느 정도 정해진 루틴을 생각해보았습니다. 기본적으로 이 정해진 루틴으로 초안을 작성하고 나서 상황에 맞는 리팩토링하는 방법으로 빠르게 설계 및 구현을 시도해볼 계획입니다. 루틴 먼저 구현하고자 하는 기능을 책임으로 나눕니다. 책임을 더 작은 책임들로 분할합니...
설계 시간 문제 설계와 구현의 밸런스 중에서 설계에 치중해 있었던 것 같습니다. 문제 : 저는 설계할 때 생각과 고민이 너무 너무 많습니다. 시도한 해결 방안 오히려 설계를 열심히 파서 고민을 해결하고 제 나름대로의 설계 방법론이 생기면 빠르게 설계를 끝내고 구현으로 넘어갈 수 있지 않을까 생각했습니다. "오브젝트" 책 보기 "오브젝트"를 도서관에서 빌렸지...
들어가며 이번 장에서는 멀티 레벨 피드백 큐(MLFQ, Multi-Level Feedback Queue) 에 대해서 다룹니다. 이전 장에서 다룬 내용 중 이번 장에서 가장 중요한 내용 2가지를 꼽자면 다음과 같습니다. 반환 시간을 최적화하기 위해서는 짧은 작업을 먼저 실행시켜야 한다. 평균적으로 대기하는 작업 수를 최소화해야 해서 그렇습니다. 연관 개념: ...
red-black tree와 유사하지만 경우의 수가 더 적은 2-3 트리와 일대일 대응이 되는 self-balancing binary tree를 구현해보았다. red-black tree는 아주 아주 오래 걸릴 것 같아서 더 쉬운 버전을 구현한다고 했는데 하루 종일 걸렸다. red-black tree보다는 간단해서 순한 맛인데, 트리 회전에 대해서 생각하지 ...