목록Topic (25)
규도자 개발 블로그

언젠간 써야지 써야지 했던 글이 결국 쓰는 데에 반년이라는 시간이 걸렸다. 역시 생각났을 때 그 기분과 감성을 담아서 적는 게 가장 맞는 방식이었던 것 같은데. 약간 후회가 남는다. 아무튼 각설하고, 작년 11월 이런 메일을 받았다. 단순하게 말하자면 구글포토 유료화 할 거니깐 피해보지 말고 대비 잘 해두라는 얘기다. 십수년 전부터 구글 포토에 내 모든 추억을 담아왔던 나로서는 대안이 없기 때문에 구글 포토를 계속 쓸 것이다. 근데 이번 포스팅의 주제는 이것이 아니다. 이 구글포토 유료화의 기저에 깔려있는 기업의 의도를 읽는 것이다. 구글포토는 상당히 혁신적인 시스템이었다. 사진과 동영상의 무제한 클라우드라니. 역시 구글이다. 옳다구나 하고 썼다. 수백수천을 넘어 수만장의 사진과 수백개의 영상을 업로드해..
https://www.youtube.com/watch?v=5AwdkGKmZ0I 에서 실시간 스트리밍 예정이다. 이번에 발표할 것은 ARM(Apple Silicon이라 불리우는)칩셋이 채택된 뉴 맥북라인이라던데 기존의 인텔 칩셋 라인업에서 애플이 자체 개발한 CPU를 달고 나오는 만큼 엄청난 변화가 예상된다. 그래서 사실 전 회사에서 작업할 때 맥북을 써보고 반해서 2019년식 16인치 제품을 사려고 했다가 이번에 발표 나오는 거 보고 결정하려고 하는데 또 ARM칩셋 기반이면은 기존에 개발할 때 쓰던 툴들을 그대로 쾌적하게 쓸 수 있을지도 걱정이고... 애플이 ARM칩셋으로의 대 전환이라는 계획을 2년이라는 기한을 잡아뒀는데 확실히 기존 칩셋에서 ARM으로 추세가 변하는 건 확실한 트렌드일 것 같고. 그래..
문서 주도 개발(Document Driven Development)이란? 새로운 DDD에 대해서 알게 되어 흥미를 느꼈고 이 글을 쓰는 계기가 되었다. 기존에 DDD라고 하면 도메인 주도 개발, 혹은 도메인 주도 설계를 의미하는 Domain Driven Development를 의미했는데 요즘엔 아주 간간히 이 단어를 볼 수 있다. 새로이 뜨는...? 뜬다기보단 그냥 수면 밑바닥 언저리에서 은근히 쓰이는 말이라고 볼 수 있다. TDD, D(Domain)DD가 각자의 성격을 갖고 있듯이 D(Document)DD도 고유의 성격을 갖고 있다. 이름에서 유추할 수 있듯이 이 방법론은 문서화를 중요시하는 것이며 다음과 같은 특징을 갖고 있다. 문서주도개발 방법은 상당히 심플한 컨셉이다. 문서화되지 않은 기능은 없는..
개발자가 알고리즘을 알아야 되는 이유에 대해서 생각해봤다. 일단 나는 정규적인 프로그래밍 학습과정을 거친 것이 아니라 단순 "만들어 보고 싶은 게 있다"는 생각으로 국비학원에서 프로그래밍을 배워 프로그래머로 정착하게 됐다. 국비학원의 특성상 짧은 시간 안에 업에 뛰어들 수 있는 인재를 만들어야 하므로 학과적인 가르침보다는 실무적인 가르침이 컸다. 그마저도 부족한 게 실상이지만. 학원에서 배웠던 알고리즘 비슷한 건 별찍기나 주사위 기록하기, 로또번호 생성기 등 기본 중 기본이었다. 오히려 부족한 학력을 채우기 위해 혼자 따로 공부했던 정보처리기사를 준비하며 배웠던 알고리즘이 훨씬 많았다. 하지만 그때까지만 해도 알고리즘을 왜 배워야 하는지에 대한 정확한 이유에 대해선 몰랐다. 그냥 내가 따려는 자격증에 필..
gunicorn은 대체 뭐하는 놈일까 (부제: CGI, WSGI는 대체 뭐냐) django를 배포하려고 하면 꼭 gunicorn이나 uWSGI라는 놈과 마주친다. 튜토리얼 보스마냥 이 둘을 마주치지 않고 배포를 할 수는 없는 모냥이다. 왜 php는 Apache나 nginx처럼 웹서버만 있으면 되는데 django는 WSGI라 불리는 아이들을 거쳐야 하는 걸까? 한번 알아보자. gunicorn은 WSGI의 일종이다. 그렇다면 WSGI는 뭘까? CGI의 일종이다. 그렇다면 CGI는 뭘까? 그렇다. gucniron이 뭐하는 놈인지 이해하기 위해선 CGI라는 것부터 이해해야 한다. CGI를 풀어써보면 Common Gateway Interface라고 하는데 한국말로 직역하자면 "공용 경로 인터페이스"라고도 할 수 ..
.gg도메인 이야기 good game이라는 말이 있다. 게이머들에겐 익숙하겠지만 일반인들은 그냥 "좋은 게임?"정도로 인식할 수 있을 것 같다. 직역하자면 좋은 게임도 맞는 말이지만 이 말이 주로 쓰이는 상황은 게임에서 상대에게 패배했을 때, 혹은 시작하기 전에 인사할 때이다. 그러니까 게임에서 패배가 확정된 사람이 "좋은 게임 했습니다"하면서 물러나는 의미이거나, 시작하기 전에 "좋은 게임 합시다"하는 의미로 쓰인다. 어떻게 보면 GG는 사람과 사람끼리 대결하는 게임에 있어서 가장 유명한 멘트라고도 할 수 있다. 그 대표성과 인지도 만큼이나 게임 관련 사이트들이 gg도메인을 달고 나오는 경우가 굉장히 많이 생겼는데 대표적으로 op.gg를 들 수 있다. 근데 gg는 어디서 튀어나온 애일까? gg는 최상위..
태그와 포스트의 다대다 관계를 이용한 복합메뉴형 게시판 십수년간 이 블로그가 개설돼있는 티스토리나 기타 다른 많은 블로그, 게시판류의 어플리케이션들을 써왔는데 항상 불편했던 점이 있었다. 바로 글의 분류시스템이다. 보통 이런 류의 게시판형 어플리케이션들은 카테고리 기능을 지원하고 있고, 그 카테고리는 상위 카테고리를 지정할 수 있어서 만약 내가 내가 축구에 대한 글 쓴다면 스포츠 아래에 축구라는 카테고리를 만들어 축구 카테고리에 글을 써서 분류할 수 있다. 하지만 예를 들어 내가 축구영화에 대한 글을 쓰고 싶은데 축구와 영화, 두 카테고리 모두에 노출시키고 싶다. 해당 카테고리가 같은 상위카테고리를 공유하고 있지 않는다면 어떡해야할까. 기존의 게시판 형태라면 당신은 둘 중 하나의 카테고리를 선택하던가 혹..
나는 SPA가 모던웹의 새로운 정의라고 떠받들여지고 있는 이 시점에서 단호히 아니라고 대답할 수 있다. 이유가 뭐냐. 단순하다. 그냥 불편하다. SPA는 불편하다. 기존 수많은 get값으로 정의된 a태그들을 이용하여 만들어진 사이트들과 SPA로 만들어진 사이트들을 비교해보면 알 것이다. 기존의 방식대로 이뤄진 사이트들은 각 링크마다 a태그와 주소가 함께 달려있고 브라우저는 이를 링크로 인식하여 오른쪽 클릭으로 해당 요소를 누르면 새 탭에서 열기 등의 부가적인 작업이 가능하다. 그리고 해당 페이지에 들어가면 이러저러한 get값과 texonomy를 통해 페이지가 구성돼있을텐데 이를 그냥 북마크에 저장해놓으면 언제든 다시 와서 해당 페이지를 조회할 수 있다. 하지만 SPA철학을 너무 철저하게 지켜 각 링크가 ..
현재시간 2019년 7월 2일 22시 55분, 퇴근 후 롤 한게임 하려고 했는데 접속이 되지 않아 공식홈페이지에 들어가보니 502 bad gateway오류가 출력되면서 아래에 cloudflare라는 이름이 출력되더라. 아, 롤 클라이언트랑 사이트 모두 클라우드플레어를 쓰고 있었구나. 내 블로그에 등록해놓은 this-programmer.com으로 접속해도 같은 오류가 출력됐다. 도메인은 aws의 route53에서 샀지만 dns설정이 한 달에 몇 백원씩 요금이 붙어 거슬려서 cloudflare로 바꿨는데 이런 일이 생겼다. 현재 리그오브레전드 공식홈페이지 상황 동종업계 사람으로서 불편함보다는 걱정이 앞선다. 지금은 또 this-programmer.com으로 접속되는 것으로 보아하니 몇 개의 dns서버가 맛탱..
리디렉션한 횟수가 너무 많습니다 가끔씩 뭔가 뚜렷한 전조증상 없이 이 에러가 뜨는 경우가 있는데 이유는 서버에서 링크이동이 반복해서 이뤄지게 됐을 때 브라우저가 임의로 이 에러를 일으키는 것이다. 예를 들어 localhost라는 주소에 들어갔을 때 해당 웹페이지에 localhost/move로 리디렉션시키는 스크립트가 짜여져 있고, localhost/move라는 곳으로 이동했을 때 localhost로 다시 리디렉션시키는 스크립트가 있다면 이 오류가 뜨게 된다. 내가 이 오류를 만났을 땐 다음과 같은 상황이었다. django로 프로젝트를 제작하던 도중 로그인이 된 상태이거나 로그인을 성공하면 redirect_to라는 GET키값의 밸류값으로 이동시키거나 혹은 home으로 이동시켜야 했는데 request에 뭐가..