묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결아두이노와 떠나는 사물인터넷 여행 - 아두이노 입문부터 IoT 중급까지!
학습 준비물 구매 관련
안녕하세요, 얼마 전 학습 시작한 수강생입니다. 아두이노 기초 패키지를 구매하고 싶은데, 강의 창에서 아두이노 기본학습 패키지 링크로 접속해보니 일시적으로 운영이 중지되었더라구요.. 다른 구매 링크 남겨주시면 감사하겠습니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
로컬에서 권한문제? 같은 에러가 있습니다.
안녕하세요 제로초님 다름아니라 사이트 배포후에 계속 업데이트를 하다가 git 에러가 발생하여 수정한 이후에 개발자모드에서 다시금 사이트를 돌려보는데 이상한 에러가 떠서 문의드립니다. 무언가 권한문제인 것 같은데 front에서 back으로 연동이 안되는 문제가 발생한 것 같습니다. (SSR부터 안됩니다) 리덕스 개발툴에서 보니 Host must be 127.0.0.1:3065라는 글이 떠서 Postman 작동시켜서 보니 백앤드는 따로 작동잘 하는 것 같습니다. console창에서 확인해보니 이렇게 문제가 뜨는 것 같은데 아무래도 권한문제인건 아닌지.. 확인좀 부탁드립니다. ㅠ 프론트앤드에서 화면은 잘 나옵니다!
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 리덕스, saga 관련 질문이 있습니다.
안녕하세요 다름이아니라 반복적인 request, success, failure 작성하다 진이 빠진 1인 입니다... 확실히 이렇게하면 말씀대로 diff 에서 이벤트 동작하나하나 마다 3개의 상태로 관리할 수 있어 오류에 대한 유지보수할 때 편할 것 같긴한데 너무 코드가 길어지는 노가다성 ... (제가 개발자인지 복붙만 하는 사람인지 헷갈리게 되는...), 코드가 길어짐에 따른 성능 저하? 가 있는거 같아요... 회사급에 실제 서비스를 만들때도 리덕스 이렁형태의 상태관리 코드로 관리하나요? 친절한 강의 정말 잘 보고있습니다.
-
미해결홍정모의 따라하며 배우는 C언어
포인터 배열 NULL 초기화
안녕하세요. 포인터 변수에서와 마찬가지로 포인터 배열을 선언할 때 각 element들을 특정한 값으로 초기화 하지 않는 경우, 항상 NULL로 초기화 시켜주는 게 좋을 것 같은데.. 포인터 배열의 size가 큰 경우에 포인터 배열을 선언할 때 모든 element들을 한꺼번에 NULL로 초기화 시키는 방법이 있을까요..? 감사합니다.
-
미해결배달앱 클론코딩 [with React Native]
제로초님 안녕하세요~ 안드로이드 스튜디오 설정에서 질문드립니다
강의수강을 오늘부터 시작했습니다.^^ 다름이 아니라 안드로이드 스튜디오에서 설정하는 부분 질문드립니다. 제가 맥(인텔칩)으로 환경설정을 하던 중에 SDK Tools 탭에서 intel X86 Emulator Accelerator 설치를 시도했습니다. 그런데 아래와 같은 메시지가 뜨면서 설치가 실패했습니다. 'Unable to install Intel® HAXM. HAXM can only be installed on Windows or Mac. Please file a bug against Android Studio.' 강의에서 이 부분 설치해야 한다고 하셨는데 어떻게 해결할 수 있을지 궁금합니다:)
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
강사님 강의 잘 듣고 있습니다. 질문 하나 드리겠습니다.
워낙 강의를 쉽게 잘 해주셔서 감사하게 생각하고 있습니다. 금번 강의 끝나면 바로 스파크학습하려고 구매해둔 상태입니다. 강사님이 강의하신 거라면 뭔가 많이 기대가 되네요 질문 드리고 싶은건 1. CNN 의 경우 입력된 이미지가 어떤 것인지 판단할 수 있는 필터를 생성해 내는 과정이 학습과정이고 이 과정 즉 원본이미지와 필터 사이에서 생성되는 것이 FutureMap으로 알고 있습니다. 나중에 이렇게 생성된 필터를 바탕으로 이미지가 들어왔을 때 학습된 필터를 적용해 이미지를 판별해 내는 과정으로 이해하고 있습니다. 2. Faster CNN 뿐만 아니라 SSD 에서도 강사님께서는 컴퓨터가 제시한 Anchor box 와 Ground Truth 간의 좌표값의 차이를 최소화 시키는 과정이 학습 과정이라고 하셨는데 잘 이해가 되질 않습니다. 좌표값(Ground Truth)이란것은 이미지가 바뀌면 바뀌는 것인데 좌표값을 왜 학습 시키나? 예로 훈련중에는 (1,1,10,10) 좌표에 있었지만 실제 prediction 할 때는 object 의 위치는 전혀 다른 좌표일거 같은데 이게 이해가 되질 않았습니다. 강사님께서 말씀하신 내용 안에 다른 의미가 있을거 같아 질문 드립니다. 즉 GT 영역안에 해당하는 Future Map 값과 Anchor box 가 나타내는 영역의 Feature Map 값을 최소화 시키는 작업을 하는 건 아닌지 ? 등 나름의 상상을 하다 보니 막막하기만 해서요 강사님 설명 부탁드립니다. 즉 좌표값을 일치시킨다는 구체적 의미와 그걸로 학습된 모델이 향후 입력되는 즉 전혀 다른 이미지의 좌표와 무엇인지를 판별해 낼 수 있는지 설명 부탁드릴수 있는지요 ? 꼭 답변 부탁드립니다.
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버지도 검색어입력중 태그 못찾는 문제
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 강의 잘 듣고있습니다. 다름아니라 네이버지도 크롤링 검색어 입력구현 과정중 검색박스를 찾는 과정에서 생긴 질문인데요, 강의자분께서 하신대로 클래스 선택자(Input.input_serach)를 이용하면 잘 찾아지나, 똑같은 코드에 Id선택자로만 변경 할 시 검색어 입력이 제대로 구현되질 않습니다. 사실 클래스와 아이디가 모두 있을때, 아이디는 보통 고유한 값이기에 아이디를 쓰는게 좋다!라고 배워온 기억이 있어서 아이디로 시도했지 애초에 클래스로는 할 생각을 못했구요.... 크롬 개발자모드의 copy selcector 기능도 '#input_search1645599001993' 의 아이디로 선택하길래 오랫동안 고민하다가 안돼서 강의 들어서 클래스로 하면 되긴 하는구나,,,, 를 확인은 했습니다만 왜 ID선택자로는 안되고 클래스 선택자로 밖에 구현이 안되는지 궁금합니다! 아래는 강의듣고 복기한 코드에서 클래스 선택자를 아이디 선택자로만 바꾼 코드입니다. 감사합니다. from selenium import webdriver from selenium.webdriver.common.keys import Keys import time browser = webdriver.Chrome('./chromedriver') browser.get('https://map.naver.com/v5/') browser.implicitly_wait(10) #browser.maximize_window() # 검색창 입력 #search = browser.find_element_by_css_selector("input.input_search") search = browser.find_element_by_css_selector("input#input_search1645599001993") search.click() # 클릭 굳이 없어도 실행된다 time.sleep(1) search.send_keys('강남역 맛집') time.sleep(1) search.send_keys(Keys.ENTER) time.sleep(2)
-
해결됨[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
실행은 잘되는데요 prompt만 입력하면
pyautogui 설치하고 입력받는 prompt글자만 쓰면 그줄 아랫줄은 다 회색으로 나오네요 지우면 다시 다 알록달록하게 잘나오고요 근데 오류도 안뜨고 실행도 잘됩니다. 입력새창 결과도 잘나와요 이거 왜이러는 걸까요..?; 아무것도 안만졌는데 이틀 안켜다가 다시 켜니 다시 색깔이 나오네요...이유를 모르니 답답 ㅠㅠ
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
라우터 관련 문의드립니다
app.use는 app.get과 다르게 상위 주소에도 걸립니다. /app.css면 /에도 걸립니다. 라고 예전에 답변을 달아주셨는데 app.use('/' , indexRouter); app.use('/user',userRouter) 에서 주소 localhost/user 로 접속하였을 때 먼저 상위 / 에 걸려야하는거 아닌가요?? 정확히 user로 가길래 문의드립니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
경로변수명에 대해서 질문있습니다.
th:href="@{/basic/items/{itemId (itemId=${item.id})}" 의 경우는 경로변수명이 itemId로 되는데 리터럴 대체로 변경하면 경로변수명이 어떻게되는건가요? th:href="@{|/basic/items/${item.id}|}" 프로퍼티의 필드인 id가 되는건지... 잘 모르겠습니다 ㅜ
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
재현가능한 실험에 대한 질문입니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요 안녕하세요, 강의 재미있게 듣고 있습니다. 최근에는 출간된 딥호형님의 책도 구매 예정이에요~ 다름이 아니라, cifar10 터미널 실행 코드에 관한 문의입니다. 해당 코드가 train과 eval시의 test score가 다르게 나와서 https://daebaq27.tistory.com/72 블로그를 참조하여 seed를 고정시키는 func을 main,py의 시작에 실행시키도록 수정했어요 이 이후로는 test score의 경우는 재현이 되는데 training 후 마지막에 나오는 train score과 evaluation 후 마지막에 나오는 train score가 재현이 불가능해서요. 혹시 원인과 솔루션 알 수 있을까요?
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
faker 실행이 안됩니다.
terminal에서 npm i faker 설치하고 post.js 상단에 import 해주었는데 계속 오류메시지가 떠서요,, 어떻게 해결할수 있을까요? reducers > post.js import shortId from 'shortid'; import produce from 'immer'; import faker from 'faker'; export const initialState = { mainPosts: [{ id: 1, User: { id: 1, nickname: '레니', }, content: '첫 번째 게시글 #해시태그 #익스프레스', Images: [{ id: shortId.generate(), src: 'https://cdn.pixabay.com/photo/2022/02/01/11/48/woman-6986050_960_720.jpg', }, { id: shortId.generate(), src: 'https://cdn.pixabay.com/photo/2019/03/27/15/24/animal-4085255__340.jpg', }, { id: shortId.generate(), src: 'https://cdn.pixabay.com/photo/2022/02/09/20/52/labrador-retriever-7004193__340.jpg', }], Comments: [{ id: shortId.generate(), User: { id: shortId.generate(), nickname: 'nero', }, content: '너무 반가워요!', }, { id: shortId.generate(), User: { id: shortId.generate(), nickname: 'hero', }, content: '유익한 내용입니다', }] }], mainPosts: [], imagePaths: [], hasMorePosts: true, loadPostsLoading: false, loadPostsDone: false, loadPostsError: null, addPostLoading: false, addPostDone: false, addPostError: null, removePostLoading: false, removePostDone: false, removePostError: null, addCommentLoading: false, addCommentDone: false, addCommentError: null, }; initialState.mainPosts = initialState.mainPosts.concat( Array(20).fill().map(() => ({ id: shortId.generate(), User: { id: shortId.generate(), name: faker.name.findName() }, content: faker.lorem.paragraph(), Images: [{ src: faker.image.imageUrl(), }], Comments: [{ User: { id: shortId.generate(), nickname: faker.name.findName() }, content: faker.lorem.sentence(), }], })), ); export const LOAD_POSTS_REQUEST = 'LOAD_POSTS_REQUEST'; export const LOAD_POSTS_SUCCESS = 'LOAD_POSTS_SUCCESS'; export const LOAD_POSTS_FAILURE = 'LOAD_POSTS_FAILURE'; export const ADD_POST_REQUEST = 'ADD_POST_REQUEST'; export const ADD_POST_SUCCESS = 'ADD_POST_SUCCESS'; export const ADD_POST_FAILURE = 'ADD_POST_FAILURE'; export const REMOVE_POST_REQUEST = 'REMOVE_POST_REQUEST'; export const REMOVE_POST_SUCCESS = 'REMOVE_POST_SUCCESS'; export const REMOVE_POST_FAILURE = 'REMOVE_POST_FAILURE'; export const ADD_COMMENT_REQUEST = 'ADD_COMMENT_REQUEST'; export const ADD_COMMENT_SUCCESS = 'ADD_COMMENT_SUCCESS'; export const ADD_COMMENT_FAILURE = 'ADD_COMMENT_FAILURE'; export const addPost = (data) => ({ // 동적액션크리에이터 type: ADD_POST_REQUEST, data, }) export const addComment = (data) => ({ type: ADD_COMMENT_REQUEST, data, }) const dummyPost = (data) => ({ id: data.id, content: data.content, User: { id: 1, nickname: '레니', }, Images: [], Comments: [], }); const dummyComment = (data) => ({ id: shortId.generate(), content: data, User: { id: 1, nickname: '레니', }, }); // 리듀서 : 이전상태를 액션을 통해 다음 상태로 만들어내는 함수( 불변성은 지키면서 ) const reducer = (state = initialState, action) => produce(state, (draft) => { switch (action.type) { case ADD_POST_REQUEST: draft.addPostLoading = true; draft.addPostDone = false; draft.addPostError = null; break; case ADD_POST_SUCCESS: draft.addPostLoading = false; draft.addPostDone = true; draft.mainPosts = unshift(dummyPost(action.data)); break; case ADD_POST_FAILURE: draft.addPostLoading = false; draft.addPostError = action.error; break; case REMOVE_POST_REQUEST: draft.removePostLoading = true; draft.removePostDone = false; draft.removePostError = null; break; case REMOVE_POST_SUCCESS: draft.removePostLoading = false; draft.removePostDone = true; draft.mainPosts = draft.mainPosts.filter((v) => v.id !== action.data); break; case REMOVE_POST_FAILURE: draft.removePostLoading = false; draft.removePostError = action.error; break; case ADD_COMMENT_REQUEST: draft.addCommentLoading = true; draft.addCommentDone = false; draft.addCommentError = null; break; case ADD_COMMENT_SUCCESS: { const post = draft.mainPosts.find((v) => v.id === action.data.postId); post.Comments.unshift(dummyComment(action.data.content)); draft.addCommentLoading = false; draft.addCommentDone = true; break; // const postIndex = state.mainPosts.findIndex((v) => v.id === action.data.postId); // const post = { ...state.mainPosts[postIndex] }; // post.Comments = [dummyComment(action.data.content), ...post.Comments]; // const mainPosts = [ ... state.mainPosts]; // mainPosts[postIndex] = post; // return { // ...state, // addCommentLoading: false, // addCommentDone: true, // }; } case ADD_COMMENT_FAILURE: draft.addCommentLoading = false; draft.addCommentError = action.error; break; default: break; } }); export default reducer;
-
미해결RPA로 자동화 천재되기 (UiPath 응용편)
write range 에서 오류
말씀해주신 것 처럼, 데이터 스크랩핑 후 write range 를 통해 엑셀 문서에다 작성하려했는데 다음과 같은 에러 메세지가 떴습니다. "write range 파일에 손상된 데이터가 있습니다" 제가 생각할땐 엑셀파일이 문제인 것 같은데 저희 회사에서는 엑셀을 저장하거나 가공하면은 보안문서로 lock이 되긴하는데 혹 그것때문일까요??
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃헙 요청드립니다.
인프런아이디 : sgirl012@naver.com 인프런이메일 : sgirl012@naver.com 깃헙아이디 : song619@gmail.com 깃헙 Username : hanys619
-
미해결mongoDB 기초부터 실무까지(feat. Node.js)
한가지 궁금한 점이 있습니다~~
안녕하세요 강의 잘 보고 있습니다! 질문1) 5분 54초에 후기의 블로그엔 인덱스가 안걸려있다는 말씀이 지금 구조에 comments 아래 _id: ObjectId('~~') <- 인덱스처리되어있음 blog: ObjectId('~~') <- 인덱스 처리 안되어있음..그래서 메모리적음 이 말씀이실까요 ? 질문2) 관계라는게 코드상에서 어떤 관계인지 잘 이해가 안가네요 ㅠㅠ 가상필드 만들고 blog: type: Types.ObjectId, ref: 'blog' 연결하고 api 에서 populate로 한게 관계설정한거라고 보면 될까요 ?
-
미해결만들면서 배우는 리액트 : 기초
다른 이미지도 불러오고 싶어요!!
참고하여서 따라 해보고 있는데 제가 다른 open api 서버에서 이미지를 불러와서 그걸 긁어서 cost cat1에 넣으면 고양이라고 하는 이름의 text는 뜨는데 이미지 자체는 불러오지 못 합니다. 제가 이해가 부족하여서 그런것일 수 도 있지만 혹시 고양이 이미지 말고 다른 이미지는 어떻게 불러오려면 어떻게 해야하는지 알려주실 수 있을까요?
-
미해결홍정모의 따라하며 배우는 C언어
continue와 버퍼
1. continue도 break처럼 가장 마지막 루프에 한해서 적용된다고 생각해도 되나요? 2. 버퍼의 존재는 한 프로그램 당 하나인가요? 예제의 해답에서 큰 while문 안에 마지막에 while문을 이용해서 버퍼 내의 다른 글자들은 다 뺴준다고 하셨는데요 while (getchar()!= '\n') { continue; } 큰 while과 그 안에 작은 while이 버퍼를 공유하는 것 같던데 한 루프 내라서 공유되는건지 한 프로그램 내에서 공유되는것인지 궁금합니다. 3. 저는 c=getchar()와 scanf("%c", c)는 궁극적으로 같다고 생각했었는데 while문의 조건을 놓고 봤을때 while (getchar...)는 입력된 문자들이 어떤 문자인지를 구별 할 수 있는 반면 while (scanf(..))는 입력된 값들이 형식 지정자에 부합하는 값인지 그 읽어낼 수 있는지의 여부(?)를 알려준다는 차이가 있다고 이해했는데 맞는지 궁금합니다..!
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
이미지를 div로 묶는 부분 관련해서 질문 드립니다!
안녕하세요 선생님~~!! html 구조 작성 중 궁금한 것이 있어 질문드립니다. html 이미지 작성 부분? 에서 이렇게 이미지를 하나하나 div로 묶어주셨는데요, 혹시 이런 식으로 하나의 div 안에 이미지를 모두 넣고, 이미지 자체에 클래스를 넣어서 사용하는 것과는 어떤 차이가 있을까요?? 후자는 형제 선택자 사용의 문제도 있지만, 전자의 html이 후자의 html 더 사용하기 편하고 깔끔하기 때문에 이미지를 하나하나 div로 묶어 주신 건가요?? 전자와 후자의 차이가 궁금합니다!!!
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 영화 사이트 만들기
쿼리? .exec
결과값 나타낼때 if문 말고 쿼리? .exec 차이점이 뭔가요??
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
aws lightsail 서버에 올릴 때 package.json내 script 설정 방법 문의
강의를 통해 많이 배우고 있습니다. 감사합니다. ^^~~ mongodb가 회사에서 접속이 안되는 이슈가 있어 (보안이슈) aws lightsail에 올려 강의를 따라하며 공부하려 환경설정 중에 있습니다. 서버에 boilerplate 다운받아 mongodb 설정 완료하고 콘솔에서는 DB connected 까지 확인했으나, 고정 IP로 접속해보아도 페이지가 보이지 않네요.... package.json의 script 부분에 production 시 설정 방법 문의 드립니다.