묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨<밑바닥부터 만들면서 배우는 LLM> 완독 챌린지
4장 강의는 아직 업로드가 안된걸까요?
추석 연휴에 완독 목표로 하루에 한장씩 도전중입니다.4장부터는 강의가 안보이는데, 아직 등록이 안된걸까요?
-
해결됨BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
윈도우 연습문제 1번 질문
실행 결과는 동일하게 나왔는데, COUNT를 다르게 쓴 것이 괜찮은지 궁금해서 질문 남깁니다!상황같은 날짜에 여러 번 쿼리 실행한 사용자들이 있어서 COUNT(*)을 해야겠다고 판단했습니다. (어차피 Distinct가 없으면 같은 날짜라도 각각 카운트한다는 것을 깜빡했었습니다ㅠ)카일스쿨님은 COUNT(query_date)를 쓰셨고, 결과만 보면 제 쿼리와 동일하긴 합니다.궁금한 점제 쿼리처럼 COUNT(*)을 쓰는 경우에 문제가 될까요? 혹시 실무적으로 COUNT(*)은 잘 쓰지 않는지 궁금합니다!(Ex. 어떤 컬럼의 개수를 세는 것인지 가독성이 좋지 않다든가..)제 쿼리는 아래와 같습니다. SELECT *, COUNT(*) OVER(PARTITION BY user) AS total_query_cnt FROM advanced.query_logs ORDER BY query_date, user
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
13강. 모듈 내 하위 디렉터리 인식 못하는 문제 해결법
https://makerejoicegames.tistory.com/698 강의 13의 R1GameInstance 를 생성할 때 나타났던 오류 해결법을 기록 겸 등록합니다.5.2.3 버전에서 나타나는 문제인 것 같은데, 모듈 내 하위 디렉터리 내 클래스 생성시, 해당 헤더 를 읽어드리지 못하는 문제가 있었습니다. 위 링크의 글을 읽고나서 해결했네요.. Build.cs 에 수동으로 모듈의 디렉터리 명을 읽어드리도록 추가해야 합니다.
-
해결됨<밑바닥부터 만들면서 배우는 LLM> 완독 챌린지
코드 2-3 출력 결과 비교
안녕하세요.코드 2-3의 SimpleTokenizerV1을 실행한 결과에 대해 문의드립니다.아래 코드를 실행해보니 원문 text와 decode로 복원한 text가 조금 다릅니다.원문과 복원한 text가 다르면 문제가 있을지 문의드립니다.class SimpleTokenizerV1: def __init__(self, vocab): self.str_to_int = vocab self.int_to_str = {i:s for s,i in vocab.items()} def encode(self, text): preprocessed = re.split(r'([,.:;?_!"()\']|--|\s)', text) # 'hello,. world' preprocessed = [ item.strip() for item in preprocessed if item.strip() ] ids = [self.str_to_int[s] for s in preprocessed] return ids def decode(self, ids): text = " ".join([self.int_to_str[i] for i in ids]) # 구둣점 문자 앞의 공백을 삭제합니다. text = re.sub(r'\s+([,.?!"()\'])', r'\1', text) return text tokenizer = SimpleTokenizerV1(vocab) text = """"It's the last he painted, you know," Mrs. Gisburn said with pardonable pride.""" ids = tokenizer.encode(text) print(text) print(ids) print(tokenizer.decode(ids)) "It's the last he painted, you know," Mrs. Gisburn said with pardonable pride. [1, 56, 2, 850, 988, 602, 533, 746, 5, 1126, 596, 5, 1, 67, 7, 38, 851, 1108, 754, 793, 7] " It' s the last he painted, you know," Mrs. Gisburn said with pardonable pride.
-
해결됨수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화
Search WEB, Search WEB1, Search W세가지 노드가 작동이 안되네요
포르테이너 건강하고요Search WEB, Search WEB1, Search W세가지 노드 중 Search WEB, Search WEB1는 항상 에러가 나고 Search W는 아에 실행이 안되고 건너 뛰어집니다. 그런데 워드프레스 포스팅은 멀쩡히 잘되네요 포르테이너에서 api관련 도크는 멀쩡히 Running중입니다. 혹시 몰라서 정보 올립니다. 아이디 비번은 지우고 올립니다.SearchWEB오류Referenced node is unexecutedAn expression references the node 'Plan AI', but it hasn't been executed yet. Either change the expression, or re-wire your workflow to make sure that node executes first.{"errorMessage": "Referenced node is unexecuted","errorDetails": {},"n8nDetails": {"parameter": "bodyParameters.parameters","time": "2025. 10. 8. 오후 4:06:32","n8nVersion": "1.110.1 (Self Hosted)","binaryDataMode": "filesystem"}}Search WEB을 json으로 변환한 코드{"nodes": [{"parameters": {"method": "POST","url": "https://api.내URL/search","authentication": "genericCredentialType","genericAuthType": "httpHeaderAuth","sendBody": true,"bodyParameters": {"parameters": [{"name": "query","value": "={{ $('Plan AI').first().json.output }}"}]},"options": {}},"type": "n8n-nodes-base.httpRequestTool","typeVersion": 4.2,"position": [1424,64],"id": "값이 있는데 지움","name": "Search WEB","credentials": {"httpHeaderAuth": {"id": "값이 있는데 지움","name": "Search API Key"}}}],"connections": {"Search WEB": {"ai_tool": [[]]}},"pinData": {},"meta": {"templateCredsSetupCompleted": true,"instanceId": "값이 있는데 지움"}}Search WEB1오류Referenced node is unexecutedAn expression references the node 'CreatePlanAI', but it hasn't been executed yet. Either change the expression, or re-wire your workflow to make sure that node executes first.{"errorMessage": "Referenced node is unexecuted","errorDetails": {},"n8nDetails": {"parameter": "bodyParameters.parameters","time": "2025. 10. 8. 오후 4:08:21","n8nVersion": "1.110.1 (Self Hosted)","binaryDataMode": "filesystem"}}Search WEB1을 json으로 변환한 코드{"nodes": [{"parameters": {"method": "POST","url": "https://api.내URL/search","authentication": "genericCredentialType","genericAuthType": "httpHeaderAuth","sendBody": true,"bodyParameters": {"parameters": [{"name": "query","value": "={{ $('CreatePlanAI').first().json.output }}"}]},"options": {}},"type": "n8n-nodes-base.httpRequestTool","typeVersion": 4.2,"position": [1216,480],"id": "값이 있는데 지움","name": "Search WEB1","credentials": {"httpHeaderAuth": {"id": "값이 있는데 지움","name": "Search API Key"}}}],"connections": {"Search WEB1": {"ai_tool": [[]]}},"pinData": {},"meta": {"templateCredsSetupCompleted": true,"instanceId": "값이 있는데 지움"}}Search W를 json으로 변환한 코드{"nodes": [{"parameters": {"method": "POST","url": "https://api.내URL/search","authentication": "genericCredentialType","genericAuthType": "httpHeaderAuth","sendBody": true,"bodyParameters": {"parameters": [{"name": "query","value": "={{ $('WritePostAI').first().json.output }}"}]},"options": {}},"type": "n8n-nodes-base.httpRequestTool","typeVersion": 4.2,"position": [1632,480],"id": "값이 있는데 지움","name": "Search W","credentials": {"httpHeaderAuth": {"id": "값이 있는데 지움","name": "Search API Key"}}}],"connections": {"Search W": {"ai_tool": [[]]}},"pinData": {},"meta": {"templateCredsSetupCompleted": true,"instanceId": "값이 있는데 지움"}}
-
미해결토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
코틀린에서 value class 적용 시 문제
안녕하세요 코틀린으로 현재 강의를 수강하고 있는 수강생입니다. 현재 자바로 작성된 코드를 보고 설명과 함께 어떤 이유로 이런 코드를 작성한 것인지 생각하며, 코틀린으로 이 개념을 적용하면 어떻게 작성할 수 있을지 DDD와 클린 아키텍처를 코틀린 문법 활용하여 구상하는 연습 중입니다. 현재 Member 도메인 코드 개선 강의에서 value class 적용하여 필드의 값이 바뀌는 문제(email자리에 nickname이 오더라도 같은 String이라 컴파일 에러가 안 남)를 해결하려 시도했습니다 package org.example.splearn.domain @JvmInline value class Email( val value: String, ) @JvmInline value class Nickname( val value: String, ) @JvmInline value class PasswordHash( val value: String, ) class Member private constructor( val email: Email, var nickname: Nickname, var passwordHash: PasswordHash, var status: MemberStatus, ) { fun activate() { check(status == MemberStatus.PENDING) { "회원이 PENDING 상태가 아닙니다" } this.status = MemberStatus.ACTIVATE } fun deactivate() { check(status == MemberStatus.ACTIVATE) { "회원이 ACTIVE 상태가 아닙니다" } this.status = MemberStatus.DEACTIVATED } fun verifyPassword( password: String, passwordEncoder: PasswordEncoder, ): Boolean = passwordEncoder.matches(password, this.passwordHash.value) fun changeNickname(nickname: String) { this.nickname = Nickname(nickname) } fun changePassword( password: String, passwordEncoder: PasswordEncoder, ) { this.passwordHash = PasswordHash(passwordEncoder.encode(password)) } fun isActive(): Boolean = this.status == MemberStatus.ACTIVATE companion object { fun create( memberCreateRequest: MemberCreateRequest, passwordEncoder: PasswordEncoder, ): Member = Member( email = memberCreateRequest.email, nickname = memberCreateRequest.nickname, passwordHash = PasswordHash( passwordEncoder.encode(memberCreateRequest.password.value), ), status = MemberStatus.PENDING, ) } } 강의대에서는 static 메소드인 of에서 MemberCreateRequest를 파라미터로 사옹하고 있습니다. 코틀린이라 companion object를 사용했구요 그러던 중 "헥사고날 아키텍처의 특성을 고려하면 의존성 외부 로직인 dto가 내부로 향해야 하고 따라서 도메인이 dto에 의존하는 것이 괜찮을까" 하는 의문이 들었습니다. companion object { fun create( email: Email, nickname: Nickname, password: String, passwordEncoder: PasswordEncoder, ): Member = Member( email = email, nickname = nickname, passwordHash = PasswordHash( passwordEncoder.encode(password), ), status = MemberStatus.PENDING, ) }그래서 코드를 수정해 보면 이런 식으로 수정해 볼 수 있을 것 같습니다. 이에 대해서 토비님 의견이 어떠신지 여쭙고 싶습니다
-
미해결AI 시대, 반나절 만에 웹사이트 개발부터 배포까지 바이브 코딩 with MCP & Gemini CLI
md 파일 연결 프로그램
강의 중 md 파일을 생성해서 저장했는데요. 이 파일은 어떤 연결 프로그램으로 열어야 하나요?
-
해결됨수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화
사진생성 비용 아껴보겠다고
1장당 0.04달러짜리 모델 하다가 1장당 0.025달러짜리 모델로 갔는데 1개 생성하자 마자 바로 그림이 글자가 다 깨져나오네요그래서 바로 1장당 0.04달러짜리 모델로 복귀했습니다. 뭐든지 돈만큼하네요 근데 사진생성이 돈이 너무 많이 들어서요 혹시 지금의 절반만 생성되게 하려면 어디가서 뭐를 바꿔야 할까요?
-
미해결백엔드 개발자 성능 개선 초석 다지기
thread pool
common pool을 사용하지 않도록 thread pool을 설정 해야 된다고 주의사항을 적어주셨는데 그 이유는 무엇인가요?그리고 둘의 차이는 onPool-worker-3, pool-1-thread-8 이라고 알려주셨는데 차이가 이거밖에 없는건가요?
-
미해결[2025] SQLD 문제가 어려운 당신을 위한 노랭이 176 문제 풀이
계층형 질의 질문입니다.
다른 강의들이나 교재들 보면 prior 자식 = 부모 는 순방향 이라고 설명해 주시는데이 강의에서만 역방향이라고 설명해 주시네요.특히 노랭이 63번도 정답이 4번인 이유가 "connect by 절에만 사용 가능하다" 이 부분이 틀렸기 때문이라고 나오는데.. 보충 설명이 가능하실까요?
-
미해결타입스크립트로 배우는 리액트(React.js) : 기초부터 최신 기술까지 완벽하게
다음 강의 언제 나올까요?
안녕하세요 쌤짧고 실무에 바로 써먹을 수 있는 좋은 강의 만들어주셔서 감사해요.지금까지 코딩이 제 뇌와 맞지않는다고 느꼈는데 쌤의 짧고 핵심 위주 실습이 반영된 강의 덕분에 많은 도움을 받고있습니다. 다름이 아니라 Next 강의도 예정중이시라는 글을 봤는데 혹시 언제쯤 나오는지 대략적으로라도 알 수 있을까요? 다른 강사님의 강의는 안맞고 수코딩님 강의만 맞아서 next 도 수코딩님 강의로 시작하고싶어서요React query 관련된 강의나 tanstack query, tanstack router 부분은 없는데 이유가 있을까요? 쿼리 부분은 혼자 공부해야하는 파트일까요?종종 단톡방을 운영하시는 강사님을 보았는데 수코딩님 단톡방도 있는지 궁금합니다! 좋은 강의 만들어주셔서 정말 감사해요!
-
미해결프론트 개발자를 위한 백엔드 101 (NestJS, TypeORM)
TypeORM 마이그레이션
우선 typeorm.ts, app.modules.ts 두 파일 코드 복사 붙여넣기 하면app.modules.ts 의TypeOrmModule.forRootAsync({ inject: [ConfigService], useFactory: async (configService: ConfigService) => configService.get('typeorm'), }),useFactory에서 린트에러가 발생합니다.configService.get('typeorm')의 타입이 undefined 일 수도 있어서 에러가 발생하는데 타입 지정해서 서버 실행하면 일단 실행은 됩니다.문제는 이 다음에package.json에 마이그레이션 스크립트 추가 후서버 실행하고 터미널 창 새로 열어서 npm run migration:generate --name=Initial_Migration 명령어 실행하면 migration 관련 파일은 잘 생성이됩니다.내용도 잘 들어가있어요 posts 테이블 만들고 index 들 설정하는 쿼리들 다 제대로 적혀있습니다만 npm run migration:run 명령어 실행시 migrations 테이블은 생성되는데 안에 레코드가 하나도 없고, posts 테이블은 아예 생성이 안됩니다.
-
미해결절대강좌! 유니티6 - 네트워크 게임 개발 마스터클래스 (Part 1)
7강 재생이 안됩니다
다른 강의는 괜찮은 것 같은데 7강만 재생이 안되네요win10 크롬 사용 중이고 시크릿모드에서도 마찬가지로 재생이 안되고 있습니다아이패드 크롬에서도 똑같습니다만 사파리에선 10초 정도 기다리면 소리는 나옵니다.
-
해결됨수익형 AI Agent n8n 전문가 강의, 블로그·쇼츠 자동화
18강 16:12초에서 output 값이 다르게 떠서 막혀버렸습니다 ㅠㅠ
선생님 OUTPUT에서는 message, filename, original_filename, size, download_url, view_url이 뜨는데 저의 OUTPUT에서는 filename 하나만 뜨는 이슈가 있습니다 ㅠㅠ
-
해결됨오브젝트 - 기초편
[5-1] Screening과 Movie의 의존관계에 대한 궁금증 질문입니다.
안녕하세요! 추석에 좋은 강의 잘 듣고 있습니다!5-1 강의 3분 20분초에 보면 Screening은 프로퍼티로 movie를 가지게 되므로 Screening -> Movie의 의존성을 가지게 되는데요이때 Movie는 내부 구현에서 메서드의 파라미터로 Screening을 받는 구조에서 프로퍼티가 아닌 파라미터지만 Movie -> Screening의 의존이 생긴다고 볼 수 있지 않을까요?이렇게되면 Screening <-> Movie의 상호의존성이 생긴다고 볼 수 있을거 같은데 이러한 상호 의존도 괜찮나요?제가 사용하는 언어인 Swift에서는 코드의 양이 조금 늘어나더라도 이 경우 프로퍼티나 파라미터 둘 중에 하나를 프로토콜(인터페이스)로 변경해서 상호 의존성을 끊어주는 방식을 사용하는데 트레이드오프로 생각하고 같은 계층에 속한 모델의 경우 이정도의 상호 의존은 생겨도 놔둘것인지 이러한 중간 객체 추가로 상호의존을 끊을것인지 선택하면 되는걸까요?
-
해결됨실전! 데이터베이스 완전정복 [설계편]
인덱스 사용 패턴 질문
안녕하세요, 강의 중 궁금한 점이 생겨 질문드립니다.GROUP BY 사용 패턴3: 필터링 후 그룹화에서 WHERE status = 'paid' GROUP BY status ORDER BY status처럼 동일한 컬럼을 사용하는 경우, 하나의 인덱스로 효율적으로 처리할 수 있다고 말씀하셨는데요.이 경우 WHERE 절에서 status = 'paid'로 필터링하면, 결과가 모두 동일한 status 값을 가지게 되어 GROUP BY나 ORDER BY를 추가해도 WHERE 절만 사용한 것과 결과가 동일하지 않을까요?궁금한 점:WHERE, GROUP BY, ORDER BY에서 동일한 필드를 사용하는 실제 사용 사례가 있을까요?
-
미해결Spring Boot TDD - 입문부터 실전까지 정확하게
아키텍처와 TDD의 오해에 대해 질문드립니다.
안녕하세요, 강사님! Spring Boot TDD 강의 정말 잘 듣고 있습니다. 강의 내용 중 궁금한 점이 생겨 질문드립니다.보통 Spring에서 개발할 때 Controller-Service-Repository 구조의 레이어드 아키텍처를 많이 사용하는데요, 강의에서는 컨트롤러가 직접 리포지토리의 save 같은 메서드를 호출하면서 비즈니스 로직을 처리하는 경우가 있는 것 같습니다.혹시 이것이 강의의 핵심 내용에 집중하기 위해 코드를 단순화하신 것인지, 아니면 강사님께서 실제로 선호하시는 개발 스타일이신지 궁금합니다. 만약 후자라면 어떤 장점이 있는지 그 이유에 대한 의견을 여쭙고 싶습니다.더불어, "TDD를 잘하려면 인터페이스를 많이 사용해야 한다"는 것이 일종의 오해라는 말씀에 크게 공감했습니다. 그런데 왜 개발자들 사이에서 이런 오해가 생겨나게 된 것인지 그 배경이 궁금합니다.마지막으로 추후에 비즈니스가 복잡해지면 테스트가 깨졌을 때 어디가 문제인지 파악이 어려울 것 같은데요 이에 따른 문제를 어떻게 해결하시나요? 단위테스트를 추가로 작성하시는지도 궁금합니다.
-
미해결해킹 입문부터 중급까지, 한 번에 배우는 웹해킹
https://knock-on.org 로 send()하면 에러가 발생합니다.
https://knock-on.org 로 send()하면 에러가 발생합니다. https://www.knock-on.org로 하니, 에러가 발생하지 않네요. 웹페이지 구성이 변경되어서 그런걸까요?
-
미해결
Why Do We Care So Much About Tiny Digital Sheep?
I’ve been wondering about this for days.Why do I — a fully grown adult with bills, deadlines, and way too many tabs open in my brain — care so much about a game where I guide cartoon sheep through chaotic fields?Why does Crazy Cattle 3D, a silly little mobile game, make me feel something real?It’s absurd when you think about it.But the more I play, the more I realize — maybe it’s not really about the sheep at all.Maybe it’s about us.What Is It That Makes Us Care?The first time I played Crazy Cattle 3D, I laughed so hard I nearly dropped my phone.The sheep ran into fences, rolled into rivers, and got yeeted off bridges like they were auditioning for an action movie.It was chaos. Adorable chaos.But then something strange happened.Somewhere between the laughter and the replays, I started… rooting for them.I didn’t want to lose them anymore.I cared when one fell behind.I felt a little victory when they all crossed the finish line.So why? Why do we care about these tiny, pixelated creatures we’ve never met?Maybe because they remind us of everything fragile and clumsy we’ve ever loved.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
실전문제7-29
https://docs.aws.amazon.com/fsx/latest/LustreGuide/mounting-ecs.html "Mounting FSx for Lustre on an AWS Fargate launch type isn't supported." 라고 나와있는데, 기술적으로 불가능 하다면 그나마 나은 C의 EFS를 선택하는건 어떻게 생각하시는지 궁금합니다.