본문 바로가기
정글/TIL

[크래프톤 정글] 70일 - half & half

by 위대한초밥V 2023. 6. 13.
오늘 한 일 👩‍💻
- 2주차 주간 발표
- 알고리즘 문제 풀이(프로그래머스 - 요격시스템, 15922)

알고리즘

알고리즘 실력이 많이 부족하다. 아직 코테에서 내가 만족한 결과를 얻지 못했다. 뭐 어쩌겠나!!!! 더 열심히 해야지...

그리고 충격적인 사실을 알았다. 

최근 4일간 내가 잔디 심으려고 브론즈만 풀었다는 사실을...😵

그래서 다시 각성했다. (물론 나의 우선순위는 핀토스이지만 말이다!)

 

요격시스템

https://school.programmers.co.kr/learn/courses/30/lessons/181188

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

https://mywnajsldkf.tistory.com/41

 

프로그래머스: 요격 시스템(lv2)

- 문제: https://school.programmers.co.kr/learn/courses/30/lessons/181188 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이

mywnajsldkf.tistory.com

 

아우으 우아으이야!!!

https://www.acmicpc.net/problem/15922

 

15922번: 아우으 우아으이야!!

N개의 선분을 모두 그렸을 때, 수직선 위에 그어진 선분 길이의 총합을 출력한다아아어으잉에애야우아으아이아야아아아아아아이야!!!

www.acmicpc.net

왼쪽부터 쓸고 지나가는 스위핑 알고리즘 문제를 적응하기 위해 선택한 문제인데, 생각했던 것보다 쉬웠다. (근데 스위핑이라는 것을 모르고 풀었다면 어려웠을 수도 있겠다ㅎㅎ)


2번째 프로젝트 회고

협업👋

  • 저번주차에 부족하다고 느꼈던 동료와의 대화를 이번주에는 충분히 했다. 모르는 것, 고민되는 것을 하나둘 깊게 파고들기 시작했고 거기에서 시작되니 대화를 충분히 나눌 수 있었다. 그리고 그 안에서 배울 수 있는 것들이 참 많았고 혼자라면 그냥 넘어갔을 것들을 깊게 파고드니 유익했다.
    • 예를들어 do_iret 함수나 stack이 쌓이는 과정을 이해하는 등 혼자라면 가볍게 넘어갔을 것을 동료가 옆에서 던지다보니 나도 깊이있게 공부할 수 있었다. 생각해보니 좋은 동료를 만났기 때문에 그랬을 것이라고 생각한다.
  • 다만, 구현에서는 함께하는 부분이 부족했다. 동료와 나의 공부 스타일이 조금 달랐다.역시나 내가 좀 더 느렸고, 삽질하는 시간도 많아서 어떤 면에서는 크게 도움을 못 준 것 같아 아쉬웠다.
  • 더불어 이런 고민이 깊어져 지난 주에 첫 개인 면담을 신청해 코치님께 질문드렸다. 코치님의 답변은 사람마다 스타일이 다르다. 정글 과정의 목표 중 하나는 몰입이다. 동료들과의 충분한 소통과 자신의 몰입 사이에서 적절한 균형을 찾으라고 말씀하셨다.

구현👩‍💻

  • 이번 주차의 목표는 구현 능력을 향상시키는 것인데, 어느정도 성장했을까? 최대한 스스로 구현하려고 노력했는데 하나도 안보고 하는 것은 어려워서 exec, fork, wait system call은 처음부터 보면서 시작했고 나머지 함수들은 먼저 작성한 후에 다른 사람의 코드와 일치하는지 내가 놓친 부분은 없는지 확인하는 방식으로 진행했다.
  • 전에 비해 코드 작성에 자신감은 있지만, 아직 코드에 대한 확신은 없다. -> 근데 이 부분은 생각해보니 코드를 작성해서 잘 돌아가는지 확인하는게 엄청난 비용이 드는 것은 아니니 일단 작성해보고 스스로 테스트해서 디버깅하는 시간을 늘려야겠다.
  • 만약 답지가 없는 상황에서 개발한다면? 자신이 없다. -> 근데 현실은 정답이 없는 상황을 마주하고 문제를 풀어나가는 것이다. 오류를 마주했을 때 바로 동료나 정해진 답을 찾기보다는 스스로 고민하고 해결하는 시간을 늘려봐야겠다.

기타🎸

  • 잠을 많이 못잤다.zz

🌳 함께 자라기

당신이 제자리 걸음인 이유

더보기

업무 시간 중에 불안함이나 지루함을 느끼는 때가 대부분이라면, 실력이 늘지 않고 있는 환경에 있다는 것이다.

 

지루함을 느끼는 경우

a1: 실력 낮추기 → 작업의 난이도는 그대로 두고

  • 마우스 대신 키보드로만 개발하기
  • 디버거를 안쓰고 개발하기

a2: 난이도 높이기 → 자신만의 제약을 추가한다.

  • 자기에게 요구되는 수준을 더 높게 여긴다.
    • 하루 일을 1시간에 끝내기
    • 버그를 시간당 1개가 아닌 2개 찾기
    • 익숙한 작업을 새로운 언어로 진행하기
  • 공식적으로 안해도 되는 업무를 추가한다.(업무 개선)
    • 리팩터링하기
    • 자동화 테스트하기

불안감을 느끼는 경우

b1. 실력 높이기 → 실력을 높여 몰입 영역으로 들어간다.

  • 사회적 접근: 나보다 뛰어난 전문가의 도움을 얻는다.
    • 짝 프로그래밍
    • 튜토리얼 문서 따라해보기
  • 도구적 접근
    • 디버거 사용
    • 자동 통합 도구 사용
    • 코드 분석툴 사용
    • PERL 환경 사용 등
  • 내관적 접근
    • 비슷한 일을 했던 경험을 되살려 본다.

b2. 난이도 낮추기

  • 난이도를 낮춰 학습 효과, 동기 강화, 스트레스 감소, 자기 효능감 증가 등의 긍정적인 효과를 마주할 수 있다

프로그래밍 언어 배우기의 달인

더보기
  • 튜토리얼을 읽을 때 뭘 만들지 생각하고 읽는다.
    • 하다가 만들 수 있으면 일단 만들고, 다시 돌아와 이어나간다.
    ⇒ 여러 언어에서 같은 프로그램을 작성하면서 언어 사이의 차이를 쉽게 느낄 수 있다.
  • 공부할 때 표준 라이브러리 소스 코드를 읽는다.
    • 작성된 표준 라이브러리의 실제 사례를 통해 언어의 문화와 스타일을 익히자.
  • 공부 중 다른 사람의 코드에 내가 필요한 기능을 추가하자.
    • 작고 간단한 추가 기능을 생각해보자.

이 책에서 제안하는 내용들은 실제로 적용해볼 수 있을 것 같다.

내가 알고리즘 문제를 풀 때, 실제 환경처럼 제약을 두는 것도 말이다. 일단 이것들을 효과적으로 누리려면 현재 나의 상태를 점검하는 것이 필요하다. 즉 회고를 꾸준히~ 작성하자! 


아직 여기와서 힘들다는 생각을 특별히 한 적 없다. (밤샐 때 제외)

그래도 이제 절반 정도오니 힘들다는 생각보다는 끝나고 나서 내가 원하는 성과를 이룰 수 있을지 확신이 줄어들면서, 약간의 불안감이 생겼다.

근데 뭐 어쩔 수 없다~ 불안감을 떨치려면 현재에 몰입하는 방법밖에 없다. 모두 다 잘 될 것이다! 홧팅

내일 할 일 📝
- pintos project2 마무리
- pintos project3 gitbook 읽기 + 해석
- 알고리즘

 

반응형