나는 이렇게 논다 45

Python & FastAPI 로 백엔드 시작하기 (2) _ API 연습 및 단축 스크립트 만들기

02. API 연습 및 단축 스크립트 만들기 개요 - `main.py` 를 `app/views` 경로로 이동합니다. - `main.py` 에 연습용 API를 구현합니다. - `run-server.sh` 스크립트를 생성합니다. - `tree` 를 이용해 디렉터리 구조를 확인합니다. main.py 를 app/views 경로로 이동하기 app 디렉터리와 그 하위에 views 디렉터리를 생성합니다. 각 디렉터리에는 __init__.py 파일을 생성합니다. *__init__.py 파일이 없는 경우, 해당 디렉터리는 단순한 디렉터리로 간주됩니다. 반면 __init__.py 파일이 존재하는 디렉터리는 파이썬 패키지로 간주되며, 패키지 내부에 있는 모듈들을 다른 모듈에서 import할 수 있습니다. 기존 main.py..

Python & FastAPI 로 백엔드 시작하기 (1) _ 개발환경 세팅하기

01. 개발환경 세팅하기 이 글은 Python과 FastAPI를 활용하여 백엔드 개발을 시작하고 싶은 분들을 위해 작성하였습니다. 개요 - pyenv로 가상환경을 만들고 Poetry 종속성 관리 도구를 설치한다. - FastAPI 와 Uvicorn 을 사용해 서버를 실행한다. - .gitignore 파일을 생성하여 불필요한 업로드를 막는다. - pre-commit을 활용하여 코드 스타일과 정적 분석을 자동화한다. *사용 기기 : M1 MacBook Air *사용 IDE : Visual Studio Code *만약 터미널 사용이 처음이거나 아직 세팅이 완료되지 않았다면 이전 글을 참고해주세요. 2023.03.18 - [나는 이렇게 논다/백엔드 시작하기 with Python] - Mac M1 터미널 환경 세..

ChatGPT 소설 _ 오래된 쪽지

*이 글은 ChatGPT로 초안을 만든 후 다듬은 글입니다.오래된 쪽지 성준과 승아는 5년간 교제해오다 일주일 전 이별을 맞이했다. 성준은 짐을 정리하다 작년 여름에 승아가 남긴 쪽지를 발견했다. 당시에 두 사람은 결혼에 대해 서로 다른 의견을 가지고 있어 자주 다투던 시기였다. 승아는 자신의 감정을 표현하는 데 어려움을 가지고 있었고, 결혼과 미래에 대해 생각을 정리할 혼자만의 시간이 필요했다. 하지만 성준은 승아와 하루빨리 함께하기를 원했고, 고독에 대한 그녀의 욕구를 자신에 대한 거부로 오해했다. 성준은 눈 앞에 놓인 낡은 종이를 펼쳤고, 승아가 거의 1년 전에 썼던 글귀를 읽어 내려갔다. -------------------- 성준 오빠에게 최근 우리의 미래와 결혼에 대해 다투고 있는 거 알아. 내..

Mac M1 터미널 환경 세팅 한 번에 끝내기

들어가기 전에 이 글은 macOS M1 을 기준으로 작성하였다. 이 글은 터미널 환경 세팅이 익숙하지 않은 입문자들을 대상으로 한다. 이 글의 모든 명령어는 터미널의 `~` 경로(터미널 실행시 기본 경로)에서 이루어진다. 터미널은 화면 하단 Dock에서 실행하거나 Spotlight(`command` + `space`) 검색을 통해 실행할 수 있다. 목차 Homebrew oh-my-zsh iTerm2 powerlevel10k zsh-syntax-highlighting Fig 폰트가 깨질 때 Homebrew 소개 Homebrew는 오픈 소스 소프트웨어 패키지 관리 시스템의 하나로서 애플의 macOS 운영 체제의 소프트웨어를 간단하게 설치할 수 있도록 도와준다. 더 자세히 알고 싶다면 공식문서를 참고 👉🏼 h..

카테고리 수집하려다 슬랙 봇까지 개발해버린 건에 대하여…

*이 글은 글또 8기에서 사용하는 슬랙 봇 [또봇]의 개발 이야기입니다. *글또는 ‘글 쓰는 또라이가 세상을 바꾼다’라는 뜻으로 슬랙을 활용에 2주에 한 번 글을 올리는 개발자 글쓰기 커뮤니티입니다. 모든 글을 쉽게 검색할 수 있도록 작년에 나는 글또 7기 [백엔드-인프라 e] 조로 참여했다. 글또는 조별로 서로의 글을 공유하고 피드백을 나누는데, 백엔드의 경우 같은 직무라도 사용하는 언어나 기술에 따라 다루는 글 내용이 천차만별이었다. 나는 비교적 소수가 사용하는 Python을 사용하기 때문에 다른 기술을 사용하는 분들의 글이 잘 읽히지 않았다. 예를 들어 자바 스프링에 대한 내용은 내겐 이해하기도 어려울뿐더러 큰 도움이 되지 않았다.(내 글 또한 그분들에게 도움이 되지 않았을 것이다.) 이러다 보니 ..

제 취미요? 퀀트입니다!

6월부터 취미로 퀀트를 배우기 시작했다. 퀀트가 뭔데? 🙂 Quant는 Quantitative(정량적)와 Analyst(분석가)의 합성어로 수학과 통계에 기반해 투자 모델을 만들거나 금융 시장 변화를 예측, 분석하는 것을 말한다. 퀀트 투자와 일반 투자의 다른 점은 퀀트는 정량적인 데이터를 기반으로 수학과 통계를 이용해 투자를 한다는 것이다. 퀀트는 수학과 통계를 바탕으로 투자 전략을 만들고 백테스팅을 거쳐 검증할 수 있다. 검증된 전략을 바탕으로 프로그램을 만들어 실제 투자에 적용할 수 있다. 글로만 보면 이해가 안 될 테니 아래 *볼린저밴드를 활용한 *백테스팅 사례를 살펴보자. ❗️들어가기 전에 잠깐 용어 설명 *백테스팅 : 투자 전략을 과거 데이터에 적용하여 수익성을 평가하는 테스트 기법. *볼린저..

벨로그 워드클라우드 서비스

벨로그 워드클라우드 월간 사이드 프로젝트를 기획 진행하고 있다. 첫 시작인 5월에는 벨로그의 글을 워드클라우드 형태로 분석해서 보여주는 서비스를 만들어보았다. 웹 페이지에서 벨로그 아이디만 입력하면 최근에 작성한 3개 글을 분석하여 워드클라우드 형태로 보여준다. 내가 만든 워드클라우드는 불용어를 제외한 명사들만 분석하여 보여주는데, 예를 들어 ‘나는’, ‘는데’, ‘습니다’, ‘그리고’, ‘또한’, 같은 단어들을 제외하여 의미가 유효한 단어들만 보여준다. 개발 목적 예전부터 블로그를 단어 단위로 분석해보고 싶었다. 특히 개발자마다 어떤 단어들을 많이 사용하는지 확인해보고 싶었는데, 이번 기회에 글을 워드클라우드 형태로 보여주고자 했다. 워드 클라우드란? 쉽게 말해 글을 아래 이미지처럼 보여주는 것이다. ..

#7_술GO? 하기 전에 회GO!

결과물 사이트 주소 : http://suulgo.s3-website.ap-northeast-2.amazonaws.com/ 깃헙 레포 : https://github.com/Daco2020/27-2nd-SUULGO-backend 고민했던 것들 지난 1차 프로젝트 때 개인적으로 아쉬웠던 점들이 있었다. 노션과 트렐로 툴을 병행하여 트렐로 툴을 적극 활용하지 못한 것 트렐로를 활용하지 못하여 칸반의 진척도를 정확히 파악하지 못한 것 팀원 간 실력차에 의해 업무 공백이 발생한 것 단순 데이터 반환 기능만을 구현한 것 개성 있는 서비스가 아닌 사이트 클론과 기능에 집중한 것 이번 술고 프로젝트에서는 1차 때의 아쉬운 점들을 극복하는데 집중했다. 그래서 이번에는 첫 번째, 트렐로를 과감히 포기하고 노션에서 칸반을 함..

#6_코드말고 술잔 부딪치시는 건 어떠세요 ?

술 GO? 전 글에서 술 취향 매칭 알고리즘을 통해 가장 매칭 점수가 높은 사람들을 리스트로 받는다고 말했었다. 그리고 마음에 드는 유저를 선택하면 해당 유저의 술 취향을 볼 수 있는 상세페이지로 들어갈 수 있다. 상세페이지 화면을 보면 우측 상단에 ‘술고!’ 버튼이 보인다. 이제는 매칭을 넘어 상대방과 술 약속을 잡을 차례다. 버튼을 누르면 날짜 선택 모달 창이 뜨고, 원하는 날짜를 선택하여 실제 요청을 보낼 수 있다. 보낸 요청은 DB 테이블에 기록되는데, 이후 상대방이 확인을 할 수 있는 코드 또한 작성해두었다.(사이트에서는 아직 구현하지 못해 추후 실시간 알림이 뜰 수 있도록 리펙토링 예정) 문어발 요청은 NO! 약속 요청을 만들면서 한 가지 우려스러운 상황이 떠올랐다. 술고(술약속) 요청을 보낼..

#5_술생연분 드디어 만나다

실제 고객들은 무엇을 중요하게 볼까? 술고라는 서비스는 우리가 하고 싶어서 만들었지만, 그럼에도 가장 중요한 건 결국 고객의 니즈라고 생각한다. 디자인을 배우고 상업예술에서 잠시 일을 했었던 나는 예술과 비즈니스를 가르는 중요한 기준 중에 하나가 바로 이 ‘제작자와 구매자 간 니즈의 일치’라고 생각한다. 고객의 생각이나 니즈와는 무관하게 만들고 싶은 것을 만든다면 그것은 ‘예술’, 구매자가 원하는 것이 무엇인지 파악하고 이를 만족시켜주기위해 만드는 것은 ‘비즈니스’의 영역이라고 생각한다. 물론 이 둘은 함께 공존할 수 있고, 이 둘이 교집합을 이루는 순간을 '덕업 일치'라고 생각한다. 서론이 길었는데 본론으로 들어가자면, 우리는 우리끼리만 만족하기 보다는 고객의 니즈를 확인하고 고객의 만족도를 높여주고 ..