목록전체 글 (55)
altair의 프로젝트 일기

개요 평소에 Self-hosting에 관심이 많다보니 비교적 가격이 싼 중고 컴퓨터나 미니PC를 자주 찾아다니는 편이다. 하지만 지난 해 메모리 반도체 가격이 폭락했을 때를 제외하면 눈에 띄는 싼 가격을 찾기 어려운 것이 현실이다. 인텔 N100 CPU는 어림도 없고 아톰, 셀러론 라인업도 생각보다 높은 가격으로 판매한다. 솔직히 서버용 미니PC에 10만원 이상을 지불하고 싶지 않다. 라즈베리파이에 대한 경험 때문이지 않을까. 그러던 중 알리익스프레스에서 이런 제품을 발견했다. 비록 저전력 듀얼코어로 CPU파워가 약하긴 하지만 생각보다 큰 램과 SSD 용량을 갖고도 10만원 정도의 가격을 보여준다. 무엇보다 눈에 띄는 점은 랜선 구멍이 4개나 되고 랜 칩셋이 인텔 i225V 또는 i226V라는 것이다..

개요 요새 소프트웨어 마에스트로에서 프로젝트를 하느라 정신이 없다. 백엔드와 기타 잡무(...)를 맡아 불태우는 중이다. 저저번 주에 예비군을 갔다와서 몸살에 걸려 저번 주를 통째로 날렸지만 말이다... 시간도 없는데 이게 무슨 날벼락인지 모르겠다. 어쨌든 프로젝트 개발 과정에서 발생한 나름 큰 난관의 해결책을 한국어 웹에서 잘 찾아볼 수 없어서 여기에라도 남기려한다. 문제가 발생한 배경은 다음과 같다. 지금까지는 퍼블릭 서브넷에 있는 EC2의 퍼블릭 IP를 통해 스프링 서버에 API 요청을 보냈다. 하지만 아무리 개발 서버라고 해도 퍼블릭 서브넷에 스프링 서버를 두는 것은 좋지 않다. 게다가 오토스케일링이나 로드밸런서도 포함되어 있지 않았다. 그래서 다음과 같이 바꾸었다. 이런 식으로 구성하면 애..

개요 한동안 글을 쓰지 못했는데 감사하게도 소프트웨어 마에스트로 15기에 합격했기 때문이다. 다른 후기들에서 들은 대로 굉장히 바쁜 예비과정을 보내는 중이다. 조금 늦었지만 이제라도 합격 후기를 적으려 한다. 과거 선배들의 후기에서 정보를 얻었듯이, 내가 경험한 내용을 후배들에게 전하는 것이 도리일테다. 자소서 당락에 중요한 서류는 자소서가 제일 대표적이니 자소서에 관해서만 말해보겠다. 나는 대학 3학년을 마치고 1년간 휴학을 했었다. 컴퓨터공학을 복수전공한 이후로 CS는 열심히 익혔지만 프레임워크나 여러 기술들은 써보지도 못했기 때문에 학교 밖의 지식들을 더 공부하려 했다. 그 활동 중에 하나가 Rust를 익히고 이를 사용해 만든 멀티스레드 이미지 압축 라이브러리다. GitHub - altair8..

개요 파이썬으로 나무위키를 크롤링하다가 문제가 발생했다. 서버에서 크롤러가 돌아가는 컨테이너의 메모리 사용량이다. alpine 리눅스를 사용했음에도 불구하고 512메가바이트를 가볍게 채우고 1기가바이트로 바꾸어도 결국 모두 채운다. 크롤러는 대상 서버를 배려하기위해 시간 간격을 두고 요청을 보낸다. 그럼에도 불구하고 메모리에 계속 데이터가 쌓이는 모습이다. 결국 크롤러는 굉장히 느려졌다. 원인 사용 중이었던 크롤러 클래스의 __init__ 코드를 작성하면 다음과 같다. class Crawler: def __init__(self, base_url): self.visited = set() self.queue = Queue() self.base_url = base_url 방문했던 url을 visited라는 s..

개요 LOVE 엔진이 Lua로 작동하므로 가장 먼저 Lua에 대한 이해가 필수적이다. 이번 글에서는 LOVE 엔진과 게임에 대한 이야기는 잠시 미뤄두고 Lua에 대해 배우고 느낀 점을 소개하려 한다. Lua란? C/C++에 내장시키기 쉬운 언어로써 1993년에 개발되었다. 멀티 패러다임 언어로 C 스타일의 프로시저 방식, OOP, 함수형 프로그래밍 등을 모두 구현할 수 있다. 개인적으로 이 부분은 Rust와 매우 닮았다고 느꼈다. Lua의 데이터 타입은 다음과 같다. Nil(타 언어의 Null과 같다) Boolean Number String Table Function Userdata(C와의 호환성을 위한 자료형. Lua만 사용한다면 필요 없다) Lua의 Table 다른 것보다 테이블을 먼저 다루는 이유는..

최근 발라트로(Balatro)라는 게임을 플레이하고 있다. 구매한지 얼마 되지도 않았는데 벌써 중독적으로 빠져들었다. 한국어 번역이 부실해 관련 자료를 찾아보던 도중 문득 의문이 들었다. 이 게임은 어떤 엔진으로 만들었을까? 찾아보니 LOVE2d라는 엔진으로 만들었단다. GoBrewYourself's comment on "Trying to make a high score FEEL like a high score 🔥" Explore this conversation and more from the IndieDev community www.reddit.com LÖVE - Free 2D Game Engine Hi there! LÖVE is an *awesome* framework you can use to ma..