공부하고 기록하는, 경제학과 출신 개발자의 노트

분류 전체보기 499

시간과 장의사

“상실, 슬픔, 무력감”이라는 단어 자체를 풀어낸 듯한 책. 지금의 20대가 삶에서 느끼는 감정이 무엇인지 이해하고 싶다면, ‘90년대생이 온다'나 ‘관종의 시대'보다 훨씬 유용하다고 생각한다. 냉혹한 현실에서 삶과 죽음의 경계를 넘나들면서도, 그저 버텨내고 살아내야만 하는 불안한 20대들의 이야기 책을 읽는 게 고통스러웠던 적은 처음이다. 어렴풋이 알고 있지만 인정하고 싶지 않았던 현실을 담담히 인정하는 워딩이 고통스러웠다. 나 역시 정신과 치료를 받고 있는데, 글 곳곳에 묻어 있는 저자의 상처와 아픔이 느껴질수록 내 마음 속 통증도 되살아났다. 기댈 곳 없고 위로받을 곳 없이 어떻게든 버텨온 삶, 한때 부풀었던 꿈은 허상이고, 내가 사는 현실에 수긍해야만 하는 게 싫지만 달리 방도가 없다는 데서 오는..

세줄요약 독서 2021.02.26

[Python] 프로그래머스. 2021 카카오 recruit - 광고 삽입 (Level 3)

programmers.co.kr/learn/courses/30/lessons/72414#fn1 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 누적합 + 투 포인터를 활용해서 풀 수 있는 문제. 어떻게 적용해야 할지 감이 안 와서... 공식풀이와 풀이포스트를 참고했다.

화상 모의면접 연습 플랫폼 개발 프로젝트 (1) - 채팅 DB 아키텍처 고민하기

Yapp 동아리의 개발 프로젝트였던 화상 모의면접 연습 플랫폼 "위더뷰" 개발에 백엔드 개발자로 중도 합류했다. github.com/witherview/witherview_backend witherview/witherview_backend 🎯 위더뷰 Backend. Contribute to witherview/witherview_backend development by creating an account on GitHub. github.com 기본적으로는 자바 스프링부트를 사용하지만, WebRTC의 경우 Node JS를 사용하는 구조다. 프론트는 React 기반이다. 중도에 합류해서 기존 코드와 구조를 어떻게 분석했는지 / 어떻게 개선방안을 찾아갔는지 생각을 정리하는 용도의 포스트. 처음 프로젝트에 합류..

WebRTC - 개념과 통신방식, 프로토콜

WebRTC Real time Communication on Web Browsers / Mobile App을 가능하게 하는 Framework. 즉 text 형태로도, video 형태로도 가능하다는 뜻. P2P만을 말하는 건 아니다. 단순한 P2P보다 훨씬 복잡함. 크게 네 가지 step을 거쳐 동작한다. Signalling Connecting Securing Communicationing. 보통 WebRTC를 사용한 통신의 대부분이 P2P인 것뿐이다. 왜 등장했는가? WebRTC 이전에는 Server가 MiddleMan 역할을 했다. 즉, 사용자 간 통신의 모든 부하를 서버가 떠맡는 구조였다. Scalable에 한계가 있는 구조 / 유지하기 비싸다. 그럼 아예 이렇게 통신하게 하면 어떨까? 중간에 서버가..

컴퓨터과학이 여는 세계

교양서 언어로 표현하는 컴퓨터공학 전공서 프로그래밍 언어론, 알고리즘과 P / NP complete문제, 오토마타, 정보이론, 암호학 기초, 통신까지 다양한 분야의 지식을 일관성 있는 이야기로 아우른다. 컴퓨터과학이라는 학문의 기반을 단단히 할 수 있는 디딤돌 같은 책. 이 책은, 페이스북에서 팔로우하는 분의 피드 게시글로 처음 알았다. [꼼꼼 리뷰] 개발자를 꿈꾸는 '비전공생'을 위한 추천 도서 Best 3 비전공 개발자, 개발자 추천 도서, 개발자 책 추천, CODE, 찰스 펫졸드, 찰스 페졸드, 생활코딩, 컴퓨터 과학이 여는 세계, 이광근 서울대, 컴퓨터 구조, 이것이 취업을 위한 코딩 테스트다, 이것이 www.philgineer.com 개발자를 꿈꾸는 비전공생을 위한 추천도서. 관심이 안 갈 수 ..

세줄요약 독서 2021.02.10

Java WebSocket과 Stomp로 간단한 채팅프로그램 만들기

WebSocket Http처럼 서버와 클라이언트 간 양방향 통신을 제공하는 프로토콜. 한 번 connection이 맺어지면, 서버 또는 클라이언트가 connection을 종료하기 전까지 계속 통신이 가능하다. 따라서 지속적으로 서버와 클라이언트가 high frequency / low latency로 통신해야 하는 경우 http보다 websocket 프로토콜이 유리하다. url로 topic을 지정한 채 메시지를 전송 해당 메시지가 Message Broker로 도달 (Simple Broker) Message Broker는 해당 토픽에 대응되는 response channel로 Route receiver가 메시지 수신. 이 과정을 진행하기 위해서는 Stomp라는 프로토콜이 추가로 필요. Stomp WebSock..

[Python] 프로그래머스. 2021 카카오 recruit - 메뉴 리뉴얼 (Level 2)

programmers.co.kr/learn/courses/30/lessons/72411 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr 오랜만에 다시 풀어보는 코딩테스트 문제. 제한사항을 봤을 때, 주어지는 데이터 크기가 크지 않아서 브루트 포스를 적용할 수 있는 문제였다. combinations를 활용했고, 마지막에 sort하는 것보다 효율적인 방식 (heapq라던가..)이 있지 않을까? 생각했지만 일단 이렇게 풀어도 통과한다.

[Python] 프로그래머스. 2021 카카오 recruit - 신규 아이디 추천 (Level 1)

programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 카카오계정개발팀에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가 programmers.co.kr 조건대로 따라가면 되는 문제.