[Supabase] {"message":"Sign Up failed","error":"Database error saving new user"} 해결하기
·
Projects 🚀/Couchilla (음반 거래 플랫폼)
supabase.db, storage, auth 등을 한번에 해결할 수 있어서나같이 게으른 미룬이들에겐 혁명과도 같은 디비임. 또한 공식문서나 관련 블로그들도 정리가 세련되게 잘 되어있음. 어떤 블로그를 참고하여client랑 api(server) 완벽하게 짰는데 계속 에러가 나는 거임.. {"message":"Sign Up failed","error":"Database error saving new user"} 3일 밤낮을 gpt, 구글링을 하며 방법을 찾았지만 결국 해결하지 못함.'뭐가 잘못되었는지 모름'개발자로서 제일 빡치는 순간임. 내 행동들을 복기해보니 문득 sql editor에서 나온 에러 메시지가 뇌리를 스침. "ERROR: 42723: function "handle_new_user" alre..
[Next] In HTML, <div> cannot be a child of <html>.This will cause a hydration error. 에러 해결법
·
Projects 🚀/Couchilla (음반 거래 플랫폼)
이제 막 navbar 만들려고 하는데 에러가 하나 발생했다."In HTML, v> cannot be a child of .This will cause a hydration error."  태그는 문서의 최상위 요소로 와 만 포함할 수 있다.는 태그 안에서만 쓸 수 있는데 의 직접적인 자식이 되면 이런 오류가 난다고 한다.  layout.tsx를 보니 Navbar가 body 바깥에 있다는 걸 확인할 수 있었다.줄 한 칸차이로 이런 오류가 발생하기도 하니 주의하도록 하자.
[Next] next14 app router과 emotion은 최악의 궁합인가.
·
Projects 🚀/Couchilla (음반 거래 플랫폼)
next 프로젝트를 만들면서 emotion을 사용해보기로 했다.css-in-js가 가능하고 styled-component 형식으로 css 짤 수 있다는 것이 장점이다.특히 토스에서 emotion을 사용한다고 하기에 나도 당장 써보기로 했다. 그런데... 뭔가 이상하다6시간째 에러만 해결하고 있다.next 13 부터는 app router 방식이 사용되는데아직 emotion의 app router 방식에 대한 SSR 지원이 제한되어 있기 때문에client 컴포넌트로 밖에 사용하지 못하는 것 같다. (근데 이럼 next 쓸 이유가...) emotion은 css-in-js 라이브러리인데이 동작방식이 SSR 동작 방식과 상충되는 부분이 있기 때문이다. (하이드레이션 이슈) 결론 : tailwind css나 쓰자
[Next] 컴포넌트 import 할때 중괄호 치고 안치고의 차이 (default export vs named export)
·
Projects 🚀/Couchilla (음반 거래 플랫폼)
emotion 사용하려고 Global.tsx 만들고 layout에 import 함import { GlobalStyle } from '@/styles/Global' 근데 빨간줄 뜨면서 에러뜸Module '"@/styles/Global"' has no exported member 'GlobalStyle'. Did you mean to use 'import GlobalStyle from "@/styles/Global"' instead?ts(2614) 철자를 틀렸나 싶어서 스펠링 틀린그림 찾기 했는데 다른점 안보인다.뭔 말인지 모르겠어서 gpt한테 물어보니 중괄호가 문제라고 한다.  import 할때 중괄호 치고 안치고의 차이 export 에는 default export 와 named export 가 있다.쉽게..
[JS] 프로그래머스 / 최소직사각형
·
Coding Test
https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이제 슬슬 정체기가 오기 시작 하는 듯.문제가 안풀리니까 여러 문제에 손을 대게 된다...다시. 가장 정답률이 높은 이 문제부터 빡 집중. 와...머리속으로는 너무 쉽게 풀리지만 코드를 짜려니 너무 막막하다.코드를 작성하고 수정하고 삭제하기를 반복했다. 최종코드function solution(sizes) { let maxArr = [] let minArr = [] sizes.forEach(arr=>{ arr = ar..
타인의 시기심을 관찰하면 비즈니스 기회가 보인다 - [르상티망]
·
Reading Log
2부. 지적 전투력을 극대화하는 50가지 철학/사상철학은 어떻게 삶의 무게가 되는가 2부.그 중 첫번째 키워드. 니체의 '르상티망' (타인의 시기심을 관찰하면 비즈니스 기회가 보인다) 니체는 강자에게 품는 질투, 원한, 증오, 열등감이 뒤섞인 감정을 '르상티망'이라 정의했다.이 르상티망을 해소하려는 방식은 두 종류로 나뉜다. 1) 르상티망의 원인이 된 가치기준에 예속, 복종한다.ex) 부유층에 르상티망을 느껴 명품을 두르고 과소비를 일삼음. 2) 르상티망의 원인이 된 가치판단을 뒤바꾼다.ex) 니체는 기독교가 이러한 가치판단의 역전을 만들어 냈다고 주장함. (주인의 덕목 / 종의 덕목)이때 주의할 점은 '가치판단의 역전'이 단순히 르상티망에 기인한 것인지, 더 숭고한 문제의식에 뿌리를 둔 것인지 잘 분별..
[서평] 철학은 어떻게 삶의 무기가 되는가 - 프롤로그, 1부
·
Reading Log
철학은 어떻게 삶의 무기가 되는가 / 저자 : 야마구치 슈위 책을 읽으며 감명 깊게 읽었던 대목, 개인적인 느낀점과 적용점을 적어보았습니다. 글 하나에 다 적기엔 너무 방대한 내용이기 때문에파트별로 잘게 나누어 올릴 예정입니다.  프롤로그 교양이 없는 전문가 보다 위험한 존재는 없다.철학을 배우지 않고 사회적 지위만 얻으면 문명을 위협하는 '위험한 존재'가 된다. 우리는 '왜' 철학을 배워야 하는가?1) 상황을 정확하게 통찰한다 - 지금 눈앞에 벌어지는 일을 깊이있게 통찰하고 해석하게 함.2) 비판적 사고의 핵심을 배운다 - 제안->비판->재제안의 철학 흐름.3) 어젠다를 정한다 - '과제'를 정한다. 과제가 설정되지 않으면, 혁신도 일어나지 않는다. 과제, 즉 어젠다를 통해 의심해야할 상식을 분별하는 ..
[서평] 힘든 일을 먼저 하라
·
Reading Log
힘든 일을 먼저 하라 / 저자 : 스콧 앨런위 책을 읽고 정리한 내용, 그리고 주관적인 느낀점들을 적어보았습니다. 프롤로그 "아마추어는 앉아서 영감을 기다리고, 나머지는 그냥 일어나서 일하러 간다" - 스티브 킹 '미루기'는 즐거움을 느끼는 활동을 하느라 필요한 일을 하지 않기로 선택하는 것이다.미루는 행위는 해야할 일에서 완벽하게 벗어나지 못해 늘 긴장 상태에 있고, 잔잔하게 불행해진다. 미래의 나는 장기적인 목표를 선호하지만, 현재의 나는 즉각적인 목표를 선호한다.하지만 행동을 취할 수 있는 것은 현재뿐이므로, 현재의 내가 원하는 행동만을 하며, 장기적인 목표에 있어 아무 행동도 행하지 않고 계획만 수정한다. 힘든 일을 끝내야 비로소 자유로워 진다.  1부. 나는 왜 같은 패턴을 반복하는가 "미루는 ..
[JS] 프로그래머스 / 짝지어 제거하기
·
Coding Test
https://school.programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 전에 풀었던 햄버거 문제도 그렇고어떤 배열을 반복하면서 특정 동작을 수행하는 문제가 종종 있다. function solution(s) { let arr = [...s] while(arr.length!==0) { for(let i=0; i 처음 짠 코드인데 잘 작동될 리가 없다while 안에 for 문을 넣어서 풀어보려고 했지만 조건에 따라 return 하는 것이 너무 어려웠다. function solution(s) { ..
[JS] 프로그래머스 / 삼총사
·
Coding Test
https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   고등학교 수학에서 배운 '조합' 개념을코딩으로 어떻게 구현 하는가가 관건.function solution(number) { let len = number.length for(let i=2**(len-1); ix==='1').length===3) { console.log(twoString) } }} 조합 개념을 어떻게 구현하지 곰곰히 생각하다가 처음에 떠올랐던 것이 이진수 개념이다.자릿수..