전체 목록!291 UCL Computer Science Year 1 Module Review ENGF0001: Engineering Challenges 난이도: ⭑⭑⭑✩✩ 구성 Challenge 1: 거의 초반 3~4주를 완전 의미 없게 보내는데, 결국에는 Embedded Processor, IoT, ESP32와 관련해서 프레젠테이션 비디오 녹화해서 업로드하면 된다. 나도 3일 정도 걸려서 영상을 만들었기에 거의 한 달을 소비할 필요 자체가 없었다. 1학기 초반부터 UCL CS의 부실함이 보였던 부분. 거기에 Peer Review이기 때문에 진짜 이상한 애들만 걸리지 않으면 점수도 못해도 80 이상은 받을 수 있는 것 같다. Challenge 2: EEE 애들이랑 같이 팀 프로젝트로 우간다에 Bioreactor를 설치했다고 가정했을 때 reactor controller를 만드는 것이 목표다. 평.. 2022. 6. 25. 메이플을 하지 않는 이유 메이플은 나에게 있어서 추억 그 자체이자 내 게임 플레이 역사의 적어도 적어도 3할은 차지하는 중요한 게임이다. 2008년 친구의 추천으로 시작한 게임을 지금까지 하고 있고 지금까지 서비스되고 있다는 건 놀라울 따름이다. 최근에 시험이 끝나고 게임을 하고 싶어서 메이플을 다시 시작했었다. 은월 207 레벨이었던 걸 221까지 만들었고 유니온도 많이 키웠다. 약 13일정도 하루종일이라고 표현해도 될만큼 많이 했다. 근데 지금 브라이튼에 여행을 와서 내 인생에 대해서 쭉 돌아보고 있는데 앞으로 메이플은 하지 말아야겠다는 생각이 들었다. 그 이유는 간단하다. 블로그에 글을 쓰는 시간이 더 아까울 수도 있겠다. 메이플을 하다보면 게임이 아니라 일을 하는 느낌이 든다. 일퀘와 보스돌이라고 표현되는 일명 메할일인데.. 2022. 6. 16. BOJ 12865: 평범한 배낭 https://www.acmicpc.net/problem/12865 코드를 짰는데 중복으로 물건을 고를 수 있게 짜서 이걸 어쩌냐 하다가 그냥 포기하고 다른 분의 풀이를 봤다. 내가 다이나믹 프로그래밍이라고 하면 뭔가 생각이 점화식을 어떻게 짜는지에만 몰두하느라 생각을 우연하게 하지 못한 것이 패착인 것 같다. 나이브한 솔루션인 전체 탐색에 메모이제이션을 이용해서 시간을 줄이는 방식이라고 보면 된다. 나이브한 솔루션은 아이템 i를 뽑냐, 뽑지 않냐로 경우의 수를 나누어서 N번째 (1부터 시작했을 때) 아이템까지 확인하는 방식이다. 정말 간단하지 않은가..?? 좀 더 다양한 DP 문제를 풀면서 생각의 유연성을 길러야 할 것 같다는 반성으로 마무리하겠다. 2022. 5. 21. BOJ 2981: 검문 문제 링크 입력으로 들어올 수 있는 숫자의 최댓값이 10억임을 확인했지만 혹시나 싶어서 M = 2..min 까지 해봤지만 역시 틀렸었다. 근데 제출 결과가 틀렸습니다가 나온 걸 봐선 그냥 내 풀이 자체가 틀렸을 수도 있겠다. 이 문제는 위와 같은 이유로 다른 방법을 생각해야 하고 그 방법은 GCD를 활용하는 것이다. 입력이 5, 17, 23, 14, 83이면 가능한 M=3인데 입력을 다시 M과 엮어서 표현하면 5=1*3+2, 17=5*3+2, 23=7*3+2, 14=4*3+2, 83=27*3+2이다. 몫 부분을 제외하면 M과 R(나머지)은 공통되게 갖고 있는 것을 확인할 수 있다. 이 문제에서 기억해야 할 트릭은 나머지를 지우는 것이다. 예를 들어 17-5를 계산해보면 (5*3+2)-(1*3+2) = 4.. 2022. 5. 19. Project FugaxOratio: introduction I am writing a post now just to make sure I will begin and complete this project. The idea of the project, FugaxOratio, comes from my favourite Youtuber and programmer Pope Kim using a program made by himself for an IRL live broadcasting. The features are simple. When you speak, a circle around a profile image aligned in center highlights and also if you speak louder and exceeds a certain bounda.. 2022. 4. 7. tldr; 사용기 정신이 혼란스러운 트위터를 내가 끊지 못하는 이유... 는 이런 것이 한몫을 한다. man을 사용할 때 난 항상 너무 복잡한, 마치 설명서(manual)를 보고 싶었는데 specification을 보는 듯한 느낌은 부정적인 경험이었다. 그래서 man 사용하고 난 후에는 이해하지 못하고 바로 구글에 검색을 한다. 이것이 나의 루틴이었다. 하지만 이제 더 이상 그런 경험은 하지 않아도 될 것 같다. tldr이라는 유틸리티를 알게 되었기 때문이다. 얘가 어떤 걸 하는 녀석인지는 https://tldr.sh/ 공식 사이트를 참조하시길 바라며, 내가 직접 사용한 경험으로는 상당히 좋다. 위의 트윗에서 언급했다시피 솔직히 구글에 검색하고 사용 방법 예시 찾는 것도 몇 번의 클릭을 해서 들어가야 한다. 그렇지만 얘는.. 2022. 3. 19. 공부방법 괜찮은 영상 https://youtu.be/UTvm-9yjBZQ 공부방법: 1. 책은 사전식으로 찾아보기 (지나친 bottom up은 지양) - 많이 공감하는 부분 2. 유튜브 or 블로그도 굳굳 3. 나만의 정리를 꼭 해야 한다 - 이 부분이 내가 못하는 부분임. 종이에 적는걸 다시 보는 경우가 굉장히 적음. 그 이유는 이걸 모아두긴 해도 정렬이 안 되어 있으니까 찾아보는 시간에 그냥 lecture note 다시 보는 게 더 빠른 경우가 많음 -> lecture note는 내 말글이 아니다 보니 새롭게 느껴지고 사실상 다시 공부하는 느낌이 많이 듦. 지금 생각한 방법은 태블릿 살 돈은 있긴한데 영국이라 한국과 비교해 추가 지출이 아까우니 적어도 당분간은 노트 정리를 하고 나면 최소한 스캔을 해서 노트 어플에 정리를.. 2022. 2. 19. Theory of Computation에 나오는 기호 정리 \(\vdash\): It looks like a turnstile and means the following is a law. Example 1) \(\vdash \neg(A\wedge \neg A)\) - law of noncontradiction. 2022. 1. 17. 늦은 2021년 회고 2021년 회고록을 쓸까 말까 고민하다가 늦었지만 쓰기로 마음먹었다. 사실 내 인생에 있어서 올해가 되게 중요한 순간이라 생각되어서 적어서 손해 볼 건 없다는 생각이 들었기 때문이다. UCL 입학 내가 희망하던 대학에 입학을 했고 1학기를 성공적(?)으로 마쳤다. 근데 여태까지 제출한 어떠한 과제도 아직 점수가 안 나와서 성공적인지는 모르겠다. (UCL 희망하시는 분들에게: 학생 만족도가 왜 낮은 지 알 것 같아요. 잘 고민해보시길) 아직도 conditional offer 받았을 때 순간을 잊지 못하는데 테스코 갔다가 점심 먹으려고 주방에서 요리하다가 UCAS 업데이트됐다는 메일 보고 손 달달 떨면서 결과를 확인하고 너무나도 들떴었다. 결과 발표 마감일 거의 직전까지 결과가 안 나오길래 워릭으로 가야겠다.. 2022. 1. 5. Weak Head Normal Form (WHNF) 키워드: Reduction, Lazy evaluation 참조 https://opentutorials.org/module/1941/11208 2022. 1. 1. hlint 설치 후기 Haskell을 학교에서 배우는데 좀 어설픈 것 같아서 방학이 된 겸, 교수님이 쓰시는 자료 (1)뿐만 아니라 다른 자료 (2)도 찾아보면서 공부하려고 준비하고 있었다. 내 눈에 밟힌 건 stack인데 stack이 하스켈 개발 전반적으로 도움을 주는 프로그램이라 설치해보려고 시도했다. 결론적으로는 실패했는데 아직 OS X AArch64는 지원을 안 한다고 한다 (출처는 GHCup). cabal은 되는 것 같아서 이걸로 프로젝트를 프로젝트답게 할 수 있지 않을까 싶어서 또 다른 삽질을 하던 도중 haskell의 linter인 hlinter를 vscode에서 발견했고 이걸 사용하려면 hlint를 설치해야 한다는 걸 알았다. 설치 방법은 상당히 쉬운데 cabal install hlint면 된다. 그치만!!! .. 2021. 12. 22. 제 닉네임의 의미 지인들에게 닉네임을 말해줄 때마다 제 닉네임이 뭔 뜻인지 자주 물어보셔서 여기에 정리해볼까 합니다. 제가 몇 년 전부터 꾸준히 사용하고 있는 닉네임은 plzfday인데요. 큰 뜻도 없고 대단한 계기도 없었습니다. plz (please의 약자) + fday (friday를 의미) = plzfday입니다. 즉, "제발 금요일 좀 와라"라는 의미로 만들었고 제가 북미 서버 계정을 만들 때 만든 계정입니다. 이것도 중학교 때쯤인 것으로 기억하는데 참... 벌써 못해도 6년은 됐군요. 시간 참 빠릅니다. 2021. 12. 6. UCL CS 1학년의 5주차를 경험하며... 티스토리에 정말 오랜만에 들어와 본다. 그 이유는 정말 간단한데 너무 바쁘다. 난 현재 4개의 필수 과목을 듣고 있다. 학기가 시작하기 전에 module registration을 보며 아니 1학기 동안 고작 4과목? 꽤 여유롭겠는데? 싶었다. 그것은 나의 착각이어따... UCL CS의 교육방식은 당연하지만 교수마다 수업 방식이 다 다른데 기본적으로는 "네가 알아서 해라, 그 대신 우리가 Q&A 세션이나 TA들이 있으니 도움을 줄게"인 것 같다. 이것에 대해 나는 중립적인 느낌을 갖고 있다. 대학 교육에서 이게 당연한 거 아닌 가 싶다가도 아니 그렇다고 하기엔 너무 exercises랑 한정적으로 정보를 제공하고 있는 lectures와 가끔씩 괴리감이 있는 것 같단 생각이 많이 들기 때문이다. 특히 PoP가.. 2021. 11. 2. 복리의 힘을 경외하다 경외하다: 공경하면서 두려워하다. 일주일에 책 한권은 읽기 노력을 하면서 주식이나 경제 쪽 책도 읽어보고 있는데 항상 언급되는 것이 복리의 힘이다. 아무리 작아보이는 수익률이라고 하더라도 이게 계속 쌓이면 무시못할 수치가 된다는 것이다. 수익률뿐만 아니라 우리의 모든 삶이 복리와 뗄레야 뗄 수 없는 관계로 이어져 있는 것 같다. 별거 아닌 것 같아보이는 노력과 경험이 쌓이고 쌓여 10년, 20년, 30년이 지났을 때는 해본 사람과 안 해본 사람의 차이는 굉장히 크기 때문이다. 따라서 내가 복리의 힘을 어떤 방향성을 갖고 활용하는지에 따라 인생의 비전이 달라질 것이라 확신한다. 그래서 내가 경외라는 표현을 사용한 것이다. 나에게 긍정적인 방향으로 복리의 힘을 사용하면 지속적으로 성장해서 시간이 지났을 때는.. 2021. 8. 28. 자바스크립트의 신기한 기능들 이 글에서는 제가 자바스크립트를 공부하면서 다른 언어에서는 볼 수 없었던, 그래서 신기하지만 까먹지 않게 메모하고 싶은 기능들을 정리해보려고 합니다. 1. 호이스팅 (Hoisting) JS에는 변수나 함수를 선언할 때 (추가로 뭐가 있는지 안 찾아봄) 선언문을 가장 위로 끌어올려주는 (Hoist) 기능이 있습니다. 가령 이런 코드가 가능하다는 것이죠. 그렇지만 우리가 예상했던 것과는 다르게 호이스팅을 해도 "Hello"가 출력되진 않고 undefined가 출력됩니다. 그 이유는 변수의 선언 (책마다 표현하는 방식이 다르긴 하지만 전 declaration과 initialization or assignment로 구분하겠습니다)만을 호이스팅하기 때문입니다. 따라서 내부적으로는 코드가 다음과 같이 선언되게 된다.. 2021. 8. 22. 이전 1 2 3 4 5 6 7 ··· 20 다음