본문 바로가기

분류 전체보기204

[독후감 23년-18] 다정한 것이 살아남는다 독서기간_2023년 2월 초 저자_브라이언 헤어 출간일_2021년 7월 26일 오랜만에 감명깊게 읽었고 그만큼 하고 싶은 말, 쓰고 싶은 말이 많아서 2월에 읽었지만 포스팅이 늦어지게 되었다. 결론부터 말하자면 모든 사람이 꼭 읽었으면 좋겠다. 생각할 거리를 자연스럽게 던져주며 가축의 자기가축화에서 인간의 자기가축화를 연결하는 내용이 인상깊었기 때문이다. 이 책은 후반부에 접어들수록 더 진가를 발휘한다. 재밌기도 했고, 생각할 거리도 많았다. 사회과학 분야 기본도서로 강력 추천한다. 모든 인간이 한 번씩 읽었으면 하는 책이었다. 다름이 인정되는 사회가 올...까...? 사실 밀리의 서재 구독할 당시 이 책을 읽어보려고 5번 넘게 도전했었다. 초반에 나오는 '보노보' 내용을 3번은 읽어 본 듯했지만 실물 .. 2023. 4. 18.
[독후감 23년-17] 1984 독서기간_2023년 3월 중순 저자_조지 오웰 출간일_1949년 출판사_문예출판사 앞으로 서평과 독후감을 나눠쓸 것이다!! 주인공인 '윈스턴 스미스'는 체제에 대해 불만을 품으며 몰래 일기를 '작성'한다. 일상을 감시하는 사상경찰들이 있기 때문에 걸리게 된다면 주변 인물들처럼 갑자기 증발되어 버린다. 출산을 통해 국가를 유지하기 위한 명목인 성관계 외 남녀 간 스킨쉽은 역겨운 것이라 세뇌받고 살아온 덕분에 윈스턴은 사랑을 모르고 살았다. 어느날 한 여인(줄리아)이 윈스턴에게 몰래 쪽지를 남기고 그 둘의 사랑이(!) 시작된다. 내부당원 간부인 ’오브라이언‘도 사실 빅 브라더에 대한 역모를 꿈꾸고 있어 윈스턴과 줄리아, 오브라이언은 반란을 계획하게 되는데... (스포주의) 윈스턴 일당은 결국 잡히고 독방에 .. 2023. 4. 16.
1. 기획/설계 개발 배경 현재 사회적 약자(특히 독거 노인) 등의 도시 내 생활을 돕는 스마트시티형 서비스들은 대부분 IoT센서 등을 활용 움직임 감지를 바탕으로 공급되고 있는데, 감시 당하는 느낌으로 인해 사용율 및 만족도가 떨어짐 개발 목적 현재 사회복지사가 수십 명의 사회적 약자를 담당해 관리하고 있다. 관리사들을 돕는 서비스를 개발하는 것이 1차 목표이다. 서비스의 전체적인 설계는 다음과 같다. 사회적 약자의 생활 데이터(전화, 수도, 전기 등)의 사용량 등을 융복합 분석하여 일일 생활 안부를 확인(사용량 적은 경우 이상 상황으로 인지)하고 또 필요시 대응(출동 등)지원 할 수 있는 서비스를 개발한다. 개발 착수 본래는 가상의 데이터를 사용하여 AI 모델을 제작하는 것이 목적이었다. 하지만 아무리 소프트웨어를 .. 2023. 4. 15.
[Docker] Dockerfile 문법 Dockerfile은 애플리케이션을 패키징 하기 위한 간단한 스크립트이다. Dockerfile은 일련의 인스트럭션으로 구성돼 있는데, 인스트럭션을 실행한 결과로 도커 이미지가 만들어진다. 기본 다섯 가지 인스트럭션만으로도 엔간한(!) 애플리케이션을 도커로 패키징할 수 있다. FROM 모든 이미지는 다른 이미지에서 출발한다. 애플리케이션을 실행하는 데 필요한 런타임 이미지를 가져와야 한다. 예를 들어 Spring이면 Java를, Django라면 Python을. ENV 환경 변수 값을 지정하기 위한 인스트럭션이다. 값을 지정하기 위해 [key]="[value]" 형식을 따른다. WORKDIR 컨테이너 이미지 파일 시스템에 디렉터리를 만들고, 해당 디렉터리를 작업 디렉터리로 지정하는 인스트럭션이다. COPY .. 2023. 4. 14.
[Docker] 자주 쓰는 Docker 명령어 모음 도커 이미지 내려 받기 docker image pull [이미지 이름] 컨테이너 이미지 빌드하기 빌드하기 위해 이미지의 이름, 패키징에 필요한 파일의 경로를 추가로 지정해야 한다. 경로는 대개 온점(.)으로 표현하는데, Dockerfile이 존재하는 '현재 작업 디렉터리'라는 뜻이다. docker image build [경로] 옵션 설명 --tag [이름] 이미지의 이름을 지정한다. 도커 컨테이너 실행 docker container run [이미지 이름] 옵션 설명 -d, --detach 컨테이너를 백그라운드에서 동작한다. --name 컨테이너에 이름을 붙인다. (붙이지 않으면 무작위 ID로 생성됨) -e, --env [변수명]=[설정값] 컨테이너의 환경변수를 부여할 수 있다. -it 컨테이너와 대화식으.. 2023. 4. 13.
[Docker] 도커가 컨테이너를 실행하는 원리 도커 엔진 : 도커의 관리 기능을 맡는 컴포넌트이다. 로컬 이미지 캐시를 담당하므로 새로운 이미지가 필요하면 이미지를 내려받으며, 기존 이미지가 있다면 전에 내려받은 이미지를 사용한다. 호스트 운영체제와 함께 컨테이너와 가상 네트워크 등 도커 리소스를 만드는 일도 담당한다. 도커 엔진은 항시 동작하는 백그라운드 프로세스이다. 도커 엔진은 도커 API를 통해 맡은 기능을 수행한다. 도커API는 표준 HTTP 기반 REST API이다. 도커 엔진의 설정을 수정하면 이 API를 네트워크를 경유해 외부 컴퓨터로부터 호출할 수 없도록 차단하거나 허용할 수 있다. 도커 명령행 인터페이스(도커 CLI)는 도커 API의 클라이언트다. 우리가 docker 명령을 사용할 때 실제로 도커 API를 호출하는 것이 바로 도커 .. 2023. 4. 12.
프론트엔드는 TDD가 필수인 것 같다 백엔드 준비하는 사람이 프론트엔드 종아리까지 담가본 후 느끼는 바이다. 프론트엔드야 말로 테스트 없이는 효율적인 코딩이 불가능한 것 같다. 프론트 개발하면서 고민이 컴포넌트 밑 컴포넌트 밑 컴포넌트의 state 변경 이벤트가 잘 작동되는지 확인하는 것이다. API로 데이터 호출해서 컴포넌트에 잘 띄워지는지 등등... 비즈니스 로직이 막 대단한 것도 아닌데 결합도가 높다고 해야 하나? 백엔드는 실행 비용이 그렇게 크지 않아서 테스트의 중요성을 못느꼈는데, 프론트엔드는 실행이 좀 많이 무겁다... 그리고 API 호출 할 수가 없잖아... 인가 기능도 해놔서 쿠키 설정도 해야 되는데... 맞아요... 지금 Mockito 이용해서 Mock API 호출 후 위젯에 잘 보여지는지 테스트 하고 있는데 계속 오류가 나.. 2023. 4. 11.
C++ string replace, count 맨날 까먹어서 글 쓴다. string 메서드 replace(치환할 시작 위치, 치환할만큼 길이, 치환할 문자열) string target="Hello World!"; string change="Bye"; target.replace(0, 5, change); 프로그래머스에서 풀다가 테스트함... 내장함수 count(문자열 시작 위치, 문자열 끝나는 위치, 찾을 char) #include string str="10001100001"; count(str.begin(), str.end(), '1'); // 4 2023. 4. 10.