리액트 계기와 느낀점 (feat. Next.js)

이 주제는 꽤 오래전에 임시 글로 저장해 두었던 주제이다. 최근 리액트와 Next.js에 대한 포스팅을 자주 했는데 이 시점에 마무리 느낌의 글을 쓰는 것이 좋을 것 같아 쓴다. 리액트를 처음 고민하게 된 계기는 별거 없다. vue보다 핫해서 고민하게 되었다. 사실 냉정히 얘기하면 우리 회사 규모에서 서비스를 만드는 데 있어서 Vue + Nuxt면 충분했고, 오히려 효율도 더… Continue reading

공식 문서 만세

서비스 리뉴얼 오픈을 앞두고 SEO 이슈가 있었다. 불과 며칠 전에 Next.js 13과 chakra 사이의 이슈로 보고 우회를 적용했었다. 그 이후에 (이제서야) Next.js의 모든 문서를 정독하고 근본적인 해결책을 찾았다. 인스타그램 같은 서비스는 이런 상황에 어떻게 SEO를 할까 궁금해서 코드를 열어보니 내부 콘텐츠는 하나도 없고 서버 사이드에서는 헤드의 메타들만 반환하고 있었다. 생각해 보니 우리 서비스도 그렇게 만들면… Continue reading

GCP의 함정 팁

많고 많던 외주를 거의 다 마무리하고, 잠깐 시간이 남아서 미루고 미루던 파트너사 서비스의 배포 시스템을 만들었다. 이미 2년이 넘게 개발 & 운영뿐만 아니라 리뉴얼도 여러 번 거치고 고도화까지 하고 있으니, 외주라기보다는 파트너에 가깝다. 어쨌든 매번 내가 직접 GCP 콘솔에 접속하여 배포하다가, 언젠가 꼭 배포 시스템에 포함시키겠다고 했는데 드디어 이뤘다. 자세한 내용은 회사 블로그인 라이브러리에서 다루고,… Continue reading

Next.js 13의 SEO

Next.js 13버전에서는 App Router라는 개념이 추가되었고, 13.4 버전부터는 해당 기능이 안정화되었고 기본값으로 활성화되었다. 가장 크게 달라진 점은 아무래도 서버 컴포넌트가 생겼다는 점이다. 문제는 이 점 덕분에 다른 써드파티 패키지들에 이슈가 많아졌다. 꽤 큰 규모의 디자인 시스템인 chakra ui도 Next.js 13의 App Router를 쓰는 경우 모든 컴포넌트에 ‘use client’를 사용하여 클라이언트 컴포넌트로 강제해야 했다. (기본적으로 모든… Continue reading

기획의 변경

연휴가 시작되었지만, 고객사의 앱 심사가 급한 시점이다.그래도 개발은 마무리가 거의 마무리가 되어서, 심사를 넣었다. 당연히(?) 리젝되었다. 결제와 포인트를 사용하는 대부분의 앱이 겪는 문제일 것이다.여러 얘기가 있었지만 결국 포인트를 얻기 위한 수단(결제)을 웹에 연결해서 제공하면 안된다는 것이다.심지어 쿠폰도 콘텐츠를 얻을 수 있는 수단이기 때문에 결제 수단으로 보고 삭제를 요구한다. 이 모든 것이 인앱결제를 지원하면 문제가 없다…. Continue reading

Flutter 혹은 iOS

오늘 있었던 일이다. 앱 개발을 마무리하던 찰나에, 잠시 앱 빌드를 다시 했더니 갑자기 빌드가 안 되었다. 심지어 시뮬레이터도 실행이 안 되고, 에러도 안 나고 그냥 먹통이었다. Xcode를 켜니, 아.. iOS 17이 나왔단다. 아주 친절하게도 iOS 16.4 버전으로 설정되어 있던 모든 시뮬레이터가 사라지고 전부 iOS 17로 설정되었다. 급하게 구글링을 해서 16.4 버전 시뮬레이터를 구성하고, 빌드를 했는데… Continue reading

Flutter로 만드는 오디오 플레이어

Flutter는 오픈 라이브러리의 문서가 생각보다 잘 안 되어있는 경우가 많다. Star나 점수가 꽤 높은데도 문서화에 누락되어 있는 부분도 많고, 최신화가 잘 안되어 있다. 그래서 찾기 힘들었던 내용들을 정리해 본다. 1. audio_service에서 백그라운드 컨트롤 등록 백그라운드 컨트롤러에 동작을 등록하거나 상태를 만들 때 playbackState에 상태를 등록하는 데 systemActions로 실제 수행될 수 있는 동작을 등록해야 백그라운드 컨트롤러에서의 동작들도… Continue reading

Selenium에서 Chrome 115버전 에러 해결?

이번 주는 새싹(SeSAC)이라고 부르는 청년취업사관학교에서 강의를 하고 있다. 프로그래밍 언어와 관련된 강의를 하면 당연히 외부 라이브러리를 사용하게 된다. 물론 언어 기초 수업에서는 최대한 안 쓰고 로직 실습을 많이 하지만, 그렇지 않은 대부분의 경우는 라이브러리를 사용한다. 덕분에 강의를 진행하면서 라이브러리의 변천사를 몸소 겪게 된다. deprecated 함수들도 빠르게 파악할 수 있고, 사용법이 바뀌는 경우도 바로 따라갈 수… Continue reading

Django 간단한 튜닝

매일 글을 쓰다보니 인풋을 찾게 되는데, 그러다 프레임워크의 성능에 대한 아티클을 몇개 읽었다.그러다 비디어스에 적용할만한 요소가 있어서, 테스트를 해봤다. 이번 테스트를 해보게 된 계기인 ujson을 먼저 테스트해봤다. ujson은 UltraJSON 이라는 패키지인데, 설명을 보면 UltraJSON is an ultra fast JSON encoder and decoder written in pure C with bindings for Python 3.8+. 라고 쓰여있다. C 로… Continue reading

파이썬 어디서 어떻게 쓰고 있는 걸까

파이썬은 개발에 조금이라도 관심이 있는 사람이라면 들어봤을 정도로 잘 알려진 프로그래밍 언어이다. 프로그래머스에서 주기적으로 개발자 설문조사를 하는데, 최근 피드에 뜬 링크가 있어서 둘러보던 중 문득 궁금해졌다. 사람들은 파이썬을 어디서 어떻게 쓰고 있을까. 2023 코딩 테스트 연습 언어 트렌드를 보면 2020년 부터 파이썬이 코딩 테스트에서의 활용이 늘어나는 것을 볼 수 있다. 2023 프로그래머스 개발자 설문조사를 보면… Continue reading