본문 바로가기

분류 전체보기

(104)
베트남 하노이 체류 썰 - 2 쭝화 빈컴센터 옆 호수공원(사진) 걸어서 3분? 정도 거리에 호수공원같은게 있습니다. 가는길에 그 유명한 목욕탕의자에 앉아서 마시는 커피 노점들이 즐비했구요 나름 지역 주민들의 커뮤니티 노릇을 하는것 같았습니다. 화장실도 나름 깨끗하게 양변기로 있었고 아주머니들 에어로빅하는 모습도 볼수 있습니다. 하노이 쭝화쪽에 계신분들은 아침운동 삼아서 걸어볼만 합니다 미친 더위 11시정도부터 해가 본격적으로 뜨는 시간에는 선크림을 무조건 바르고 가셔야 합니다 사실 한국도 더운데 여기는 햇볕이 따갑습니다 따가워요... 문 열고 나가면 '헉' 합니다 그래서 보통 관광객들은 한낮과 오후에는 마사지밭고 쉽니다. 베트남 스타필드(?) 빈컴센터 베트남에 빈컴이라는 쇼핑몰 브랜드가 있습니다. 우리나라로 따지면 음... 스타필드 ..
베트남 하노이 체류 썰 - 1 (사진은 나중에 추가하겠습니다) 하노이에 간 이유 : 리프레시를 해야할 필요성이 절실했습니다. 친척분이 하노이에서 모 회사 법인장을 하고 계십니다. 그래서 숙박이나 그런것들과 관련하여 상당한 편의를 봐주실수 있기 때문에... 다만, 한여름의 동남아는 지옥같은 더위이기 때문에 조금 고민했습니다만 바로 질렀습니다. (사실 대한민국도 이에 뒤지지 않음) 항공편과 체류일자 베트남항공 왕복으로 끊었으며, 7월 14일 오후 출국, 7월 24일 비행기타고 7월 25일 입국입니다. 예상 비행시간은 4시간 30분이었는데 4시간만에 도착했습니다 항공권을 끊으려니까, 7월 중순 이후부터 성수기인데, 성수기 초기다 보니 갑자기 항공권 가격이 검색된 가격보다 높아져있거나, 매진이되버리는 사태가 발생했습니다 여행을 정했으면 우선 항공권부터 확보해야합니다 그리고..
Javascript - 자바스크립트는 어떻게 실행되는가? (AST 등) 자바스크립트 초보자와 숙련자를 가르는 질문 하나. (라고 한다) Q : 자바스크립트는 인터프리터 언어입니까? 초보자 A : 네 자바스크립트는 대표적인 인터프리터 언어로서 한줄씩 위에서부터 컴퓨터가 읽어나가는 방식으로 되어있고, 컴파일러 언어는 자바 예로 들수 있습니다 두 방식의 차이점은 어쩌고저쩌고.... (부끄럽게도, 이 글 쓰기 전 본인의 의견이다) 숙련자 B : 어... 일반적으로 그렇게 분류가 되기는합니다만, 상황에 따라 그렇지 않을수 있습니다. 인터프리터와 컴파일러가 혼합되었다고 보는게 더 정확한 의견입니다 --------------- 자바스크립트를 접한지 만 1년이 거의 다 되어가지만 정작 어떻게 내가 작성한 코드가 실행되는지는 생각해본적이 없었다. 물론, 자바스크립트 개발자가 로우레벨단을 뜯..
원티드 백엔드 프리온보딩 - 시스템 디자인 설계 - 2 Replication 서버 운용 Replica는 많이 들어봤을 단어다. 쉽게 말하면 '모조품'인데 데이터베이스도 마스터 서버를 Replica하여 동일한 서버를 기능별로 분산하여 부하를 줄여주는 방법을 사용한다. (내가 이전에 Git관련해서 Master가 Main으로 바뀐것 관련한 포스팅을 했는데 아직 여기선 Master와 Slave(레플리카)란 표현을 쓰더라;;) 이렇게 서버를 운용하는데는 크게 두 가지 목적이 있다 1. 데이터 안정성 물론 백업과 복구가 있지만, 장애 시간과 복구 시점 사이의 데이터들은 복구를 보장할 수 없다 그러나 이같은 레플리카 서버를 운용하면, 이같은 장애 상황시 손실이 최소화되는 장점이 있다 (사실상 Master서버에서 실시하는 작업을 레플리카에도 거의 그대로 실시하기 때문에) ..
원티드 백엔드 프리온보딩 - 시스템 디자인 설계 - 1 '설계가 곧 엔지니어의 실력이다' 이건 강사님이 말씀하신건 아닌데, 유튜브같은거 찾아보다가 20년차 프로그래머가 했던 말 같다. 지금 스타트업 대표 하시는 '테헤란밸리' 유튜브 채널의 주인공은 아마존 리크루터가 연락와서 채용 프로세스를 진행했었는데, 그 중 면접질문이 이거였다고 한다 'SNS 서비스를 설계해 봐라' 물론 나도 서비스 아키텍처를 그려본 적은 있다. ERD 설계부터 발표용 서비스 아키텍처까지 다 해보긴 했지만, 그건 그냥 학습용이고, 현업에서는 어떻게 해나가는지 궁금하기도 했다. 마침 5월에 AWS 프리온보딩을 한 적이 있었는데 7월에도 백엔드 수업이 열렸고, 마침 하고싶은 백엔드 설계쪽이어서 주저없이 신청했다. 오늘 수업 내용은 사실상 코스 소개와 강의 오리엔테이션, 주의사항 그리고 수강생..
Cache dependency 로 워크플로우 효율적으로 실행하기 굳이 또 해야돼? 로부터 시작했다. 지금까지 깃헙 액션을 하면서 Test와 Build 양쪽 모두에 npm install 작업이 있었고, 해당 작업은 10초가량 걸렸다. 그런데 이 깃허브 액션이 무료 플랜이 있긴 하지만 깃헙이 바보가 아닌이상 프리 플랜이 넘어가면 당연히 돈을 내야된다 특히 기업에서 쓸수록 더 그렇다. 그리고 npm install 같은거 해봐서 알겠지만 기본적으로 라이브러리 하나 설치하는데 수백개의 요소들이 다운받아진다. 어쨋건 이 dependency 관련 작업이 시간도 잡아먹고 리소스도 잡아먹는데 이걸 굳이 두번 세번씩 해야되나? 라고 생각하던 참에 캐싱 기능을 알게 되었다. 거의 모든 깃헙 액션의 작업은 Marketplace에서 가져온 기능이라고 보면 되고, with에 path와 key..
아티팩트(Artifact)와 결과값(Output) 사용해보기 아티팩트의 사전적 정의는 인공 피조물이란 뜻인데... 저 사진의 아티팩트는 던전앤파이터라는 게임에서 나온 장면이다. 본인의 크리처라는 애들을 함께 데리고 다니는데 그냥 쉽게 말해서 애완견 같은 애들이다. 일종의 버프를 주면서 캐릭터를 강화시키는 애들인데... 그런 크리처(Creature 크리처는 자연의 산물이다) 에 아티팩트(인공 피조물)을 주어 인공적으로 강화한다(?) 뭐 이런 뜻인것 같다. 이걸 깃헙 액션에서는 깃헙 액션의 작업을 하면서 만들어진 인공의 결과물 정도로 생각하면 된다. 이걸 업로드 할수도 있고, 다운로드 할 수도 있다. 간단하게 알아보자 문법도 쉽다 upload-artifact를 사용해서 dist에 있는 파일들을 dist-files라는 이름으로 업로드 하는것이다. 그리고 깃헙액션을 실행..
Database - Relationship - Terminologies and types Cardinality Ratio Constraint 관계가 있는 두 엔티티에 대해서 한 개체가 다른 개체와 어떤 관계에 있는가 나타내는 제약조건이다 그런데 주의할점은 이걸 ER 다이어그램으로 만들때 조금 헷갈리는게 있다. 이 예시에서 부모는 자녀가 둘 셋일수 있지만 자식은 부모가 하나 뿐이다. 1:M 관계인데, 1에 해당하는 parent 쪽에 1을 명시해주고, M에 해당하는 선 위에 M을 표시하면 된다 (이거 막상 해보면 은근히 헷갈린다!) Participation Constraint(참여 제약조건) 관계가 있는 두 엔티티에 대해 한 개체가 다른 개체에 얼마나 의존하는가 하는 개념이다. 예를들어, 학생이 대학에서 과목을 수강한다면, 학생은 A과목을 수강해도 되고, 안해도 된다. (물론 이러다간 유급당하지..