180205~0211-TIL

Reading time ~4 minutes

05일 한일

- 포트폴리오 작성 완료

  • 지속적인 리팩토링 필요

- 인프런의 알고리즘강의 Dynamic Programming

05일 느낀점

  • 포트폴리오 내용을 완성 하긴 했는데 아직 무엇을 어떻게 보여줘야 할지 나만의 색을 못 찾은 느낌이다. 그래서 그 부분을 고민하다 지속적으로 완성을 못했는데 아무래도 이건 아니다 싶어서 일단 완성을 해봤다. 일단 완성은 됐으니 틈틈이 수정해 나가야겠다.

    거기다 자소서 항목을 좀 더 추가하고 싶었는데 포트폴리오 작업을 하다 손을 못 대고 있었던지라 그 부분도 생각 날 때마다 조금씩 작성해야겠다.

  • Dynamic Programming, 즉 DP에 대해서 대략적인 내용들만 주변에서 듣고 처음으로 공부를 해 봤는데 역시나 핵심은 순환식을 구하는 부분이지 않을까 싶다. 이전에도 자료구조는 일부 공부해봤으나 알고리즘을 제대로 집중해서 공부해 본 적은 없어서 아직 문제를 푸는 속도가 빠르진 못한 것 같다.


06일 한일

- 마우스 a/s를 위해 용산 방문

- 우형신입 사원 몇분과 저녁 시간

06일 느낀점

  • 사실 현재 코드스쿼드 내에 신입사원 교육을 받으시는 분들과 크게 교류를 안 했던 감이 있었는데 오늘 많은 얘기를 하고 가까워진 것 같다.

07일 한일

- 자소서 완료

  • 좀 더 추가하고 싶은 내용들이 있지만 보류

07일 느낀점

  • 자소서가 일단 완료 되었다. 엄밀히 따지면 월요일에 완료 되었고 미세한 수정만 가했다. 수정이 아니라 추가 하고 싶은 내용이 몇 개 있지만 자소서만 수정하다 보면 다른 것들을 집중 하지 못하는 관계로 일단 보류 해야 겠다. 뭔가 초록불을 띄운 느낌이다.

  • 오늘은 코드스쿼드 내부 행사로 인해 밤코(밤에 코딩하기)를 못 하고 집에 왔는데 의도치 않게 생긴 이런 날 오랜만에 저녁에 쉬는 시간을 가질까 하고 누워있다가 아무래도 찝찝해서 다시 일어났다. 솔직히 최근 자소서를 쓰느라 공부는 제대로 집중 못한 부분이 있다. 내용 추가를 보류한 이유도 그 이유 때문이다. 내 공부에 소홀해지고 있다고 느낀다. 공부하는 것에도 흐름이 있다고 생각하는데 그 흐름이 깨지고 있다고 느껴진다. 굉장히 위험한 적신호라고 생각된다. 내일부터 정신 차리고 제대로 하자고 할 수도 있겠지만 내일 더 잘 집중하려면 아무래도 오늘 좀 봐야겠다. 너무 자신을 지나치게 몰아붙이는 것도 위험하지만 나아진 상황에 안주하려고 하지 말자. 후.. 오랜만에 솔직한 고백도 했으니 부끄럽지 않게 실천을 해야겠다.


08일 한일

- 인프런의 알고리즘강의 Dynamic Programming

- 백준 사이트의 문자열 문제 풀기

08일 느낀점

  • DP에 대한 개념을 최근 들어 공부해봤는데 결국 핵심은 점화식을 작성하는 것인 거 같은데 그게 힘든 것 같다. 강의를 다 보고 DP 문제를 풀려고 도전하다가 알고리즘 문제는 너무 오랜만이라 그런지 문제를 대하는 것 자체가 익숙지 않은 기분이 들어서 계획을 바꿔서 일단은 간단한 문제들을 접하면서 “알고리즘 문제” 자체에 익숙 해지기로 했다. 그래서 일단은 정말 간단한 형태의 문자열 문제를 풀어봤는데 예전과 달리 단위 테스트를 활용하니까 여러 가지 편리한 점을 느꼈다.

    몇 가지 있겠지만 대표적으로 문제를 해결할 메서드인 solution이 입출력 부분을 빼고 매개변수, 반환 값으로만 동작을 하니 확실히 문제를 해결하는 로직에만 집중을 할 수 있었고, 아주 당연하게도 자동화 테스트의 장점인 수동 테스트를 안 해도 된다는 점이었다. 전자 덕분에 이전에는 불편하다고 생각했고 한두 번씩 실수하던 백준 사이트의 입출력 방식에 구애되지 않고 정말 문제에만 집중해서 할 수 있어서 즐겁게 코딩 한 것 같다. 그렇긴 한데 일단 접근 자체를 잘못한 내 탓이지만 가능하면 스트림을 이용하려다가 문제를 비효율적으로 푼 부분이 발생 한 것 같다.


09일 한일

- 백준 사이트의 DP 문제

09일 느낀점

  • 자료구조는 공부해봤어도 알고리즘은 본격적으로 공부해 본 적이 없다가 최근 들어 DP를 공부해 보고 있었는데 예전 9월쯤 못 풀었던 문제를 어떻게 접근해야 했었는지 알 것 같다. 일단 접근법들을 익히기도 하느라 직접 문제만 보고 푼 건 간단한 몇 문제밖엔 없지만 엄청 어려운 문제만 아니라면 일단은 이전처럼 막막함을 느낄 것 같지는 않다.

    한동안 코딩을 안 하다가 해서 재미를 느끼고 있긴 하지만 알고리즘 공부는 일정 이상부터는 학습하는 즐거움보다는 토익 공부와 비슷하게 풀이법에 집중되는 것 같아서 학습하는 재미는 떨어지는 것 같다.


10일 한일

- 읽을만한 내용이 꽤 있어 보이는 블로그 발견

  • http://springmvc.egloos.com/

  • 오랫동안 업데이트가 안되고 있지만 해당 블로그의 주인도 학습을 하며 작성 한 글들이고 대부분 학습을 해본 내용에다 작성자의 생각도 엿볼 수 있는 것 같아서 좋을 것 같다.

- 가상 메모리 (출처: 컴퓨터 시스템, 저자: Randal E. Bryan)

  • 가상 메모리는 세 개의 중요한 기능을 제공한다.

    1. 메인 메모리를 디스크에 저장된 주소공간에 대한 캐시로 취급해서 메인 메모리 내 활성화 영역만 유지하고, 데이터를 디스크와 메모리 간에 필요에 따라 전송하는 방법으로 메인 메모리를 효율적으로 사용한다.

    2. 각 프로세스에 통일된 주소공간을 제공함으로써 메모리 관리를 단순화한다.

    3. 각 프로세스의 주소공간을 다른 프로세스에 의한 손상으로부터 보호한다.

10일 느낀점

  • 가상 메모리를 캐시로 취급한다. 이 키워드가 이전까지 가지고 있던 가상 메모리에 대한 개념들을 하나로 이어지게 해준 것 같다. 덕분에 가상 메모리의 중요성 혹은 존재에 대해 좀 더 와닿게 됐다. 이전까진 메인 메모리의 부족한 공간을 보충하기 위한 존재란 것과 페이징 기법이 있다고만 단순히 학습하고 스스로 무언가 생각을 안 해 봤던 것 같다.

  • 컴퓨터 시스템이란 책이 당장 읽기에는 여유가 없긴 하지만 꽤나 재밌어 보이는데 언젠가는 구매해야겠다. 겸사 겸사 구매하고 싶은 도서 목록을 만들어 봐야겠다.


11일 한일

- 경기창조혁신센터에서 공부

  • 상코와 재민씨의 스터디 분들을 만남

- 기본적인 자바 내용 학습

  • 좋은 블로그 발견, 딱 내가 포스팅하고 싶었던 방식으로 글을 작성하신다.

11일 느낀점

  • 상코를 통해 새로운 분들을 만났는데 현재의 나와는 달리 직장을 다니시는 분들이다. 개발자를 바라보는 일반인들의 시선 중엔 지속적으로 자기 개발을 위해 공부를 하는 것에 대해 불쌍(?) 하다는 시선을 가진 사람들도 존재하는데(내 주변에도 있다) 개인마다 재미를 느끼는 부분은 다르겠지만 그런 학습 속에서 재미를 느끼는 부분이 있기 때문에 그게 가능 한 것 같다.(스스로 잘 하고 싶다는 원초적인 욕심도 포함될 수 있을 것 같다) 아직까지는 자기 개발을 위해 학습을 하는 분들 중에선 별수 없이 꾸역 꾸역 하는 분은 못 봤다. 이런 부분에 메리트를 느끼기도 해서 개발자의 길에 들어온 건데 앞으로도 쭉 유지됐으면 좋겠다. 특히 그런 분들이랑 대화를 하면 지식적으로 유익한 대화를 했는지를 떠나서 좋은 자극이 되는 것 같다.