본문 바로가기

ALL

[Udemy 수강후기] React Three fiber(R3F)로 배우는 인터렉티브 3D 웹 개발 기술블로그로 알아보는 테크니컬 라이팅에 이어 'React Three fiber(R3F)로 배우는 인터렉티브 3D 웹 개발' 강의를 수강하였다. 회사에서 차트를 개발하는 일을 하며 Canvas를 다룰 일이 많았고, 자연스럽게 Webgl등에 관심을 가지게 되었다. 그러면서 Webgl을 활용해서 웹에서 3D를 구현하는 Three.js라는 기술에도 관심을 가지게 되었는데, 라이브러리만을 학습하기에는 뭔가 체계나 개념이 잡혀있지 않아 막막함이 있었다. 그러던 중, 글또를 통해 해당 강의를 수강할 수 있는 기회를 얻게 되었다.강의 소개해당 강의는 약 10시간 정도로 구성되어 있다. 설치/환경 설정부터 시작해서 웹 3D 렌더링에 필요한 여러 개념들을 체계적으로 설명한다. React와 Three.js, R3F 등..
poetry와 github actions를 활용한 파이썬 라이브러리 배포 자동화 파이썬 개발을 하다 보면 필요한 라이브러리를 pip install 커맨드를 통해 쉽게 다운받아서 활용합니다. pandas, pydantic, fastapi 등 유명한 라이브러리가 많습니다. 이렇게 라이브러리를 설치해 사용하기도 하지만, 때로는 직접 라이브러리를 만들어서 배포하고 싶을 때가 있습니다. 파이썬에서는 어떻게 다른 사람들이 사용할 수 있는 라이브러리를 만들어 배포할까요? 오늘은 실습을 통해 직접 파이썬 라이브러리를 만들고, Github Actions를 이용해 라이브러리의 버전이 변경될 때마다 자동으로 배포하는 시스템을 만들어보겠습니다. poetry 소개 poetry는 의존성 관리 및 패키지 배포를 손쉽게 잘할 수 있도록 도와주는 도구입니다. poetry를 사용하지 않더라도 requirements..
SEO를 위한 sitemapr 라이브러리 소개: 구글에 서비스 페이지를 알려주자. 안녕하세요, 오늘은 제가 최근에 진행한 작은 사이드 프로젝트 'sitemapr'에 대해서 소개해 볼까 합니다. 프로젝트를 시작한 계기 광고비를 쓰지 않고도 (줄이고도) 서비스를 효과적으로 노출시키고 싶었습니다. 여러 가지 방법이 있겠지만, 저는 SEO를 잘하는 것이 무엇보다 중요하다고 생각했습니다. SEO란 '검색엔진 최적화'라는 의미로 검색엔진(e.g. Google)이 웹사이트의 내용을 효과적으로 파악하도록 웹페이지를 구조화하는 작업을 의미합니다. 최적화를 수행하기 위한 다양한 방법이 있지만, 검색엔진에 우리 서비스 페이지를 잘 알리는 것이 우선이라고 생각했습니다. 보통 검색엔진은 각 사이트에서 제공하는 사이트맵을 활용해서 페이지를 색인합니다. 블로그를 운영하고 있다면 보통..
파이썬 asyncio로 생산자/소비자 (Producer/Consumer) 패턴 구현하기 오늘은 파이썬에서 공식적으로 지원하는 비동기 라이브러리인 asyncio로 생산자/소비자 (Producer/Consumber) 패턴을 구현하는 방법에 대해서 다뤄보겠습니다. 해당 포스트에서 사용하는 모든 예시는 파이썬 3.11 버전 이상을 가정하고 있습니다. 비동기 프로그래밍과 생산자/소비자 (Producer/Consumer) 패턴 비동기 프로그래밍이란 비동기 프로그래밍은 모든 코드가 순차적으로 실행되는 동기식 프로그래밍과 달리, 작업에 대기가 발생했을 때 (e.g., 네트워크 요청 후 응답) 해당 작업이 끝나기 전까지 다른 작업을 수행하는 프로그램 방식을 의미합니다. 이를 통해 네트워크 입출력(I/O)와 같이 대기가 발생하는 일을 처리할 때 성능을 높일 수 있다는 장점이 있습니다. 보다 자세한 내용은 이..
Rust 버전의 노마드 코인 nomadcoin-rs 안녕하세요, 오늘은 제가 2년 전에 했던 사이드 프로젝트 'nomadcoin-rs' 경험을 소개해 볼까 합니다. 작업한 지 2년도 더 된 프로젝트이지만 블로그에서 한 번도 다뤄본 적이 없어 다루어 보려고 합니다. 해당 프로젝트는 '노마드 코인: Go로 암호화폐 만들기'라는 노마드 코더의 온라인 강의를 Rust로 클론 코딩하는 프로젝트였습니다. 해당 프로젝트의 메인 언어는 golang이었지만 Rust에 대한 관심이 높았고, 막 공식 문서 공부를 끝낸 참이어서 언어에 좀 더 익숙해지기 위해 Rust로 프로젝트를 진행하기로 결심했습니다. 프로젝트 목표 해당 프로젝트를 진행함에 있어서 저는 크게 두 가지 목표가 있었습니다. 블록체인과 그것을 어떻게 만드는지 기술적으로 이해하기 Rus..
vscode에서 파이썬 개발환경 세팅하기 (가상환경, 개발도구) 안녕하세요, 이번 포스트에서는 vscode로 파이썬 개발을 시작하기 위해 개발 환경을 구성하는 방법에 대해서 다루어보겠습니다. 파이썬 관리 도구 및 가상환경, 패키지 매니저, 그리고 스타일 및 정적검사를 위한 개발 도구까지 소개해 보도록 하겠습니다. 파이썬으로 프로젝트를 구성하시는 분들에게 많은 도움이 되었으면 합니다. vscode 설치하기 우선 당연하게도 vscode를 설치해야 합니다. 아래 링크를 통해 본인의 환경에 맞는 vscode를 설치합니다. https://code.visualstudio.com/download 파이썬 설치 파이썬을 공식 홈페이지를 통해 설치할 수도 있지만, 저희는 pyenv라는 도구를 활용할 계획입니다. pyenv는 파이썬 버전을 쉽게 바꿀 수 있게 도와주는 툴입니다. 프로젝트..
[Udemy 수강후기] 기술블로그로 알아보는 테크니컬 라이팅 글또 9기에서 Udemy 강의를 들을 수 있는 기회가 주어졌다. 여러 강의들 중에 '기술블로그로 알아보는 테크니컬 라이팅'을 선택했다. 기술 블로그를 작성하려고 할 때마다 항상 막막한 기분이 들었는데, 이번 기회에 글쓰기 실력을 더 개선하고 싶었다. 또한, 강사님이 '우아한형제들'의 테크니컬 라이팅 코치분이신데, 우아한형제들의 기술블로그를 많이 접하면서 정말 글이 훌륭하다는 생각을 많이 했다. 이러한 이유들로 해당 강의를 신청해 약 일주일간 강의를 들었다. 강의 소개 해당 강의는 크게 두 파트로 나눌 수 있다. 초반부에는 '테크니컬 라이팅'의 정의 등 전반적인 글쓰기에 대한 설명을 다룬다. 후반부에는 실제 기술문서를 작성하기 위해 '독자나 주제를 선정하는 방법', '초안 작성', 그리고 '문서 퇴고..
23년 회고 바빴던 23년이 마무리되고, 24년이 시작되었다. 작년 한 해를 돌아보고, 더 나은 올해를 보내기 위해 23년을 정리해보고자 한다. 잘했다고 생각하는 것들 업무 1. AWS 서버 계정 이전하면서 테라폼 도입한 것 회사에서 AWS 계정을 이전할 일이 있었다. 기존 서버 인프라는 AWS 콘솔을 통해 구성되어 있었는데, 이를 테라폼을 사용하여 IaC로 이전하였다. 기존에는 AWS 콘솔을 통해 관리하다 보니, 인프라의 변경사항 추적이 어려웠고 권한 관리등에서 어려움이 있었다. 회사에서 워크숍을 갔다 오고 나서 3일간 동료 인프라 팀원과 함께 밤을 새워 일하였다. (오전 7시에 퇴근하고 조금 쉬었다가 다시 출근하는 것을 반복했다.) 그 과정이 정말 힘들었고 예상치 못한 이슈 (DB 예열 이슈)가 있었지만, 결과적..