묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
TCP 프로토콜에 대해 더 여쭤보고 싶습니다
OnRecvCompleted 콜백으로 오는 시점이 궁금합니다 커널에서 어느시점에 해당 소켓에 이벤트를 넘겨주는건가요? 수신버퍼에 조금이라도 차있고 해당 프로그램의 소켓의 순서가 되었을 때 프로그램에 넘겨주는건가요? 1. TCP 특성상 데이터 경계가 없다고 얘기해주셨는데, 그럼 어느시점에 프로그램에게 Recv 이벤트를 알려주는건지 궁금합니다. 2. MSS(1460byte) 보다 큰 App Payload를 TCP에 넘기면 TCP에서 패킷을 MTU 크기만큼 쪼게 나눠 보내는 걸로 알고 있는데요 이때에 나눠받을 때 일부분도 수신버퍼에 들어가고 Recv로 오게되나요? 아니면 쪼게진 패킷을 모두 받아야 수신버퍼에 넣고 어플리케이션으로 넘겨주고 이때 OnRecvCompleted 콜백이 호출되나요? 40byte 를 보냈으나 40byte를 그대로 받지 않는다는 부분의 경우의 수를 조금 더 알고싶습니다
-
미해결예제로 배우는 스프링부트 입문
실무에서는 4가지 방법중 어느걸 많이 쓸까요?
실무에서는 4가지 방법중 어느걸 많이 쓸까요?
-
미해결머신러닝 엔지니어 실무
강의슬라이드 요청드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. cattmerry@gmail.com 으로 보내주시면 감사하겠습니다!
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Keras_YOLO cpu inference error
안녕하세요 강사님. 저번에 친절하게 올려주신 답변을 보고 따라하는 중에 또 질문을 올리네요!! Keras-yolo를 데스크탑 gpu로 train해서 만든 .h5파일을 노트북 cpu로 inference 과정 중 문제가 생겼습니다. 모델 로드는 제대로 되었는데, Yolo의 detect_image()를 사용하여 inference 중 아레와 같은 에러가 발생하였습니다! 혹시 cpu에서 keras-YOLO는 사용이 불가능한 것일까요? -------------- 모델 학습 25회 학습 + validation 2회 진행 중 한번 끊겨서 중간 저장된 model_stage_1.h5로 5회 학습 + 5회 validation 진행한 결과입니다. train_yolo(pretrained_path, annotation_path,classes_path, anchors_path, log_dir,trained_model_name, b_size, epochs_cnt) pretrained_path: C:/JupyterNotebook/ClothClassified/model_data/cloth_stage_1.h5 Create Tiny YOLOv3 model with 6 anchors and 14 classes. Load weights C:/JupyterNotebook/ClothClassified/model_data/cloth_stage_1.h5. Freeze the first 42 layers of total 44 layers. Train on 28938 samples, val on 3215 samples, with batch size 2. Epoch 1/5 14469/14469 [==============================] - 2273s 157ms/step - loss: 17.7330 - val_loss: nan WARNING:tensorflow:From C:\Users\min96\anaconda3\envs\tf115\lib\site-packages\keras\callbacks\tensorboard_v1.py:343: The name tf.Summary is deprecated. Please use tf.compat.v1.Summary instead. Epoch 2/5 14469/14469 [==============================] - 2078s 144ms/step - loss: 17.6376 - val_loss: nan Epoch 3/5 14469/14469 [==============================] - 2094s 145ms/step - loss: 17.5342 - val_loss: nan Epoch 4/5 14469/14469 [==============================] - 2049s 142ms/step - loss: 17.6445 - val_loss: nan Epoch 5/5 14469/14469 [==============================] - 2042s 141ms/step - loss: 17.6296 - val_loss: nan Unfreeze all of the layers. Train on 28938 samples, val on 3215 samples, with batch size 2. Epoch 6/10 14469/14469 [==============================] - 2111s 146ms/step - loss: 14.0190 - val_loss: 5.6780 Epoch 7/10 14469/14469 [==============================] - 2111s 146ms/step - loss: 11.0151 - val_loss: 4.3427 Epoch 8/10 14469/14469 [==============================] - 2114s 146ms/step - loss: 9.7026 - val_loss: 7.6887 Epoch 9/10 14469/14469 [==============================] - 2115s 146ms/step - loss: 9.0433 - val_loss: 2.4560 Epoch 10/10 14469/14469 [==============================] - 2105s 146ms/step - loss: 8.5110 - val_loss: 7.9146 ------------- 모델 로드 cloth_tiny_yolo = YOLO(model_path=pretrained_path, anchors_path=anchors_path, classes_path=classes_path) C:/JupyterNotebook/model_data/cloth_final.h5 model, anchors, and classes loaded. ----------------------- train detected_img = yolo.detect_image(img) plt.imshow(detected_img) (192, 192, 3) --------------------------------------------------------------------------- UnimplementedError Traceback (most recent call last) ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _do_call(self, fn, *args) 1364 try: -> 1365 return fn(*args) 1366 except errors.OpError as e: ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _run_fn(feed_dict, fetch_list, target_list, options, run_metadata) 1349 return self._call_tf_sessionrun(options, feed_dict, fetch_list, -> 1350 target_list, run_metadata) 1351 ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _call_tf_sessionrun(self, options, feed_dict, fetch_list, target_list, run_metadata) 1442 fetch_list, target_list, -> 1443 run_metadata) 1444 UnimplementedError: The Conv2D op currently does not support grouped convolutions on the CPU. A grouped convolution was attempted to be run because the input depth of 512 does not match the filter input depth of 1 [[{{node conv2d_49/convolution}}]] During handling of the above exception, another exception occurred: UnimplementedError Traceback (most recent call last) <ipython-input-23-b6fbc29987b5> in <module> 1 # with tf.device('/cpu:0'): ----> 2 detected_img = yolo.detect_image(img) 3 plt.imshow(detected_img) C:\JupyterNotebook\model_data\keras-yolo3\yolo.py in detect_image(self, image) 122 self.yolo_model.input: image_data, 123 self.input_image_shape: [image.size[1], image.size[0]], --> 124 K.learning_phase(): 0 125 }) 126 ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in run(self, fetches, feed_dict, options, run_metadata) 954 try: 955 result = self._run(None, fetches, feed_dict, options_ptr, --> 956 run_metadata_ptr) 957 if run_metadata: 958 proto_data = tf_session.TF_GetBuffer(run_metadata_ptr) ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _run(self, handle, fetches, feed_dict, options, run_metadata) 1178 if final_fetches or final_targets or (handle and feed_dict_tensor): 1179 results = self._do_run(handle, final_targets, final_fetches, -> 1180 feed_dict_tensor, options, run_metadata) 1181 else: 1182 results = [] ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _do_run(self, handle, target_list, fetch_list, feed_dict, options, run_metadata) 1357 if handle is None: 1358 return self._do_call(_run_fn, feeds, fetches, targets, options, -> 1359 run_metadata) 1360 else: 1361 return self._do_call(_prun_fn, handle, feeds, fetches) ~\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\client\session.py in _do_call(self, fn, *args) 1382 '\nsession_config.graph_options.rewrite_options.' 1383 'disable_meta_optimizer = True') -> 1384 raise type(e)(node_def, op, message) 1385 1386 def _extend_graph(self): UnimplementedError: The Conv2D op currently does not support grouped convolutions on the CPU. A grouped convolution was attempted to be run because the input depth of 512 does not match the filter input depth of 1 [[node conv2d_49/convolution (defined at C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tensorflow_core\python\framework\ops.py:1748) ]] Original stack trace for 'conv2d_49/convolution': File "C:\Users\min96\anaconda3\envs\t115c\lib\runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "C:\Users\min96\anaconda3\envs\t115c\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel_launcher.py", line 16, in <module> app.launch_new_instance() File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\traitlets\config\application.py", line 664, in launch_instance app.start() File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\kernelapp.py", line 612, in start self.io_loop.start() File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\platform\asyncio.py", line 199, in start self.asyncio_loop.run_forever() File "C:\Users\min96\anaconda3\envs\t115c\lib\asyncio\base_events.py", line 442, in run_forever self._run_once() File "C:\Users\min96\anaconda3\envs\t115c\lib\asyncio\base_events.py", line 1462, in _run_once handle._run() File "C:\Users\min96\anaconda3\envs\t115c\lib\asyncio\events.py", line 145, in _run self._callback(*self._args) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\ioloop.py", line 688, in <lambda> lambda f: self._run_callback(functools.partial(callback, future)) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\ioloop.py", line 741, in _run_callback ret = callback() File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 814, in inner self.ctx_run(self.run) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 162, in _fake_ctx_run return f(*args, **kw) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 775, in run yielded = self.gen.send(value) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\kernelbase.py", line 365, in process_one yield gen.maybe_future(dispatch(*args)) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 234, in wrapper yielded = ctx_run(next, result) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 162, in _fake_ctx_run return f(*args, **kw) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\kernelbase.py", line 268, in dispatch_shell yield gen.maybe_future(handler(stream, idents, msg)) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 234, in wrapper yielded = ctx_run(next, result) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 162, in _fake_ctx_run return f(*args, **kw) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\kernelbase.py", line 545, in execute_request user_expressions, allow_stdin, File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 234, in wrapper yielded = ctx_run(next, result) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\tornado\gen.py", line 162, in _fake_ctx_run return f(*args, **kw) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\ipkernel.py", line 306, in do_execute res = shell.run_cell(code, store_history=store_history, silent=silent) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\ipykernel\zmqshell.py", line 536, in run_cell return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\IPython\core\interactiveshell.py", line 2867, in run_cell raw_cell, store_history, silent, shell_futures) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-packages\IPython\core\interactiveshell.py", line 2895, in _run_cell return runner(coro) File "C:\Users\min96\anaconda3\envs\t115c\lib\site-pa
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
org.hibernate.dialect 속성값 질문
제가 오라클 11g 사용중인데요. <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/> 이 부분에서 Oracle10gDialect 사용 하면 되는것인가요??? Oracle(XX)gDialect 가 버전 정보 인것 같은데 . 인텔리제이에서 자동완성 기능으로 11 버전은 없고 10gDialect 와 12c..... 이런식으로 밖에 선택을 못하는데요 맞는 것인가요???
-
미해결Slack 클론 코딩[실시간 채팅 with React]
useCallback 관련
안녕하세요. useCallback 관련해서 갑자기 궁금한점이 생겨 질문 드립니다. useCallback을 함수에 감싸고 props로 내리면 함수를 기억해서 재 성성을 하지 않는다고 이해하였습니다. onChange 함수를 예로들면 input에 입력이 들어올때마다 함수를 실행시키게되고 state에 새로운 값을 업데이트를 할텐데요. useCallback을 사용하였을때 새로이 함수는 생성되지 않으나 기존 함수는 계속해서 state를 업데이트를 해야되기 때문에 input이 들어올때마다 계속해서 실행된다 되지만 deps가 빈배열일 경우에는 화면에는 업데이트를 하지 않는다라고 이해하면 될까요? 깔끔하게 이해가 안되네요. 다시 한 번 밑에 이해한데로 적어보겠습니다. 1. 부모 (props:useCallback함수) --> 자식(props)로 갈 데이터가 전달 됨 2. 자식에서 함수가 실행 될 경우 자식 컴포넌트는 렌더가 되며 부모의 state 값을 업데이트 시켜줌 3. 부모가 렌더링이 다시 될 경우 useCallback으로 감싸진 함수는 재렌더링이 일어나지 않음 결국 useCallback은 부모에서 렌더링이 일어날 경우 useCallback로 감싸진 부분을 재렌더링이 일어나지 않도록 하기 위한 목적이다. 제가 이해한 것이 맞을까요? 막 쓰다보니.. 좀 길어졌는데 확인 부탁드리겠습니다.
-
미해결iOS 개발을 위한 swift5 완벽 가이드
혹시 스위프트 최근 버전에서는 가변 파라미터 2개 사용할 수 있나요?
강의에 나온 예제에서는 1개만 사용된다는 에러 메시지가 출력되는데 func printSum(of nums: Int..., b: Double...) { print(b) var sum = 0 for num in nums { sum += num } print(sum) } printSum(of: 1,2,3,4,5,6, b: 1,2,3,4,5) 여기서는 그냥 되버리네요. 혹시 조금씩 마이너 업데이트 되면서 이러한 점들이 개선된건가요? 항상 좋은강의 감사합니다.
-
미해결IT 회사에서 비개발자가 살아남기 위한 모든 개발 지식 A to Z
서버리스
삭제된 글입니다
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
OnReceiveCompleted에서 Byte -> String으로 변환 시
버퍼에 담긴 클라이언트가 보내준 문자열 값보다 count를 크게 잡아줄 시(ex: 1024) 이런 식으로 뒤에 ??? 가 붙게 되는데요, 이는 null 문자인가요? 저는 vscode에서 코딩중입니다. 혹여 실행환경 문제라면 신경쓰이진 않는데 뭔가 잘못 처리한건 아닌지 궁금합니다.
-
미해결
OnReceiveCompleted에서 Byte -> String으로 변환 시
버퍼에 담긴 클라이언트가 보내준 문자열 값보다 count를 크게 잡아줄 시(ex: 1024) 이런 식으로 뒤에 ??? 가 붙게 되는데요, null 문자인가요? 저는 vscode에서 코딩중입니다. 혹여 실행환경 문제라면 신경쓰이진 않는데 뭔가 잘못 처리한건 아닌지 궁금합니다.
-
미해결왕초보를 위한 스위프트 프로그래밍 강좌 (iOS app with xcode&swift)
secondTextField에 값 입력할때
firstTextField에 먼저 값 넣고 이름 출력한 다음에 secondTextField를 누르면 에러 발생하는데 다른분들은 잘 실행되시나요?
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
i 치면 image 자동으로 나오는게
선생님 ~! i라고 밑에 imanges/ 자동으로 뜨는게 안뜨는데 코드힌트 비활성화랑 관련있나요? 근데 활성화 해도 안떠서 다른걸 뭐 꺼둬서 그런건가 해서 질문드려요
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
강의 ErrorDecoder를 이용한 예외 처리부분 질문 입니다.
안녕하세요. 강의 잘듣고 있습니다. 강의 내용중 이해가 되지않는 부분이 있어서 문의 드립니다. 동영상 13:22초경 feignErrorDecoder 코드의 decode 함수에서 case 404: 부분의 에러 메시지가 왜 order is empty 인지 이해가 가지않습니다. 제생각은 feignClient 에서 url 을 잘못 등록한 404 의경우.. page not found 가 발생해야 할것같은데 이해가 잘 되지않아서 질문 남깁니다. 감사합니다.
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
AsyncAccept 함수 질문드립니다.
AcceptAsync 함수가 갑자기 헷갈려서 개념을 짚어보고자 다시 질문드립니다. 1. AcceptAsync의 반환값이 false : 대기중인 손님이 이미 있어서 문지기가 손님을 바로 입장시킨 경우 2. AcceptAsync의 반환값이 true : 당장 받을 손님이 없어서 입장시킬 준비를 하고 있다가, 나중에 손님이 등장하면 입장시킨 경우 제대로 이해를 했는지.. 좀 헷갈리네요 ㅜㅜ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
어노테이션에 따른 로그 변화
안녕하세요 강사님. 쿼리 로그찍는 부분에서 궁금한 점이 있습니다. @Transactional만 둔 상태에서 테스트를 돌리면 create table 쿼리만 나오는데 @Rollback(false)까지 어노테이션을하고 테스트를 하면 insert 쿼리까지 나옵니다. 제가 생각했을때 어노테이션 차이없이 테이블을 만들고 save까지 동일하게 작동하는것 같은데 어떤 차이가 있는건가요?
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
2차원 배열 초기화 질문입니다
안녕하세요 선생님 강의 잘 듣고 있습니다! 다름이 아니라 위 사진과 같이 scanf("%d", &n); int a[n+2][n+2] = {0,}; 2차원 배열을 초기화 하고 나서 컴파일 하니까, 첨부한 사진과 같은 Warning 메세지가 뜨면서 실행 시에는 입력을 하다 말기까지 하더라구요 ( * n=5로 입력 받을 경우, 원래는 25개의 숫자가 입력받아져야 하는데 6번만 입력받더라구요 ㅜㅜ) ( * 2차원 벡터로 바꿨을 때는 정상적으로 작동했습니다) 그동안 1차원 배열로 n을 입력받고 나서 int a[n] = {0,}; 이런 식으로는 잘 초기화 되고 할당이 되었는데, 2차원 배열의 경우는 이게 안되는 이유가 무엇인가요? (*동적 할당..? 과 관련있는 것인가요?) 위 사진과 같은 오류 메세지는 어떨 때 생기는 오류메세지일까요? ㅜㅜ ( * [Warning] array of array of runtime bound 라고 써져 있는 부분이요,,) * 아래는 코드 전문입니다. #include <stdio.h> #include <vector> using namespace std; int main(){ int n, bongwoori=0; scanf("%d", &n); // vector<vector<int>> a(n+2, vector<int>(n+2, 0)); int a[n+2][n+2] = {0,}; for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ scanf("%d", &a[i][j]); } } for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++){ if(a[i][j]>a[i-1][j] && a[i][j]>a[i+1][j] && a[i][j]>a[i][j-1] && a[i][j]>a[i][j+1]){ bongwoori++; } } } printf("%d", bongwoori); return 0; }
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
서버와 클라이언트의 소켓 관련 질문
제가 이해한 것이 맞다면, 서버와 클라이언트는 미리 주어진 주소(예제에서는 자기 컴퓨터의 로컬 주소)가 담긴 endpoint로 초기화된 소켓을 통해 소통을 하고 있는데요, 음식점으로 비유를 하자면 손님도 식당의 전화번호를 알고 있는데, 식당도 이미 손님의 전화번호를 알고 있는 상태인 것 같습니다. 그런데 보통 이런 경우보다는, 손님이 식당에 전화를 걸면 그때서야 식당이 손님의 전화번호를 알고 다시 응답 전화를 해주거나 할텐데요. 즉 로컬 환경에서 정해진 주소가 아니라, 실제로 클라이언트가 서버로 요청을 보내고 서버는 정확히 "요청을 보낸 서버"의 endpoint로 다시 메시지를 보내기 위해서는 Socket 클래스의 생성자 중에서 endpoint없이 SocketType과 ProtocolType으로만 초기화해주는 버전으로 생성하고, Accept로 들어온 클라이언트의 소켓에서 주소를 얻어와서 그 주소로 응답해주는 식으로 구현해야 하는지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
트랜잭션 격리수준
안녕하세요 영한님 질문있습니다! 영속성 컨텍스트의 이점 중 하나가 1차 캐시로 REPEATABLE_READ 격리 수준을 애플리케이션 차원에서 제공해준다고 했는데요. 그럼 JPA에서 내부적으로 REPEATABLE_READ 격리수준을 보장하기 위해 락(Lock)이 걸려 있는건가요? 그리고 혹시 추가적으로 어떻게 REPEATABLE READ를 보장해주는 지 알 수 있는지에 대한 자료는 hibernate 공식문서에 가면 있을까요?
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 영화 사이트 만들기
Error: listen EADDRINUSE: address already in use :::8080 에러가 계속 납니다.
안녕하세요?? 좋은 수업 너무 감사드려요~ node:events:342 [0] throw er; // Unhandled 'error' event [0] ^ [0] [0] Error: listen EADDRINUSE: address already in use :::8080 [0] at Server.setupListenHandle [as _listen2] (node:net:1306:16) [0] at listenInCluster (node:net:1354:12) [0] at Server.listen (node:net:1441:7) [0] at Function.listen (/Users/choisewon/Desktop/React/MovieWeb-master/node_modules/express/lib/application.js:618:24) [0] at Object.<anonymous> (/Users/choisewon/Desktop/React/MovieWeb-master/server/index.js:52:5) [0] at Module._compile (node:internal/modules/cjs/loader:1109:14) [0] at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10) [0] at Module.load (node:internal/modules/cjs/loader:989:32) [0] at Function.Module._load (node:internal/modules/cjs/loader:829:14) [0] at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12) [0] at node:internal/main/run_main_module:17:47 [0] Emitted 'error' event on Server instance at: [0] at emitErrorNT (node:net:1333:8) [0] at processTicksAndRejections (node:internal/process/task_queues:83:21) { [0] code: 'EADDRINUSE', [0] errno: -48, [0] syscall: 'listen', [0] address: '::', [0] port: 8080 [0] } [0] [nodemon] app crashed - waiting for file changes before starting... favorite강의 들어가면서 계속 이러한 에러가 뜨는데요. 몇일동안 아무리 찾아도 이유를 알지 못하겠네요 ㅠㅠ 도움 주시면 감사드리겠습니다.
-
미해결억대 연봉을 버는 프리랜서 개발자 브랜딩 로드맵
질문이 있습니다
오늘 수강신청하고 강의 반정도 듣다가 궁금한 점이 생겨서 질문드립니다. 1.강의를 처음부터 끝까지 한번에 쭉 봐야 되나요? html이나css등 이런 코딩 하나도 할 줄 모르는 상태인데 외주 관련 강의를 들어도 잘 이해가 안되서 백엔드까지 코딩 공부를 하고 뒷부분 강의를 들어야 될까요? 2. html부터 인프런사이트로 공부 시작했는데 앱 개발을 하기 위한 어려운 언어도 인프런으로 공부해도 좋은지 아니면 학원에다녀서 배워야 하는지 궁금합니다. 혹시 추천하는 공부방법 알려주실 수 있나요? 3. 코딩을 아예 모르는 20살이 it프리랜서라는 직업에 관심을 가지고 도전하기엔 너무 늦지 않았나 궁금합니다. 친구들이나 다들 어려서 부터 코딩을 해서 지금 게임정도는 만들 줄 아는 것 같은데 저는 하나도 몰라서 불안하기만 하네요. (질문이 많아서 죄송합니다. 저는 이렇게 큰 돈을 써본적이 없어서 이 직업에 대해 확실히 알고 배우고 싶었습니다. 감사합니다)