CORS 에러는 웹 개발에 입문하는 많은 사람들에게 좌절을 안겨주는 유명한 오류입니다. CORS 에러는 웹을 이루는 다양한 요소를 먼저 이해하고 나면, 어렵지 않게 이해할 수 있습니다. 하지만 그 요소가 무척이나 많은데요. 필요한 개념들을 다양한 실습과 함께 모두 뜯어보고 이해해봅시다. [CORS 가 어려운 이유]는 시리즈로 구성됩니다. 아래 목차를 확인해주세요. CORS 가 어려운 이유CORS 에러 마주하기 HTTP 요청과 응답의 구조CORS 에러 발생 주체와 시점 (현재 글) ✅ CORS 에러는 누가 발생시킨건지 궁금하다면 이 글을 한 번 읽어보세요.✅ CORS 에러를 발생시킨 주체가 '웹브라우저'임을 직접 확인해봅니다. CORS 에러는 어디서 발생한 에러일까요? 서버가 에러를 응답한걸까요? 정답부..
CORS 에러는 웹 개발에 입문하는 많은 사람들에게 좌절을 안겨주는 유명한 오류입니다. CORS 에러는 웹을 이루는 다양한 요소를 먼저 이해하고 나면, 어렵지 않게 이해할 수 있습니다. 하지만 그 요소가 무척이나 많은데요. 필요한 개념들을 다양한 실습과 함께 모두 뜯어보고 이해해봅시다. [CORS 가 어려운 이유]는 시리즈로 구성됩니다. 아래 목차를 확인해주세요. CORS 가 어려운 이유CORS 에러 마주하기 (현재 글)HTTP 요청과 응답의 구조 ✅ HTTP 요청메시지의 구조 또는 응답메시지의 구조를 알고싶다면 한 번 읽어보세요.✅ 실제 HTTP 요청을 보내보고, 요청메시지의 모습과 응답메시지의 모습을 직접 눈으로 확인해봅니다. 웹브라우저(client)는 서버에 요청(request)하고, 요청을 받은 ..
CORS 에러는 웹 개발에 입문하는 많은 사람들에게 좌절을 안겨주는 유명한 오류입니다. CORS 에러는 웹을 이루는 다양한 요소를 먼저 이해하고 나면, 어렵지 않게 이해할 수 있습니다. 하지만 그 요소가 무척이나 많은데요. 필요한 개념들을 다양한 실습과 함께 모두 뜯어보고 이해해봅시다. [CORS가 어려운 이유]는 시리즈로 구성됩니다. 아래 목차를 확인해주세요. CORS가 어려운 이유CORS 에러 마주하기 (현재 글) ✅ CORS 에러를 한 번도 본 적이 없다면 읽어보세요.✅ CORS 에러를 별도의 세팅 없이 브라우저만으로 재현해봅니다. CORS 에러를 처음 들어보셨다면, 일단 CORS 에러를 만나보도록 합니다. google.com 에서 개발자도구를 열어 youtube.com 을 fetch 해봅니다.CO..
세상에 가득한 거짓을 심화시키지 않기'알잘딱깔센'으로 대표되는 대한민국의 의사소통 문화는 high-context 문화, guess 문화라고도 합니다. 서로의 대화의 바탕에 공유되는 거대한 배경(high-context)이 있고, 대화 속에서 상대방의 눈치를 살펴 적당히 추측(guess)하여 의도를 파악합니다. 반면 서양 문화는 low-context, ask 문화라고 부른다고 합니다. 공유되는 배경이 적고(low-context), 상대방의 의도가 무엇인지 아직 모호하다면 부족한 부분을 질문(ask)을 통해 채웁니다. 두 사람이 대화를 합니다. 서로 '알 것 같은' 느낌이 들어, '충분히 알았다는 느낌'이 들어 대화를 그만 둡니다. 시간이 흘러 다시 마주하게 된 두 사람은 기분이 좋지가 않습니다. '제가 그렇..
2018년, '애자일', '리팩터링'이라는 용어가 이미 익숙한 용어였던 시기에 개발을 시작했습니다. 얼마 지나지 않아 '애자일', '리팩터링'의 정의와 개발자들이 말하는 뉘앙스가 차이가 있다는 것을 알게 되었고, 오히려 '애자일'과 '리팩터링'을 개발자들에게 유리한(?) 방향으로 왜곡하여 사용하는 모습들도 목격하기도 했습니다. 소프트웨어 산업의 가장 중요한 특성이자 특징 중에 하나인 '변화'에 초점을 맞춰 '애자일'과 '리팩터링'의 본질을 책 '리팩터링'의 2장의 주장을 곁들여 서술해봅니다. 변화(변경)에 주저하는 당신(개발자)에게 과거의 개발 프로세스와 현대 SW 의 특성인 변화책 [리팩터링] 에서는 완벽한 설계 이후에 코딩(구현)을 하는 방식은 20년 전의 방식이라고 말합니다. 책의 쓰여진 연도(20..
Eric Normand 의 책 "쏙쏙 들어오는 함수형 코딩(grokking simplicity)" 의 '가능한 실행순서의 개수' 공식을 유도해봅니다.개요가능한 실행순서의 개수 공식은 다음과 같습니다. $$o =\frac{(t\cdot a)!}{(a!)^t}$$ $t$ 는 타입라인의 개수이고, $a$는 액션의 개수입니다.위 공식은 아래 그림과 같이 각 타임라인이 모두 같은 수의 액션을 가지고 있을 때 적용 가능합니다. (타임라인마다 액션의 수가 다를 수 있는데, 그 부분을 책에서 설명해주지 않은 것 같아보입니다.)위와 같은 경우 $t=3$, $a=2$ 로 적용 가능하며, 가능한 실행순서의 개수 $o=90$ 입니다.가령 다음과 같은 타임라인이라면 위 공식을 적용할 수는 없습니다.책의 공식 $(t \cdot ..
All you need is '바른자세'약 3년 전 무리하게 턱걸이를 하다가 등 뒤 날개뼈 쪽을 심하게 다친 뒤로, 바른 자세에 대해 관심을 많이 가지게 됐었다. 최근에 회사 사무실 의자에 등받이 쿠션을 설치하고, 앉는 자세 또한 정상적인 자세로 앉아보려고 많이 노력도 하고 있다. 그러면서 최근 한 가지 알게 된 사실은, 타이핑을 할 때 어깨를 펼치고 있기가 어렵다는 것이었다. 이고노믹 키보드 & 스플릿 키보드이고노믹 키보드: 손목엔 OK, 라운드숄더엔 글쌔일반적인 키보드 배열의 키보드를 사용할 때 두 손이 모이게 되면서, 자연스럽게 어깨도 둥글게 말아지게 된다. (라운드숄더) 이를 해결하고자 여러가지 키보드를 알아보았었다. 기계식 키보드의 유행을 선도하는 브랜드 중 하나인 '키크론' 제품군에도 이고노믹..
인터넷 브라우저 상에 모르는 영어 단어가 나타났을 때, 어떤 확장 프로그램을 활용하는 것이 가장 효율적일까? 빠르면서도 간략하며, 심지어 현대적인 디자인(?)을 제공하는 익스텐션, 10년간의 방황을 마치고 마침내 정착하게 된 Tooltip Dicionary 를 소개한다. Tooltip Dictionary (⭐4.8) 설치하기 아래 링크로 이동하여 'Chrome 에 추가' 버튼을 클릭하여 설치한다. https://chromewebstore.google.com/detail/kibbnopaghnmdlmocibfmnljlihmlgip Tooltip Dictionary 찾고자 하는 단어에 마우스를 올리면 툴팁으로 사전을 제공합니다 chromewebstore.google.com 사용법 웹 브라우저 상의 단어에 마우..
개발자로 일을 하다 보면, 실무자가 필요한 엑셀 파일을 다운로드할 수 있게 기능을 만들어야 하는 경우가 생긴다. 하지만, 이 기능을 잘 숙지해서 개발자에게 아쉬운 부탁을 하는 경우를 줄여보도록 하자. 🚩 5YC 란? 5 Years Commit 의 약자로, 필자가 5년 동안 쌓아온 개발(IT) 관련 꿀팁들을 공유하는 연재의 이름입니다. #5yearscommit 에서 더 많고 유용한 정보들을 만나보세요! 엑셀 빠른 채우기 빠른 채우기는 영어로는 Flash Fill 이다. 이 기능을 알게 되면, 영화 주인공 플래시(영화 플래시 주인공)보다 빠르게 퇴근이 가능하다. 빠른 채우기는 특정 열이 규칙적으로 다른 열의 내용을 참조할 때 활용할 수 있는 방법이다. 별도의 수식을 사용하지 않아도 되기 때문에, 말 그대로 ..
541~550 went so far (as to do...), take ... back, provoke 544. Jennifer went so far as to call me an idiot and she wouldn't take it back. Serves you right! You provoked her, didn't you? go so far as to do... : 심지어 ... 하기까지 하다 take ... back: ~을 철회하다(= withdraw) (it) serves you right : 자업자득이다 provoke: 성나게 하다, 분개시키다, ~을 자극하다 provocative: 도발적인 put up with 545. Why do you put up with her arrogance? S..
521~530 awkward 521. After an awkward pause, Bill took her by the hand and dragged her upstairs. awkard: 조악한, 서투른(= clumsy), 어색한 sound, set off 523. After making sure she was sound asleep, he crept out of the room and set off. sound: 깊이 든, 푹 sound asleep: 깊이 잠들었을 때 (잠든 것처럼 보였을 때 아님 주의) set off: 출발하다 between you and me, come across, embrace 524. Between you and me, Lisa, I came across Nick passio..
501~510 all the more 501. His ambiguous reply made her all the more irritated. all the more: 한층, 더욱 timid, blush 502. Bob is very timid and blushes when chatting with girls. timid: 겁 많은, 소심한 (= bashful) blush: 얼굴이 붉어지다 look down on 503. Nick looks down on anyone who comes from a rural area. look down on... : 무시하다, 업신여기다 (= look down one's nose at ..., depise) miserable 504. What's the matter Bob..
481~490 in search of 482. They explored the desert in search of buried treasure. in search of : ~을 찾아서 (= in quest of ..., in pursuit of ...) anthropologist, province 487. The anthropologist says old customs still prevail in the province. anthropologist: 인류학자 province: (발음) 프라빈스, '주' steep, border 489. They proceeded along the steep path, which was the sole access to the border. steep: 경사가 급한(= ..
461~470 jury, verdict 461. The jury's guilty verdict gave rise to widespread debate. jury: 배심단 juror: 배심원 verdict: 평결 (배심단에 의한) plead 462. The man pleaded for mercy, but he was sentenced to twenty years in prison for his crome. plead (with ...) (for A): ... 에게 A 를 청원하다 (= beg for A) on duty, perceive 463. The officer on duty perceived an elderly man coming up behind him. on duty: 직무 중의, 근무 중인 (=..
441~450 441. Johnson was appointed as a goodwill ambassador to foster mutual understanding between the two nations. appoint: 임명하다 (= name, designate) goodwill: 친선, 우호 foster: ~을 키워가다 444. Ethnic monirities struggle against prejudice, poverty and oppression. prejudice: 편견 oppression: 억압, 억제(= persecution) oppress: 억압하다 (= persecute) 445. We must make every effort to do away with all discriminatio..