배움
-
[Godot 게임개발] 0. Godot 공부 시작배움/GameDev 2024. 6. 7. 16:58
최근 게임 개발에 관심이 생겨 공부를 시작했다.그런데 유니티도 조금 다뤄보고 관련 정보를 뒤지다보니Brackeys라는 유니티 게임 개발 쪽에서 유명한 (약 180만 구독자) 유튜버가Godot라는 툴이 요즘 괜찮다고 하며 약 한 달 전부터 Godot 강의를 게시하기 시작했더라. Godot는 '고닷' 혹은 '고도트' 등으로 부르고 싶겠지만실제 발음은 '고도'에 가깝고 한국에서도 고도로 부르고 있더라.아마 영어 단어가 아닌가부다.. 유니티의 경우 스크립트 언어로 C#을 쓰는 반면에고도는 파이썬과 비슷한 GDScript라는 언어를 자체 개발하여 쓰고 있다.파이썬의 특징을 가지고 있기 때문에 간편하고 배우고 쉽다는 특징이 있다. 또한 특히나 주목할 부분은 언리얼 이나 유니티 등과는 다르게 MIT 라이센스로 배포되..
-
[데이터야놀자 2024] 행사 참여 후기배움/기타 개발 이야기 2024. 6. 4. 02:44
이벤터스 링크 데이터야놀자 2024 - 이벤터스데이터를 다루는 모든 사람들의 축제! 데이터야놀자 2024event-us.kr 우연한 기회로 '데이터야놀자(이하 데놀)'라는 행사에 참여하게 되었다.데놀은 무려 2016년부터 진행된 유서깊은(?) 행사로,오픈소스와 커뮤니티 정신을 기반으로 하고어울림, 참여, 즐거움을 중시한다고 한다. 최근에야 이 행사를 알게 되었는데,타임테이블을 보니 흥미로운 강의들이 많아 얼른 듣고 싶어져 신청하게 되었다. 예전에 '인프런'이라는 온라인 강의 사이트에서 주최한 행사를 참여한 적이 있는데 그 때와 비슷하게여러 강의가 병렬적으로 진행이 되면 그 중에 하나씩 고르는 식이었다. 데놀 2024의 타임테이블은 다음과 같다. 이 중에서 나는..1. 영상 크리에이터 파헤치기2. 금융 ..
-
[TED] AI Is Turning into Something Totally New배움/영어 2024. 4. 23. 22:12
출처 : https://youtu.be/KKNCiRWd_j0?si=zzFqED9u6dedbT4m Mustafa Suleyman - CEO of Microsoft AI 강연에서 슐레만은 AI가 마이너한 한 분야에서 우리 삶에 큰 영향을 미치는 분야로 어떻게 발전했는지 설명한다. 그런 다음 AI를 도구나 비서 정도로 묘사하는 다양한 은유를 논의한다. 그러나 슐레만은 이러한 은유가 정확하지 않다고 한다. 왜냐하면 그것들은 AI의 전체 잠재력을 과소평가하도록 만들기 때문이다. 슐레만은 AI를 새로운 디지털 종으로 비유한다. 그는 AI가 생물학적 종과 유사하다고 주장한다. 끊임없이 배우고 진화하기 때문이다. 차이점은 인간이 설계하고 제어할 수 있다는 것이다. 세션이 끝난 후 이어진 Q&A 시간에서 진행자는 무스타..
-
자바스크립트 Shallow copy vs Deep copy배움/기타 개발 이야기 2024. 1. 27. 12:00
자바스크립트에서 기존에 존재하는 객체를 복사해서 새로운 무언가를 만들고 싶을 때가 있다. 하지만 그냥 새로운 변수를 선언해서 기존의 객체를 대입하면.. 새로운 변수를 변형했을 때 기존의 값까지 영향을 받아 상황에 따라 골치아파질 수 있다.. 이건 후술할 shallow copy가 된다. Shallow copy는 원본의 값을 '참조'하는 형태로 복사한다. 따라서 복사한 값의 형태가 바뀌면 그 원본의 값도 영향을 받는다. Deep copy는 원본의 값을 정말 그 값만 복사해오고, 원본과는 완전히 별개의 객체가 된다. 이를 수정하거나 해도 원본의 값은 영향을 전혀 받지 않는다. ex) //JavaScript 환경에서.. obj = {a: 1, b: 2}; new_obj = obj; new_obj.a = 3; c..
-
MongoDB 데이터를 백업하거나 덮어씌우는 방법 (dump, restore)배움/백엔드 2024. 1. 24. 12:00
기존 DB를 dump하는 방법은? * dump : 간단히 말하면 원래 이용하던 db를 백업하는 개념. 명령어 : mongodump --host {123.456.789.0} --port 27017 --db {myDatabase} --out {myFilename} DB에 Username, password가 걸려있다면 명령어 : mongodump --host {123.456.789.0} --port 27017 -u {USERNAME} -p {PASSWORD} --db {myDatabase} --out {myFilename} 로컬의 DB 덤프하려면 host값으로 127.0.0.1 이용. port는 mongodb는 보통 27017 씀. 새 DB를 Restore 하려면? Restore : 백업한 DB를 다시 불러옴..
-
CORS 정책 관련 참고글배움/기타 개발 이야기 2024. 1. 22. 18:09
기본적으로 SOP(Same-Origin-Policy)라는 '같은 출처에서만 리소스를 공유할 수 있다는 정책이 있음. - 여기서의 '출처'는 'Scheme', 'Host', 'Port' 세 가지가 동일하다면 같은 출처로 봄. 더 자세한 내용은 상기 링크 참조 그러나 현실적으로 서로 다른 출처에서 리소스를 공유해야할 필요성이 큼. 때문에 SOP에 예외사항을 둔다. CORS라는 정책을 만족한다면 다른 출처라도 리소스를 공유할 수 있도록 함 다만, 출처를 비교하는 로직이 브라우저측에 있다. 때문에 서버끼리 통신을 할 때는 CORS 정책이 적용되지 않는다. CORS 때문에 에러가 발생했어도 서버 쪽에는 정상 응답 로그가 남기에, 에러를 찾기 어려워질 수 있다. 다른 출처를 가진 리소스 사용 구조 웹 클라이언트 어..
-
Promise.race()배움/오늘의 실패 2023. 11. 27. 19:01
문제상황 : 지금까지 대부분의 작업은 axios를 이용해서 fetching을 진행하였는데.. 새로 작성해야 하는 코드는 FileSystem.uploadAsync를 이용해서 fetching을 진행해야 했다. 하지만 이 부분에서 무한히 응답을 대기하고만 있는 상황이 발생했다. 원인을 추적해보니, FileSystem으로 작성한 코드부에서 Timeout error가 발생하지 않고 있었다. axios를 활용한 코드에서는 선임자가 Timeout error handling 코드를 이미 포함시켜놓았기에 갖다 쓰기만 하면 되었는데, FileSystem은 이러한 코드부가 없기에 내가 직접 Timeout Error를 구현해보고자 하였다. 구현방법 : 1. Promise를 이용해 응답을 요청한다. 2. 또 다른 Promis..
-
Scope creep + Stakeholders배움/영어 2023. 9. 13. 18:37
업무하다가 인도네시아 동료가 Scoop creep이라는 단어를 사용하더라. Sure, I think I scoop creep my self a bit, ... 으로 시작하는 문장이었다. 무슨 뜻인지 몰라 찾아보니 정확하게는 Scoop 이 아닌 Scope creep 이었다. 아마 오타를 냈나 보다. Scope creep 을 이해하기 전에 먼저 Scope의 뜻을 명확히 알아야 하겠다. 비즈니스 상황에서의 Scope는 으레 Scope of Project의 Scope를 의미하는데, 직역하면 '프로젝트의 범위' 이다. 즉 '어떤 프로젝트를 완료하기 위해 해야 할 일들의 범위' 를 가리키는 것이다. 개발자든 누구든 간에, 어느 정도 규모가 있는 프로젝트를 무사히 마치기 위해서는 이 Scope of Project를 ..