공부해야할 주제

  • 프론트엔드(front-end) — 이용자의 웹브라우저에서 직접적으로 보이는 부분을 다루는 기술들
  • 백엔드(back-end) — 웹브라우저가 주고받는 데이터를 기록하고 가져오는 등의 뒷 단의 궂은 일을 처리하는 기술들
  • 데이터베이스(database) — 백엔드가 다루는 데이터를 보관하고 검색해 오는 기술
  • 네트워크(network) — 여러 컴퓨터 사이의 데이터 통신에 필요한 기술들
  • 에디터/툴/버전관리 시스템(tools) — 각 주제 개발 작업에 필요한 도구들 선택과 활용
  • 기초 자료 구조(data structure) — 프론트엔드나 백엔드 프로그래밍 모두에 쓰이는 기초 지식. 데이터를 원하는 형태로 찾기 좋게 연결하는 구조.
  • 리눅스/도커/AWS — 백엔드와 데이터베이스를 운영할 기술과 환경

프론트엔드 기술

  • Vue.js — 보통의 웹사이트 처럼 간단한 화면 요소들만 필요할 것 같다면 Vue.js를 공부해서 씁시다.
  • React.js — 흔히 보는 웹사이트들 보다 우아하고 현란하게 바뀔 내용이 많은 경우에는 React.js를 공부해서 쓰기로 해요.
  • AngularJS — AngularJS는 시작도 하지 말아요. 덩치 큰 괴물입니다.

  • 유행하는 기술을 빨리 공부하고 싶은 조급한 마음은 잠시 가라앉히고, 기초부터 닦는 게 실질적 도움이 더 크기도 해요. 그리고, 어차피 React나 Vue.js 같은 것들은 2~3년이 지나면 또 언제 핫했냐는 듯 금세 유행이 가고 더 새로운 기술로 그 관심이 옮겨갑니다. 빠르게 변하는 분야는, 어제의 핫한 기술이 오늘의 폐품이 되는 주기가 굉장히 짧습니다.
    그래서 기초를 잘 쌓으면서, 그 위에 유행하는 기술은 잘 익혀서 유통기한 내에 잘 써먹고 잊으면 됩니다. 핫한 기술들은 지식을 축적하는 게 아니라 소비하는 일이라고 보면 좋습니다. 잘 씹어 먹고 잘 소화해서 그 날의 에너지원으로 삼으면 됩니다. 굳이 그 지식들을 뼛속 깊이 쌓아둘 필요는 없어요. 너무 오래 쌓아두면 오히려 독소가 됩니다.
    반면, 기초가 되는 기술들은 뼈로 만들기까지 시간이 좀 들고, 당장은 쓸모없어 보이기도 합니다만, 일단 뼈가 되고 나면 그 위에 지방을 쌓든 근육을 키우든, 중요한 버팀목이 되어줍니다. 뼈와 지방은, 어느 한쪽이 중요하고 다른 쪽이 덜 중요한 것이 아니라, 성격과 활용이 다른 것뿐이고 둘 다 중요하고 필요합니다.
    다만 보통 초심자들이 겉에 잘 드러나는 지방과 근육에 쉽게 현혹되기 때문에, 이 연재에서는 균형을 맞추고자 뼈를 만드는 쪽을 좀 더 강조하는 입장을 취하도록 하겠습니다.
  • 이 시대의 인프라 시스템이 너무 잘 돼 있어서, 사실 그 어느 때보다도 한 개인이 완전한 서비스를 만들어 내기 쉬운 환경이 됐습니다. 앞으로 더 쉬워지겠지요.

‘개알못인 당신이 웹개발을 시작한다면’