본문 바로가기

Frontend Study

[FE_Bootcamp] 20일차_Section1 회고

드디어 드디어 드디어 길고 길었던 Section 1이 끝났다~~!!!! 👏👏👏

Section 1에서는 웹 개발의 첫 걸음, HTML과 CSS, 그리고 자바스크립트의 기초와 Linux를 통한 CLI 제어, 그리고 Git을 이용해 다른 사람과 협업 하는 방법에 대해 배웠다.

그리고 위 내용들을 이용한 여러 프로젝트까지. 

 

나는 학교에서 웹 프로그래밍 수업을 들었었기 때문에 처음 배웠던 내용들은 쉽게 따라갈 수 있었지만, Linux가 나올 때 부터 뭔가 응? 하더니 Git부터는 강의 자료 뿐만 아니라 외부 자료도 뭉탱이로 찾아봐야 했을 만큼 따라가기 조금 힘들었다.

Linux는 거의 처음 배우는 것이나 다름 없고, Git 역시 사용해본 적이 없었기 때문에(나는 Github가 Git과 연동되는 것 자체도 전혀 몰랐다) 어려웠던 것 같다.

 

이번 회고에서는, Section1에서 배웠던 내용들을 간단히 훑어보고, 초기에 세웠던 목표와 그를 이루기 위해 했던 노력들, 문제들, 그리고 고쳐나가야 할 점들에 대해 적어보도록 하겠다.

 

1. Section1에서 나는 무엇을 배웠을까?

내가 몰랐거나, 꼭 알아야 하는 개념들은 강조를 해두도록 하겠다.

A. HTML

  • HTML이란?
  • HTML의 역할
  • VSCode 사용하기
  • HTML 파일 만들기 및 열기
  • HTML 코드 작성

B. CSS

  • CSS란?
  • CSS를 이용해 스타일 입히기
  • 박스 모델
  • 클래스, ID와 셀렉터

C. (Project) 계산기 목업 만들기

  • HTML과 CSS 연동하기
  • Flexbox
  • 스스로 디자인 해보기

D. 자바스크립트

  • 변수와 타입
  • 조건문
  • 반복문
  • 매개변수와 전달인자
  • 배열
  • 객체
  • 원시 자료형과 참조 자료형
  • 얕은 복사와 깊은 복사
  • 스코프
  • 클로저
  • spread, rest 연산자
  • 구조 분해 할당
  • 화살표 함수

E. (Project) 계산기 기능 추가

  • 이벤트 리스너
  • textcontent 변경
  • 함수에 따른 HTML 구조 변경

F. CLI

  • CLI란?
  • Linux 터미널과 사용법
  • Linux 명령어
  • 절대경로와 상대경로
  • 패키지와 패키지 매니저
  • 런타임, Node.js
  • nvm과 npm

G. DOM

  • DOM이란?
  • querySelector
  • CRUD(Create, Read, Update, Delete)
  • Append
  • Class, id 다루기

H. Git

  • Git이란?
  • Git과 Github(로컬 스토리지와 원격 스토리지)
  • add, commit
  • Github에 push하기
  • revert(commit 되돌리기)
  • pull request

I. (Project) 나만의 아고라 스테이츠 만들기

  • createElement와 append를 통해 브라우저에 데이터 이어붙이기
  • flexbox의 활용
  • classList를 통한 modal window 생성 
  • pagenation 구현

 

2.  나의 목표는 무엇이었을까?

오타는 오타니

나의 목표는 3N 입사였다. 음음,.,.,.

그것보다 더 중요한 것은, 바로 올해 안에 주니어 개발자로써 취업하는 것!

주변 사람들에게 프로그래밍 공부를 하고 있다고 하면, '개발자는 맘만 먹으면 취업 하는거 아니냐', '연봉 3500은 깔고 간다던데?' 등등 여러 얘기를 들을 수 있다..,..,

 

내 생각에, 어떤 일을 준비할 때 가장 중요한 것은 주변 이야기에 휘둘리지 않는 것 같다.

내가 갈 목표를 정한 뒤, 주변 방해에 신경쓰지 않고 그 길로만 쭉 가다보면 언젠가 멋지게 성공한 나를 볼 수 있을 터.

그래서 나는 이런 말을 하는 사람들에게 항상 '내가 잘해야 그렇게 되는거 아니겠냐'며 웃어넘기고 있다.

 

3. 그럼 나는 이 길을 어떻게 걸어가고 있나?

A. 그대로 가져가면 되는 짐

1. 매일 아침 8시 반에 일어나기

- 이번 Section1을 진행하는 동안 가장 잘 지켰던 약속이 아닐까 싶다.

나는 잠이 많고 게을러서 아침 일찍 일어나는 것을 정말정말 못했는데, 이번 부트캠프를 시작하면서 매일 아침 8시 반에 알람을 맞춰 놓았다.

처음에는 정말 힘들었고, 8시 50분으로 알람을 미뤄놓고 다시 자는 날도 있었다.

하지만 같은 나날이 반복되고, 한달차로 접어들자 이제 주말에도 9시 전에 눈이 떠질 정도로 생활 습관이 잡힌 것 같다.

아직도 일찍 일어나기 힘든 사람들은 눈 떴을 때 이렇게 생각하면 좋을 것 같다.

'지금 안일어나면 돈못받는다!!'

 

2. 매일 블로그 쓰기

- 블로그는 과거에 매일 쓰기로 했다가 한번 실패한 경험이 있어서, 이번에도 잘 할수 있을지 걱정이 되었다.

아니나 다를까, 첫주부터 하루 블로그를 빼먹으면서 블로깅 챌린지도 실패하고, 나에 대한 믿음 역시 훅 떨어졌었다,..,

그렇지만, 언젠가 라이브 세션 중 다른 분들이 쓰신 블로그를 보여주셨고, 그 분이 좋은 곳에 취업했다는 이야기를 듣고 '지금 귀찮더라도 미래의 나에게 투자하는 셈 치자'라고 생각하니 그래도 꾸역꾸역 쓸 힘이 났다.

 

3. 스스로 공부하고 정리해 보기

- 비대면으로 학교를 다닐때는 모르는 개념이 있어도 그냥 강의자료만 달달 읽고 말았다. 어차피 시험은 강의 자료에서만 나오니까 굳이 따로 공부할 필요를 못느꼈기 때문이다. 하지만 이제 학교라는 울타리는 사라졌다. 내가 배워나가는 것들 하나하나가 실전이고, 현업에서 사용하는 기술들이기 떄문에 반드시 알아가야 하는 것들이 되었다. 

코드스테이츠의 강의자료가 부실한 것은 아니지만, 가끔 내가 이해하기 조금 어려운 내용이 나올 때가 있다. 이럴 때는 외부 자료나 다른 사람이 쉽게 풀어쓴 글 등을 읽어보고, 내 것으로 만들기 위해 정리하는 과정을 거치고 있다. 이때 사용하는 것이 바로 블로그. 배운 내용을 다시 적으며 상기해보고, 다른 사람에게 설명하듯 적으면서 완벽히 이해하는 것이다.

 

 

B. 버리거나 고쳐야 할 짐

1. 게임을 줄이자

- 나는 게임도 매우 좋아한다. 특히 축구 게임을 좋아하는데, 한판에 5~7분정도밖에 걸리지 않기 때문에 중간중간 브레이크 느낌으로 즐기고 있다. 문제는 가끔씩 한두판으로 끝나지 않는다는 것,.,.,.

게다가 부모님도 가끔 방에 들어오시는데, 하필 할거 다 하고 잠깐 쉬는동안만 들어오시기 때문에 맨날 게임만 하는줄 아신다,.,..,,.,.,..,.,,.

앞으로 배울 내용들은 슬슬 어려워 질 것이다. 수업시간은 물론 내 개인 시간까지 쏟아야 할 수도 있다. 그런데 이런 시간에 게임을 한다면,.,.,.,.전 내용을 제대로 이해하지 못하고 다음 내용을 넘어가면 또 이해하기 어려울 것이고, 이 악순환이 반복되어 수업을 듣는 의미가 없어질 것이다.

 

2. 자만하지 말자

- 이번 Section1 초반에는 기존에 배웠던 내용들이 많이 나왔다. 당연히 수업에 투자하는 시간이 적어졌고, 페어 프로그래밍이나 과제 시간에도 혼자 먼저 끝내버리고 쉬는 시간이 많았다. 그런데 Section1 마지막 Solo Project를 진행하면서, 나는 우물안 개구리였다는 것을 알게 되었다!!!

잘 하시는 분들이 굉장히 많았고, 내가 한참 고민했던 부분을 쉽게 해내시는 분들도 계셨다. 다행히 내 성격상 '저런 분들도 있구나~' 하기만 했지 자괴감이 들었다거나 하진 않았지만, 이제 내 기존 지식으로는 조금 부족하다는 것을 깨닫게 되었다. 내가 무언가를 배웠을 때, 조금 잘하는 것 같아도 '나보다 더 잘하는 사람도 있겠지? 그 사람들을 따라가기 위해 좀 더 해보자!' 라는 마인드를 가질 수 있는 좋은 계기가 되었다.

 

4. 앞으로는 어떻게 걸어가야 할까!

1. 게임을 줄이기 위해 남는 시간을 활용할 방법을 찾아보자.

- 다행히, 이번주부터 알고리즘 스터디가 시작된다. 

좋건 싫건 일주일에 6-8개 정도의 알고리즘 문제를 풀어야 하는 것이다. 

나는 알고리즘 공부를 했었지만, 별로 실력이 좋지 않기 때문에 어려운 문제를 만나면 꽤나 오래 고민하고 풀어야 할 수도 있다. 

빈 시간에 이 알고리즘 문제를 풀며 고민 한다면, 문제 풀이 실력도 늘고 게임도 줄이고 일석 이조의 효과를 누릴 수 있지 않을까 싶다!.

또한 이번에 과제로 독서 과제가 나왔는데, 남는 시간에 책을 읽는 것도 좋은 방법인 것 같다.

 

2. 다른 사람들의 글을 자주 읽고 나를 다잡아보자.

- 남과 나를 비교하는 것은 굉장히 좋지 않은 습관이지만, 중요한 것은 '그 사람에 비해 내가 열등하다는 생각을 갖지 않는 것'이다. 나는 다양한 취미가 있지만, 전문가 수준이라고 할 수 있는 것은 하나도 없다. 하지만 소위 말하는 '고수'들이 하는 것을 보아도 '부럽다,.,.나도 저렇게 할 수 있고싶다!'라는 생각이 들지 '나는 왜 저렇게 못하지?'라는 생각이 들지는 않는다. 

나의 몇 안되는 장점중 하나!

여튼, 세상은 넓고 개발자들은 많다. 같은 개념이라도 사람들마다 생각하는 것이 다를 것이고, 설명하는 방법도 다를 것이다. 이런 글들을 자주 읽으면서, 배울 점을 배우고 내가 잘못 알고 있던 것은 바로 잡는 과정이 필요하다. 그리고 이것을 다시 내것으로 만들면서 블로그를 적는다거나, 클론 코딩을 해보거나 한다면 바로 위에 있는 잉여 시간 처리에도 큰 도움이 될 것이다.

 

 

길다면 길고 짧다면 짧은 1달. 우여곡절도 많고 적응하기도 힘들었던 부트캠프였지만 이제는 슬슬 자리가 잡히는 것 같다.

좋았던 것은 계속 할 수 있도록, 나빴던 것은 얼른 고쳐버리고 더 좋은 점으로 발전시킬 수 있도록 노력하는 내가 되도록 하겠다.

Section2도 파이팅!!!!! 그리고 나와 함께 달려가는 동료들도 파이팅!!!