재미있는 게시판

해킹이나 개발 시작하고 싶은 데 어떻게 첫단추를 꿰야 되나 헤메는 냥붕이들이 꽤 있는 것 같아 조금 팁을 줘볼까 해.


1. 하고 싶은 것 구체화하기

말그대로, 개발도 해킹도 분야가 너무 다양하고 넓은 편이야. 각 분야마다 필요한 지식들도 대단히 상이한 것들이 많으니 일단 입문하기에 앞서서 내가 로스트아크 같은 게임에 클라를 만들고 싶은 지 털고 싶은 지, 서버를 만들고 싶은 지 털고 싶은 지 정도는 구체화 해 두는 것이 좋아. 가령 악기를 배운다고 해도 그냥 악기를 배워야 겠다에서 그치는 게 아니라 아 나는 플룻을 불어보고 싶다 정도는 정해 두는거잖아.


2. 하고 싶은 것 파고들기

https://engineering.linecorp.com/ko/blog/line-web-services-and-techs/

이를테면 라인같은 앱을 만들고 싶다. 혹은 까보고 싶다 정한 후에는 이런 식으로 그 서비스를 개발하는 데 어떤 기술들이 쓰였는지 알아보는 거야. 예시를 들자면 기술스택에 Nodejs 가 눈에 띄니 nodejs를 이용해서 뭔가 만들어 보고 싶다면 how to use nodejs 이런 식의 구글링으로 첫발을 띄게 되는 것일테고, nodejs를 해킹하고 싶다면 vuln of nodejs, how to hack nodejs. 이런 식으로 첫 삽을 뜨게 되겠지.


3. 파고들며 부족한 점 보완하기

기초지식이 부족한 상태서 구글링을 통해 접하게 되는 write up들 white paper들 기타 등등의 논문들을 보면서 이해가 가는 부분도, 그래서 제법 따라해볼만한 부분도, 반대로 전혀 엄두가 나지 않는 부분들도 있을거야. 그럼 이때 부족한 부분을 조금씩 조긍씩 채워나가면 돼. 그러는 과정 중에 저절로 아 내가 하고 싶은 걸 하기 위해서 이런 준비, 이런 지식들이 필요하구나 같은 것들이 체득 되는 거지. 절차지향 프로그래밍 부터 메모리관리로 넘어가는 과정중에 주화입마에 빠져 때려치는것보다 훨씬 더 흥미와 재미를 유지하기에도 좋고, 본인도 알고리즘이나 자료구조 공부할때 도대체 이것들이랑 본인이 크롬 버그 찾는 것과 무슨 연관성이 있는지 도저히 알 수 없었거든.


일단 생각나는 것들은 이정도이고 사실 공부법이라거나 그런것들은 왕도랄것도 없이 사바사인 경우가 많지만 혹여라도 이쪽 진로 생각하고 있는 냥붕이들한테 도움이 되었음 좋겠다.