목록분류 전체보기 (96)
Scientia Conditorium
포큐 (POCU) 아카데미 - 프로그래밍 입문(C#) COMP 1500 수강 후기 프로그래밍 시작한지 1년정도 된 느낌이지만, 매번 주먹구구식으로 공부해서 답답했다. 기본 입문서를 정독해도 내가 만들고 싶은 프로그램에 적용하기가 굉장히 어려웠다. 아직 기계공학과에서 공부하던 습관이 남아있어서 그런지 교과서로 공부해야 마음이 편했다. 그러나 프로그래밍 입문서 대부분은 쓰잘데기 없는 내용들로 가득차고 연습문제는 도움도 안되는 경우가 많아서 짜증만 날 뿐이였다. 추가적으로 현업에서 일하시는 분들이 지필한게 아니라 1인기업 혹은 연구직에서 일하시는 분들이 작성하신게 많았다. 이런 나에게 현업에서 일하는 사람이 가르쳐주는 코딩 학원은 정말 매력적이였다. 다른 사람들과 협업(co-work)을 하기 위해선 코딩을 어..
포큐{POCU) 아카데미 - C++ 언매니지드 프로그래밍 COMP3200 수강 후기 한줄평 : 왠만한 코딩 학원보다 좋은 강의 + 실무에 바로 적용할 수 있는 코딩 연습 + Effective C++ C 언매니지드 프로그래밍을 수료하진 못했지만 듣고와서 그런지 비교적 수훨하게 수강할 수 있었다. C 강의에 이어서 C++ 역시 적극 권장한다. 개인적으로 C/C++ 강의를 수강하고 나서 거의 포큐 찬양론자가 되어버렸다. 누군가가 포큐 강의 추천해달라고 하면 주저없이 C++ 강의를 추천한다. C 강의는 포인터를 모른다면 추천하고, 포인터를 어느정도 알고 포인터로 링크드리스트를 대충이나마 만들 수 있다면 C++ 강의를 추천한다. 개인적으론 포인터가 뭔지만 알아도 수강하는데 큰 어려움은 없다고 생각된다. 그렇다면 ..
리눅스 환경에서 작업해야 하는 개발자들, 특히 여지껏 윈도우에서만 개발하다고 리눅스가 익숙하지 않은 사람들(나...)에게 적극 추천하는 책이다. 실제로 나는 이 책을 업무에 매우 잘 활용하고 있다. 명령어가 익숙해질 때까지 계속해서 옆에두고 사용할 계획이다. 윈도우에서는 개발할 때에는 GUI 기반으로 마우스가 익숙해졌기 때문에, 터미널에서 명령어를 친다는 것 자체가 불편하다. 가장 먼저 익히는 명령어가 'sudo apt-get update', 'sudo apt-get full-upgrade' 등등, 대부분의 실행을 터미널을 통해 이루어진다. 사실 어떤 사람들은 내가 원하는 기능들만 명령어를 통해 설치할 수 있기 때문에 편리하다고 하지만, 내가 왜 이런 자잘자잘한 설치까지 관여해야 하는지 이해되지는 않는다..
내 경우 네트워크 보안과는 거리가 멀었다. 사실 취직하기 전까지만 해도 네트워크에 거의 관심이 없었으며, 비전공자이다보니 네트워크 공부를 따로 할 시간도 없었다. 책을 보면 항상 지은이의 말과 목차를 살펴보는데 이번에도 지은이의 말에 상당히 공감이 갔다. 현재 시중에 나와있는 대부분의 보안 관련 책들은 공격이나 분석에 초점을 맞춰져있다. 물론 방어 관점에서 서술한 책들도 있지만 초보자들이 보기에는 썩 좋은 책들은 아니였다. 그렇기에 책 제목처럼 네트워크 보안을 처음 배우는 사람들에게는 이 책은 정말 좋았다.(특히 나) 물론 내가 네트워크 보안 시스템을 구축하는 일을 하진 않을 것 같다. 그러나 응당 프로그래머라면 보안에 관심이 가져야 한다고 생각하며, 최소한 네트워크 보안이 어떠한 식으로 이루어지는 알아..
개체지향 프로그래밍에서 디자인 패턴은 특정 문제에 대해 재사용 가능한 해결책이다. 즉, 코드를 효율적으로 설계하여 비슷한 문제가 발생했을 때 해결하기 위함이다. 아키텍처 패턴은 이보다 상위 수준을 뜻한다. 하드웨어의 성능 제한, 소프트웨어 설계의 비용 및 위험성 등을 들 수 있다. 프로그래밍을 해본 사람이라면 디자인패턴 한두개쯤은 알고 있을 것이다. 중복되는 코드를 최대한 줄이고 재사용성을 높이기 위해서라도 필수일 것이다. 아키텍처 패턴은 필수라고 한다면 필수이지만 당장은 아니다. 프로젝트의 규모가 커질수록 혼자서만 코드를 작성하는게 아니기 때문에 여러가지 상황을 고려해야 한다. 주니어 프로그래머 단계에서는 당장 공부해야할 내용은 아니지만 언젠가는 해야될 내용이기에 천천히 봐두면 좋다. 나 역시, 실무 ..
리뷰에 앞서 좋은 책을 집필해준 저자 파비앙 상글라르님께 감사의 말씀을 드리며, 이런 책을 번역해준 박재호님과 한빛미디어에도 감사의 말씀을 드립니다. 프로그래머를 넘어 엔지니어를 꿈꾸고 있다면 반드시 읽어보아야할 교양서 지금 현재, 2021년이 프로그래머가 되겠다고 말하는 사람들이 넘쳐나는 시대인 것 같다. 물론 이전에도 수요와 공급은 꾸준히 지속되고 있었지만 기폭제가 된 것은 넥슨의 연봉 인상이라고 생각한다. 신입 사원 초봉을 5천만원으로 주겠다는 파격적인 기사를 내걸었고, 개발자를 뺏기면 안되는 다른 업체들도 연봉 인상 대열에 합류하였다. 아직까지는 개발자의 공급이 수요를 쫓아가지 못하는 상황이다. 단순히 연봉만 보고 너도나도 프로그래머가 되겠다고 학원에 등록하는 사람들이 늘어났고, 자칭 프로그래머라..
[책리뷰] 인공신경망 이해를 위한 기초 수학, 친절한 딥러닝 수학 한줄평을 쓰기도 애매하다. 결론부터 말하자면 크게 추천하지 않는다. 모든 것은 개인차가 있는 것이니 어쩔 수 없고... 서평단으로 참여하고 있지만 그거와 상관없이 내가 마음에 안드는 건 안드는 것이니. 가장 먼저 '기초수학/친절한' 이라고 적혀있지만 절대로 기초수학이 아니며 친절하지 않다. 최소한 행렬이 뭔지 시그마 함수 등 고등수학 정도는 알고 있어야 한다고 생각한다. 어떻게 해서든 식을 최대한 간랸하게 나타내볼려고 하는 것 같지만, 결국 공대생에게는 익숙한 그리스 문자와 여러 첨자들이 등장하게 된다. 물론 이런 문자와 첨자들을 설명해주긴 하지만... 여러 줄에 걸쳐서 수식을 보여주고 이건 이렇게 정리할 수 있어! 라고 해도 어려워 보인..
[책리뷰] Refactoring(리팩터링) 2판 서론부터 시작해서 굉장히 흥미롭게 본 책이다. 프로그래밍을 시작하면서 가장 많이 들었던 말 중 하나는 '프로그래밍은 책으로 공부하는게 아니다' 라는 것이다. 개인적으로 반은 맞고 반은 틀리다고 생각한다. 확실히 프로그래밍은 직접 코드를 작성하면서 의도대로 잘 작동하는지, 오류가 있으면 어떤 부분이 문제인지를 지속적으로 파악해가면서 공부하는 것이다. 그러나 이미 선대 프로그래머분들이 직접 겪어본 삽질을 내가 다시 수십년간 반복할 필요가 있을까?! 이런 부분은 책을 통해서 충분히 공부가 가능하다고 본다. 훌륭한 프로그래머분들이 작성한 이 리팩터링 책은 여러 프로젝트를 통해 발견된 오류와 삽질을 정리해서 알려준다. 나같은 초보 프로그래머들은 수백만줄이나 되는 프..
혼자공부하는 머신러닝 + 딥러닝 / 혼공단 5기 - 6주차 & 소감 6주간의 혼공단 5기의 학습이 끝났다. 어찌보면 1~6장까지의 내용은 이 7장을 설명하기 위한 사전 작업이였다는 생각이 든다. 이 책의 핵심 챕터는 단연코 7장이라고 본다. 인공 신경망을 비롯하여 딥러닝 학습을 위한 용어와 개념 설명을 확실하게 설명해주었다. 물론 더욱 깊게 들어가게 위해선 다른 책을 살펴봐야한다. 그러나 책 제목이 '혼자 공부하는' 이기 때문에 더할 나위 없이 만족한다. 모든 머신러닝 관련 책을 다 본 것은 아니지만 머신러닝 공부를 시작할려고 하는 초보자라면 무조건 이 책을 추천한다. 아니, 이 책으로 시작해야한다. 만약 조언자가 있다면 다른 책을 선택해도 상관없지만 혼자서 공부할 생각이라면 단연코 이 책을 선택해야한다..
혼자공부하는 머신러닝+딥러닝/혼공단 5기 - 5주차 K-평균 알고리듬은 주어진 데이터를 k개의 클러스터, 군집으로 묶는 알고리듬으로 각 군집간의 거리 차이의 분산을 최소화하는 방식으로 동작한다. 위 애니메이션은 k-평균 알고리듬 위키피디아 페이지에 있는 자료로서 직관적으로 이해하기 쉽게 표현하였다. 작동하는 방식을 설명하자면 다음과 같다. 1. 주어진 데이터에서 k개 평균값(중심점)을 생성한다. 여기서 보통은 랜덤 초기화 알고리듬이 사용된다. 2. 데이터들은 가장 가까이 있는 평균값을 기준으로 클러스터,군집이 나뉜다. 3. 나뉘어진 클러스트,군집에 속한 데이터들의 평균값으로 클러스터 중심점을 변경한다. 4. 데이터들의 소속 클러스터가 바뀌지 않을 때까지 2,3번 과정을 반복한다. 다시 말해, k-평균 알..