본문 바로가기

728x90

전체 글

[리뷰] 유닉스의 탄생 들어가며 매일 사용하고 있는 유닉스 였기 때문에 조금 더 이해하고 싶었고, 잘 알고 싶어서 이 책을 읽기 시작했다. 결론부터 얘기하자만 굉장히 만족스러웠다. 이 책만큼 생생하게 당시의 상황을 그려낼 수 있는 책이 또 있을까 싶은 생각이 들었다. 느낀점 벨 연구소에서 유닉스가 탄생했다는 것도 몰랐던 사실이었고, 유닉스를 개발한 천재적인 개발자들에 대해서도 잘 몰랐다. 이러한 천재들의 공통점은 개발을 좋아하고 자신이 좋아하는 것들을 소프트웨어로 승화시켰으며, 이러한 것들이 결국 대단한 작품을 만들어냈다는 것이라고 느꼈다. 또한 유닉스가 시작된 시점부터 구현되었던 명령어들이 지금까지도 존재하는 것에서 더해 엄청나게 활용되고 있다는 것이 신기했다. 그만큼 간단하고, 실용적이기 때문에 대체되지 않고 유지될 수 있.. 더보기
[리뷰] 팀 개발을 위한 Git, Github 시작하기 개발자로 일하기 위해서 공통적으로 필요한 필수 스킬들이 존재하는데 그 중하나가 바로 Git이다. Git 이전에는 SVN을 많이 사용하기도 했었는데 이러한 코드를 관리하는 도구들을 일컬어 Source Code Management (SCM)이라고 부르며 실무에서는 필수적이다. 만약 이런 도구를 사용하지 않는다면 서로간에 작업한 코드를 파일로 주고 받으며 관리를 해야하기 때문에 너무 소모적이고, 위험하기 때문에 Git이든 SVN이든 사용해야 한다. 최근에는 대부분 Git을 사용하고 있고, Github과 같이 Git으로 파생된 서비스들이나 Source tree와 같은 도구들이 생겨나고 있어서 여러가지 이유로 Git을 배우는 것이 유리하다. 이런 면에서 이번에 읽어본 탬 개발을 위한 Git Github 시작하기 .. 더보기
[리뷰] bash를 활용한 사이버 보안 운영 들어가며 개발자들에게도 bash 명령을 포함한 CLI 도구의 활용은 필수 요소라고 생각한다. 특히나 클라우드로 인해 백엔드 개발자가 인프라까지 전담하는 경우도 많다보니 CLI 환경은 백엔드 개발자에게도 굉장히 밀접하다. 나는 지금껏 bash에 익숙하다고 생각해왔지만 실상을 들여다보면 기본이 많이 부족한 상태에서 서버 운영을 해왔던 것 같다. 서버에 이슈가 생겨 트러블 슈팅이 필요한 경우 원하는 정보를 수집하거나 스크립트를 작성할 때 항상 구글에 접속하여 원하는 명령어를 찾을 때까지 검색을 하는 경우가 대부분이다. 예를들어 찾고자 하는 텍스트가 포함된 파일들을 검색하고 싶은데 명령어를 만들 수 없어서 하나씩 찾을 때도 있고, find 명령을 사용한다는 것을 알고 있어도 조건을 만들지 못해 원하는 find .. 더보기
Go언어로 웹 서버 개발 시 Swagger 문서 자동 생성하기 개요 지금까지 Swagger 문서를 만드는 작업을 수작업으로 해왔는데, API가 갱신될 떄마다 반영하기가 힘들어서 매번 버전이 다른 문제가 있었다. python의 경우 장고를 사용하면 자동으로 Swagger 문서를 생성해주는 기능이 있어서 Go 언어는 없을까 하여 찾아보니 swaggo를 발견하게 되었다. Swaggo Swaggo는 주석을 활용하여 코드로 작성된 내용을 Swagger Documentation 2.0으로 변환한다. Go 언어에서 자주 사용되는 여러 웹 프레임워크를 지원하고 있고, 내가 현재 사용 중인 Echo도 역시 지원한다. 여기서는 Echo Framework를 기준으로 설명한다. Swaggo를 사용하기 위해서는 먼저 CLI 도구가 필수적으로 필요하다. 아래 go get 명령을 사용하여 간.. 더보기
[리뷰] Head First Go 어느덧 Go언어를 사용한지 2년이 되었다. Java 언어로 개발을 해오다가 처음 Go 언어를 접했을 때 어떤 부분은 C와 비슷하기도 하고 Java와 비슷한 부분도 있어서 혼란스러운 부분이 많았었다. 특히 포인터를 활용하는 부분에 있어서는 예전에 C++을 했던 기억으로 내가 느끼기에는 Syntax가 애매모호한 부분들이 있었다. Head First Go 책에도 포함된 내용이긴 하지만 내가 느꼈던 혼란은 Go 언어 자체적으로 편의를 위해 제공되는 것들이 꽤 있었기 때문이었다. 예를 들어 구조체 포인터인 경우 정상적으로 포인터를 참조하려면 (*pointer).value 와 같이 참조를 해야할 것 같은데 pointer.value로도 참조가 가능하고, 생성하지 않아 nil 값인 슬라이스를 내장 함수에 전달할 경우 .. 더보기
[리뷰] 개발자의 디자인 독해력 언제나 관심은 가지고 있지만 나에겐 너무 어렵게만 느껴지는 것이 바로 디자인이다. 그 동안 백엔드 개발자로 일해왔기 때문에 디자인에 신경쓸만한 일이 거의 없었지만 최근에는 풀스택 개발자로 업무를 하면서 백엔드에 비해서는 적은 비중을 차지하긴 하지만 디자인도 신경을 쓰며 개발을 해야했다. 기능이 아무리 좋아도, 때깔이 별로면 사용자들은 사용하기를 꺼려한다. 심지어 외부에 공개되지 않는 사내 시스템 조차 UI/UX가 별로면 사용하고 싶은 마음이 사라진다. 그러니 일반 사용자에게 제공되는 웹 서비스나 어플리케이션들은 오죽할까 이 책을 읽기 전까지는 디자인은 개발자에게는 너무 어렵고 거리가 먼 업무라고 생각해왔다. 개발자가 이 정도 디자인 했으면 잘한거지 하면서 스스로 위안을 하기도 하고, 개발을 할 때도 항상.. 더보기
[리뷰] 개발 7년차, 매니저 1일차 책 제목을 보는 순간 개발 8년차인 나와 비슷한 눈높이에서 많은 조언을 얻을 수 있을 것 같다는 생각이 들었다. 사실 나는 아직 매니저 역할은 하지 않고 있고, 아직 먼 얘기라고 생각하고 있지만 나와 비슷한 연차에서 매니징을 하시는 분들도 많기 때문에 그 분들은 어떤 고민을 하고 있을지 또 어떤 판단과 결정을 내리고 있는지 궁금했다. 책을 읽으면서 매니저에 대해 내가 생각하지 못했던 부분들이 참 많다라는 것을 느꼈다. 그 동안은 매니징을 받는 입장이었기 때문에 매니저 입장에서는 거의 생각을 해본적이 없었던 것 같다. 왜 팀장님은 저런 지시를 내리고 지난 번에는 이 업무가 꼭 필요하다는 듯이 얘기했으면서 갑자기 우선순위가 떨어지니 다른 업무를 먼저 하라는 지시를 내리는 것인가, 그리고 왜 내 일정은 고려하.. 더보기
[리뷰] Vue.js 코딩 공작소 들어가며 요즘 세미나나 스터디에 참여하다보면 프론트엔드와 백엔드를 둘 다 하고 계신 분들이 참 많다. 나 또한 백엔드 개발만 해오다가 얼마전부터 프론트엔드까지 하게 되어 굉장히 힘든 나날을 보내고 있다. 한번에 사용해야 하는 언어도 여러가지이고 사상도 달라서 개발 중간 중간 헷갈릴 때가 많다. 내 생각에는 아직 백엔드에 비해 프론트엔드에 대한 기본 지식이 부족해서 인 것 같다. 백엔드도 굉장히 발전히 빠르고 공부할 것들이 넘쳐나기 때문에 둘 다의 트렌드를 따라가기에는 쉽지 않은 것이 사실이다. 이런 상황이다 보니 나의 프론트엔드에 대한 목표는 먼저 자바스크립트 기본을 익히고, 잘 만들어진 것들을 가져다 잘 사용하는 것이었다. 개발을 하다보면 가장 힘든 부분이 초반에 프로젝트 구조를 어떻게 잡고, 유지보수.. 더보기

728x90