묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨배달앱 클론코딩 [with React Native]
스타일링 라이브러리
강사님 안녕하세요. 강의 잘 듣고 있습니다!강의에서 스타일링을 하실때 리액트 네이티브 기본 styleSheet를 사용해서 개발하시는데,현재 강의에서 개발하는 토이프로젝트 규모의 앱이 아니라, 실제 서비스용 앱을 개발하실때에도 기본 styleSheet를 사용해서 개발하시는지 아니면 다른 외부 라이브러리를 사용해서 개발하시는지 궁금합니다!next.js 강의에서는 Vanilla Extract를 추천해주셨는데, 리액트 네이티브에서는 Vanilla Extract와 같이 추천하는 스타일링 라이브러리가 있으신지 아니면 기본 styleSheet만으로 충분하다고 생각하시는지 조언들 듣고 싶습니다. 감사합니다!
-
미해결Next.js 15로 완성하는 실전 YouTube 클론 개발
AI 음성 에러 수정 요청
수정 부탁드립니다."에서만 사용할 수 있는 기능입니다."
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
행별 합
이전에는 행별 합을 구할 때df.T를 사용했던 거 같은데sum(axis=1)을 사용해도 되는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 3혼란
선생님 각각의 설명을 들으면 이해가 되고 알겠는데 그걸 어느문제에 어떤 순서로 적용을 시켜야 하는지를 잘 모르겠습니다이건 문제를 보면서 익혀야하는걸까요?
-
해결됨친절한 블렌더 - [LV.2] 모델링 연습
오브젝트모드에서는 안보이는 현상
안녕하세요처음에는 이렇게 벽이 잘 보이는 상태인데요저 창문있는 벽빼고 다 루프컷을 넣어줬을때까지만해도 벽이 오브젝트 모드에서는 잘보였어요 그런데 창문쪽에도 그 나무판자쪽 까지 루프컷 주고나니까 오브젝트모드에서 바로 안보여요.... 그래서 아 밑에선을 올리고 익스트루드해봐야겠다하고선을 올리기만하고 오브젝트모드에서 확인해보았는데 바로 저렇게 저 창문벽빼고 나머지 벽이 다 안보여요...에디트모드 들어가면 벽들이 전부 잘 있어요근데 오 브젝트 모드에선 자꾸 이렇게 안보여요 어떻게 해결해야하나요?..................
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
pinecone 임포트 부분이 에러가발생합니다
파이썬 버전 3.10.11입니다윈도우 vscode에서 테스트해보고 있어요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
구름예시 3번문제
구름예시문제 작업형3에서 마지막 독립표본t검정 하라고해서 모수적검정 해도 되는지 확인 차 로그리지스틴 샤피로검정 했는데 1집단 샤피로검정 p값이 0.035네요 이런 경우 만휘트니검정을 해야하나요? 아니면 문제에서 제시한 대로 그냥 모수적검정인 독립표본t검정을 해야하는지비모수적검정인 만휘트니유 검정을 해야하는지 궁금합니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
시험에서 답안지 작성시 풀이과정을 꼭 써야 하나요?
이번에 시험보고 탈락을 한 수험자입니다.답안 작성시 풀이과정과 답을 함께 작성해야 한다고 해서 적잖게 당황하여 시간이 모자랐었는데 결국 떨어졌네요. 제 질문은 풀이과정을 반드시 써야하나요?'답' 칸을 제외한 나머지 공간에 동그라미와 밑줄을 치며 낙서를 해도 되나요?풀이과정을 쓸 수 있는 공간 자체 부족해 보였는데 답답합니다. 속시원히 누가 얘기좀 해주면 좋겠습니다.
-
미해결
개발 강의 추천 부탁드립니다.
[3줄 요약]비전공자로 10년 전 JSP, PHP 기반 개발 경험이 있으며, 현재는 헤드헌터로 활동 중입니다.React + Java(Spring) + MongoDB 기반으로 헤드헌터 업무에 활용할 수 있는 웹/모바일 플랫폼을 직접 개발하고자 합니다.기술 공백과 최신 스택(Git 등) 부족으로 학습 방향 및 인프런/부트캠프 강의 추천이 필요합니다. [본문]안녕하세요.현재 40세, 비전공자(경영학과)이며, 현재는 헤드헌터로 활동 중입니다.12년 전 독학과 오프라인 Java 강의(6개월) 수강 후 JSP 기반 웹 개발을 약 6개월,또한 웹호스팅 업체에서 리눅스/윈도우 서버 운영과 PHP 유지보수를 약 1년간 경험했습니다.퇴사 후 HTML5, CSS3, PHP, MySQL 기반으로 1인 창업 프로젝트(플랫폼)를 개발 경험도 있으나,프론트엔드 실무 한계로 인해 학원과 인강으로 보완했지만 실무 수준에 도달하기는 어려웠습니다.이후 창업을 접고 현재는 헤드헌터 일을 8년째 하고 있습니다. 최근 AI 도구(GPT, CURSOR 등)로 인해 1인 개발의 장벽이 많이 낮아졌다고 느꼈고,사이드프로젝트로 다시 한번 플랫폼을 만들어보자는 생각에 도전하고 있습니다. 우선 서버는 아마존이나 네이버 등 1년 동안 무료로 제공하는 클라우드를 생각하고 있습니다. [프로젝트 방향]목표: 헤드헌터 업무에 활용 가능한 게시판 중심의 웹 & 모바일 플랫폼프론트엔드: React백엔드: Java(Spring), 일부 Python (데이터 분석용)DB: MongoDB (NoSQL 기반)기능: 기능: 엑셀 데이터 업로드/필터링, 검색, 태그, 동료와 공유 및 협업플랫폼: PC 웹 + Android 우선 대응 [현재 느끼는 기술적 한계]10년 이상의 개발 공백 → 신규 기술 감각이 거의 없음Git, 협업 툴, 배포 등 실무적인 스택을 제대로 써본 적 없음과거 창업 경험 덕에 HTML/CSS/JS 기본 흐름은 이해주당 약 20시간 정도 학습 및 개발 시간 확보 가능 [현재 계획 중인 학습 우선순위]모든 강의를 다 듣기엔 시간 제약이 있으므로, 아래와 같은 것부터 선택적으로 수강하려고 합니다.React 중심 프론트엔드 학습 – 프로젝트 기반으로 실습 위주Spring 백엔드 학습 – REST API + MongoDB 연동 포함Git, 배포, 협업 도구 등 실무 환경 익히기Python 기초 + 데이터 분석 활용 (선택적)(Node.js나 웹 자동화는 현재는 후순위입니다) 시간상 모든 강의를 다 들을 수는 없어, 섹션별로 필요한 내용만 골라 수강할 수 있는 방식이 있는지 궁금합니다.또한 혼자서 진행하는 프로젝트이기에, 코드 리뷰나 피드백 커뮤니티가 병행되는 부트캠프가 있다면 병행하고 싶습니다.비슷한 경험을 하신 분이나, 인프런/코드잇 등에서 유익했던 강의나 커뮤니티가 있다면 조언 부탁드립니다 감사합니다. #사이드프로젝트 #React #JavaSpring #MongoDB #프론트엔드 #백엔드 #풀스택도전#개발공백극복 #IT학습로드맵 #인프런강의추천 #코드잇추천
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
문제 3번 map을 이용한 풀이에서도 import numpy 필요하지 않나요??
문제 3번 map을 이용한 풀이에서도 import numpy 필요하지 않나요?? 검색해보세요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
train_test_split random_state 질문입니다.
데이터 분리에서 random_state 2025와 random_state 0를 사용할 때 각각 학습 검증값이 다른데 이것도 모델처럼 하이퍼파라미터(max_depth, n_estimators)를 수정해가며 검증값을 측정하는게 맞나요 ?체험형 문제에서 X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size = 0.2, random_state = 2025)로 작성하니 rmse 값이 923이 나왔고, random_state를 0으로 바꾸니 800대가 나오네요.
-
해결됨2025년 CPPG 개인정보관리사 자격증 취득하기 (개정안 반영)
유출 통지와 신고 시점
신용정보법에서 개인신용정보가 누설되었음을 알게 되었을 때 통지나 신고 시점이 강의에서는 5일 이내라고 되어있는데 신정법 시행령에서 해당 내용을 찾을 수 없었습니다. pdf 개념서에는 72시간 이내라고 되어있는데 72시간이내가 맞는 걸까요?
-
해결됨한 번에 끝내는 자바스크립트: 바닐라 자바스크립트로 SPA 개발까지
최종프로젝트 상세페이지 출력 오류 문의드립니다!
세션 9. 최종 프로젝트cityDetail 개발-2 에서https://trip-wiki-api.vercel.app/ 강사님이 알려주셨던 링크에는 상세페이지 이미지와 받는 정보가 없습니다! 어떻게 상세페이지를 출력할 수 있나요? Japan을 검색창에서 검색하고 상세페이지를 눌렀지만 아무런 정보가 출력되지 않고 있습니다! import Header from "./components/Header.js"; import RegionList from "./components/RegionList.js"; import CityList from "./components/CityList.js"; import CityDetail from "./components/CityDetail.js"; import { request, requestCityDetail } from "./components/api.js"; export default function App($app) { const getSortBy = () => { if (window.location.search) { return window.location.search.split("sort=")[1].split("&")[0]; } return "total"; }; const getSearchWord = () => { if (window.location.search && window.location.search.includes("search=")) { return window.location.search.split("search=")[1]; } return ""; }; this.state = { startIdx: 0, sortBy: getSortBy(), region: window.location.pathname.replace("/", ""), searchWord: getSearchWord(), cities: "", currentPage: window.location.pathname, }; const renderHeader = () => { new Header({ $app, initialState: { currentPage: this.state.currentPage, sortBy: this.state.sortBy, searchWord: this.state.searchWord, }, handleSortChange: async (sortBy) => { const pageUrl = `/${this.state.region}?sort=${sortBy}`; history.pushState( null, null, this.state.searchWord ? pageUrl + `&search=${this.state.searchWord}` : pageUrl ); const cities = await request( 0, this.state.region, sortBy, this.state.searchWord ); this.setState({ ...this.state, startIdx: 0, sortBy: sortBy, cities: cities, }); }, handleSearch: async (searchWord) => { history.pushState( null, null, `/${this.state.region}?sort=${this.state.sortBy}&search=${searchWord}` ); const cities = await request( 0, this.state.region, this.state.sortBy, searchWord ); this.setState({ ...this.state, startIdx: 0, cities: cities, searchWord: searchWord, }); }, }); }; const renderRegionList = () => { new RegionList({ $app, initialState: this.state.region, handleRegion: async (region) => { history.pushState(null, null, `/${region}?sort=total`); const cities = await request(0, region, "total"); this.setState({ ...this.state, startIdx: 0, sortBy: "total", region: region, cities: cities, searchWord: "", currentPage: `/${region}`, }); }, }); }; const renderCityList = () => { new CityList({ $app, initialState: this.state.cities, handleItemClick: async (id) => { history.pushState(null, null, `/city/${id}`); this.setState({ ...this.state, currentPage: `/city/${id}`, }); }, handleLoadMore: async () => { const newStartIdx = this.state.startIdx + 40; const newCities = await request( newStartIdx, this.state.region, this.state.sortBy ); this.setState({ ...this.state, startIdx: newStartIdx, cities: { ...this.state.cities, cities: [...this.state.cities.cities, ...newCities.cities], isEnd: newCities.isEnd, }, }); }, }); }; const renderCityDetail = async (cityId) => { try { const cityDetailData = await requestCityDetail(cityId); new CityDetail({ $app, initialState: cityDetailData }); } catch (err) { console.log(err); } }; const render = async () => { const path = this.state.currentPage; $app.innerHTML = ""; // 상세 페이지로 이동 if (path.startsWith("/city/")) { const cityId = path.split("/city/")[1]; renderHeader(); renderCityDetail(cityId); } else { renderHeader(); renderRegionList(); renderCityList(); } }; this.setState = (newState) => { this.state = newState; render(); }; const init = async () => { const path = this.state.currentPage; // 메인 페이지 if (!path.startsWith("/city")) { const cities = await request( this.state.startIdx, this.state.region, this.state.sortBy, this.state.searchWord ); this.setState({ ...this.state, cities: cities, }); } // 상세페이지 else { render(); } }; window.addEventListener("popstate", async () => { const urlPath = window.location.pathname; const prevRegion = urlPath.replace("/", ""); const prevPage = urlPath; const prevSortBy = getSortBy(); const prevSearchWord = getSearchWord(); const prevStartIdx = 0; const prevCities = await request( prevStartIdx, prevRegion, prevSortBy, prevSearchWord ); this.setState({ ...this.state, startIdx: prevStartIdx, sortBy: prevSortBy, region: prevRegion, currentPage: prevPage, searchWord: prevSearchWord, cities: prevCities, }); }); init(); } //API.js 코드입니다!export default function CityDetail({ $app, initialState }) { this.state = initialState; this.$target = document.createElement("div"); this.$target.className = "city-detail"; $app.appendChild(this.$target); const getScoreColor = (score) => { // let scoreNumber = parseInt(score); if (score >= 4) return "green"; if (score >= 3) return "yellow"; return "red"; }; this.template = () => { let cityData = this.state.CityDetail; let temp = ``; if (cityData) { temp = `<div class="image-banner"> <img src="${cityData.image}"/> <div class="city-name"> <div class="city">${cityData.city}</div> <div class="country">${cityData.region} / ${cityData.country}</div> </div> </div> <div class="progress-container"> <div class="info-item"> <div class="label">⭐ Total Score</div> <div class="progress-bar" score-color="${getScoreColor( cityData.total )}" style="--score:${cityData.total * 20}%"></div> </div> <div class="info-item"> <div class="label">💵 Cost</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.cost )}" style="--score:${cityData.info.cost * 20}%"></div> </div> <div class="info-item"> <div class="label">😆 Fun</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.fun )}" style="--score:${cityData.info.fun * 20}%"></div> </div> <div class="info-item"> <div class="label">🚓 Safety</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.safety )}" style="--score:${cityData.info.safety * 20}%"></div> </div> <div class="info-item"> <div class="label">🌐 Internet</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.internet )}" style="--score:${cityData.info.internet * 20}%"></div> </div> <div class="info-item"> <div class="label">💨 Air Condition</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.air )}" style="--score: ${cityData.info.air * 20}%"></div> </div> <div class="info-item"> <div class="label">🍜 Food</div> <div class="progress-bar" score-color="${getScoreColor( cityData.info.food )}" style="--score: ${cityData.info.food * 20}%"></div> </div> </div> `; } return temp; }; this.render = () => { this.$target.innerHTML = this.template(); }; /* this.setState = (newState) => { this.state = newState; this.render(); }; */ this.render(); } //cityDetail.js 상세페이지 코드입니다!
-
미해결3D 모델링 입문을 위한 라이노(Rhino) '꿀팁' Part.1
강의자료
강의 학습자료 암호가 어떻게 되나요?
-
해결됨[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
안드로이드스튜디오 버전이 어떻게 되는지요?
앱을 만들고 싶어 강의를 시작했습니다.이해하기 쉽도록 강의가 되어 있어서 좋네요그런데 강의에서 보여지는 안드로이드스튜디오 소스 스타일과제가 다운받은 android-studio-2024.3.2.15-windows.exe 버전이 상이해서 문의 드립니다. new project->empty project로 만들고 나면 layout에는 activitymain도 없고, mainactivity의 소스 내용도 상이합니다.안드로이드스튜디오를 이제 처음 켜보니 어떻게 해야할지 모르겠어요..ㅠㅠ 안드로이드스튜디오 버전을 강의에서 사용한 버전으로 바꿔야 하는지... 아님 현재 버전을 이용할 경우 어떻게 하면 강의를 잘 따라갈수 있는지...난관에 붙혀서 문의 드립니다.
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버쇼핑 크롤링 예제 관련
네이버 쇼핑 크롤링예제 부분에서 그냥 requests로 한번 접속해보고 그 다음에 셀레니움으로 접속해봤는데 둘다 접속 제한 페이지만 나옵니다.ㅜㅜ. 여러번 시도 한것도 아닌데 지금 시점 네이버쇼핑이 원래 빡시게 막아 놓은건가가요? 방법이 없나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4회기출 작업형2 이렇게 푸는게 맞나요..?
# 라이브러리 불러오기 import pandas as pd # 데이터 불러오기 train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/4_2/train.csv") test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/4_2/test.csv") #preprocessing print('변경전:',train.shape, test.shape) train = train.drop('ID', axis =1 ) target = train.pop("Segmentation") test_id = test.pop('ID') print('변경후:',train.shape, test.shape) data = pd.concat([train, test], axis = 0) cols = data.select_dtypes(include = "object").columns #encoding from sklearn.preprocessing import LabelEncoder for col in cols: la = LabelEncoder() data[col] = la.fit_transform(data[col]) train = data[:len(train)].copy() test = data[len(train):].copy() print(train.shape, test.shape) print(train.head(3)) #분할 from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size = 0.2, random_state = 0) print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) #랜포 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state = 1006 , max_depth=7, n_estimators = 1000) rf.fit(X_tr, y_tr) pred = rf.predict(X_val) len(pred) from sklearn.metrics import accuracy_score, f1_score #점수측정 f1 = f1_score(y_val, pred, average='macro') acccuracy = accuracy_score(y_val, pred) print('f1:',f1) print('acccuracy:', acccuracy) #rf 기본 0.4946975843769027 # rf : max_depth=7, n_estimators = 1000 # f1: 0.5406747794301512 # acccuracy: 0.5566391597899475 # lgb # f1: 0.5227625161214081 # acccuracy: 0.536384096024006 pred = rf.predict(test)#실제예측 pd.DataFrame({'ID':test_id,'Segmentation':pred}).to_csv("00000.csv", index = False) pd.read_csv("00000.csv")하이퍼파라미터 여러가지 넣으면서 f1스코어 테스트하면서 해봤는데 적절히 풀었는지 궁금합니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
강의별 pdf파일에는 코드문제, 답만 적혀있던데
강의마다 시작부터 진행되는 개념관련된 pdf는 따로 없는건가요?
-
미해결OpenCV 강좌 - 컴퓨터 비전
cmake/tbb
error in configuration process, project files mayy be invalid경고문구와 함께 이렇게 되는데 어떻게 해야하나요?ㅠㅠ
-
미해결프론트엔드 날개달기: Vue, React 배우기 전에 꼭 알아야하는 지식
캡쳐링을 막아야 하는 경우는 어떤 경우가 있을까요?
안녕하세요! 일단 멋진 강의 감사합니다. 정말 잘 듣고있습니다 🙂강의 수강 중 하나 제안하고 싶은게 생겨서 질문 남기게 되었습니다. 이벤트 캡쳐링과 버블링에 대한 개념을 쉽게 설명해주셨는데요, 이 캡쳐링과 버블링이 실제 코드 동작시에 어떤 영향을 주는지도 설명에 포함되면 좋을것 같았습니다!예를들면 버블링의 경우는 클릭이벤트가 타겟요소에 부모까지 영향을 받아서 의도치 않는 동작이 발생될 수 있고, 그걸 막기 위해서 강의에서처럼 stopPropagation()을 해주는걸로 알고 있습니다.그렇다면 캡쳐링에 경우는 어떤 경우에 문제가 되고 언제 stopPropagation()을 사용하면 좋은지 궁금해지더라구요.강사님의 귀에 쏙쏙 박히는 설명에 한 줄 추가되면 좋을것 같아 의견 남겨보았습니다. 오늘도 고생 많으셨습니다~~