IT 5분 잡학사전 [1]
[에피소드1] 개발자에 대한 오해 5 가지
나는 4년차 백엔드 개발자다.
비전공자로 학원에서 6개월정도 배워서 취업했고 다행히 내가 취준을 할 시기는 개발자를 모셔가는 시기여서 지금보다 상대적으로 취업이 쉬웠다.
그렇다고 개발이 쉬었다는것은 아니다.
지금도 나는 개발이 참 어렵다.
최근에 잠깐 휴직을 하면서 '스파르타 코딩클럽' 에서 내일배움캠프에 참가해 수업을 받았는데 지금 시작하는 사람들 보면 정말 열심히 한다.
책에서도 말하고 있지만 개발을 잘하려면 암기, 영어, 수학, 재능... 이런게 중요한게 아니라 정말 꾸준히 오랫동안 앉아서 한가지 일에 몰두할 수 있는 끈기가 필요하다.
나는 재택으로 하루종일 앉아있는일에 4년간 길들여진 몸이라 그렇다 쳐도 개발을 해본적도 없는 수강생들이 10시간, 13시간 앉아서 코딩만 하고있는 모습을 보면 진짜 동기부여 확실히 된다.
게다가 가르쳐주는 부분만 공부하는게 아니라 알아서 구글링으로 딥한 영역까지 파고들어서 공부하더라.
한두명만 이런게 아니라 수강생 전원이 대부분 이런식으로 공부했고, 기초지식만 따지면 나보다 더 잘하는사람이 수두룩 생겨났다.
그런 사람들도 취업이 안되서 지금 다른일 한다더라.
만약 내가 지금 개발을 시작했다하면 취업은 글렀을것갔다.
일찍 시작해서 너무너무 다행이다.
[에피소드2] 어떤 언어부터 공부해야 할까?
나는 java로 시작했다.
그렇다고 java만 한건 아니고 당연히 프론트도 같이 공부했다.
국비지원같은 경우 한가지를 신청한다고 해서 언어 하나만 가르치는게 아니라 연관된 언어도 가르친다.
처음 개발을 시작하게된 학원에서는 '빅데이터 전문가과정' 을 수료했는데 java, html, js, css, sql 정도 배운것같고,
스파르타 코딩클럽은 좀더 광범위했다. 'node' 과정을 수료했는데 node, nest, html, js, css, firebase, aws... 등등을 배운것같다. (1년이나 지나서 기억이 잘...;;)
솔직히 node는 괜히들었다 생각한다.
취업에 도움이 안되는건 확실하다.
나랑 연락하는 수료생들 중에서 node로 취업한 수료생은 3명정도 봤다.
나도 취업이 안되서 원래 다니던 회사로 복귀했다.
아무리 취업난이라고 해도 좀 심한거 아닌가...
스파르타를 나쁘게 말할 생각은 없지만 아무튼....
결론을 말하자면 책에서 나온것처럼 목적에 따라서 배우는것도 좋지만 주변 개발자들의 조언을 꼭 참고했으면 좋겠다.
하지만 취미로 배운다면야.... 뭘 배우던 무슨상관인가?
[에피소드3] 새 언어를 배우는 노하우?
나는 새로운 언어르 배울때 바로 영상이나 책을보고 따라하지만? 책에서 나온 내용을 참고하고싶은사람도 있을테니 이 부분은 내용만 바로 적어놓겠다.
1. 공식문서 살펴보기 절때안봐.....다 영어야...뭔말인지 모르겠어
2. 문법 확인하기
3. 다른언어와 비슷한 특징 집중해서 보기
4. 새 언어로 코딩 시도하기
5. 튜토리얼 시작하기
6. 나만의 프로젝트 만들기
[에피소드4] 언어 이름은 왜 그렇게 지었을까?
자바 : 자바를 디자인한 사람 사무실 앞에 오크나무가 있어서 오크라고 지어질 뻔 하였지만 당시 오크 테크놀로지라는 회사가 있었기 때문에 언어를 개발하던 사람들이 좋아하던 커피 종류인 자바라고 지었다.
코틀린 : 러시아 섬인 코틀린을 따서 프로그래밍 언어 이름으로 사용했다.
자바스크립트 : 모카 -> live script -> 당시 유행하던 자바의 이름을 활용해서 'java script'
C : 당시 가장 유명했던 프로그래밍 언어인 B 언어의 이름을 따라 지었음.
C++ : C 에서 조금 더 발전한 언어라는 의미
루비 : 일본 개발자가 만든 프로그래밍 언어로, perl의 발음이 진주를 뜻하는 pearl과 비슷해서 루비라고 지었음
파이썬 : 코미디 쇼의 이름을 따라서 지음. 파이썬이 비단뱀이라는 의미도 있어서 비단뱀 2마리를 로고에 사용
go : 구글이 만든 언어라 앞글자를 따서 go 로 지음
러스트 : 러스트 창시자가 곰팡이를 너무 좋아해서 rust(녹슨다, 식물의 녹병) 이라고 지음
[에피소드5] C, C++, C#은 이름처럼 비슷할까?
C : 세 언어 가운데 가장 오래되었고, 메모리 자원을 효율적으로 사용하면서도 실행 속도가 빠르다.
C++ : C를 포함하는 언어로, 절차지향이면서도 객체지향이다. 실행속도는 C 언어와 비슷하다.
C# : 마이크로소프트에서 만든 언어로, 다양한 분야에서 사용할 수 있다. 실행 속도는 세 언어 가운데 가장 느리다.