-
개발 7년차, 매니저 1일차 리뷰 :: 마이구미책 리뷰 2021. 8. 14. 09:57
이 글은 "개발 7년차 매니저 1일차" 이라는 책을 리뷰한다. 본인은 평범한 개발자이다. 개인적인 생각과 해석이 들어가 있을 수 있다. 책 링크 - http://www.yes24.com/Product/Goods/87336637 본인은 CTO 도 팀장도 아니고 시니어 개발자도 아니다. 그렇다고 매니저 업무를 하는 것도 아니다. 그렇다면 이 책을 왜 읽었는가? 시니어 개발자가 되기 위해서이다. 당연한 말이지만 개발 경력이 많다고 시니어 개발자라고 불릴 수 있는 건 아니다. 개발 역량은 너무도 당연한 것이고, 팀원의 역량을 최대로 끌어낼 수 있는 능력을 갖춰야한다고 생각한다. 이건 업무 분배 능력일 수도 있고, 관리하는 능력일 수도 있다. 결국 매니징 능력이 있어야한다. 제목부터 관심을 끌어 읽게 되었다. 책..
-
HTML 속성 maxlength 주의사항 :: 마이구미HTML, CSS 2021. 8. 7. 22:39
이 글은 input 태그에서 제공하는 속성 중 maxlength 에 대해 다룬다. HTML 속성 maxlength 를 웹뷰와 IE 환경에서 사용해야한다면, 주의해야하는 사항들을 확인해보자. maxlength - https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength 일반적으로 우리는 입력창을 위해 input, textarea 태그를 사용한다. 그리고 글자 수의 제한을 두고 싶을 경우에는 maxlength 속성을 통해 쉽게 구현할 수 있다. 이것이 무슨 문제를 일으킬만한게 있는가? 지원해야하는 환경에 따라 문제가 발생할 수 있다. 하위 브라우저 IE 11 안드로이드 웹뷰 IE 11 에서는 어떤 문제가 있는가? 입력창에 한글을 사용한다면..
-
팀장은 처음이라 리뷰 :: 마이구미책 리뷰 2021. 7. 11. 12:56
이 글은 "팀장은 처음이라" 이라는 책을 리뷰한다. 본인은 일반 직장인이다. 개인적인 생각과 해석이 들어가 있을 수 있다. 책 링크 - http://www.yes24.com/Product/Goods/96652532 본인은 현재 팀장도 아니고 팀장 경험도 없고 팀장 예정자도 아니다. 하지만 그 기회가 오면 잡을 것이기 때문에 팀장이 되기 위한 능력을 기르고 있다. 목이 마를 때 물을 마시는 게 아니라 목이 마르기 전에 미리미리 물을 마셔둬야한다. 는 말처럼... 팀장의 역할을 정말 중요하다고 생각한다. 개인적으로 팀장의 성향과 방향에 따라 그 팀의 모든 것이 좌지우지 된다고 본다. 그렇기에 제목에 이끌려 이 책을 읽게 되었다. 본인은 현재 5번째 회사이고 각기 다른 5명의 팀장들을 경험했다. 이 책은 지난..
-
Redux 를 걷어낸 이유 :: 마이구미React 2021. 7. 6. 22:00
Redux 의 문제점이 무엇이고 이를 SWR 로 어떻게 해결할 수 있는지 다뤄본다. Redux 와 SWR 이 무엇인지에 대해서는 다루지 않는다. Redux - https://github.com/reduxjs/redux SWR - https://github.com/vercel/swr Redux 는 이미 대중화되어있고 대부분 이미 서비스에 사용되고 있는 라이브러리이기에 본인도 실무에서는 여전히 사용하고 있다. 하지만 개인적으로는 Redux 는 사용하다가 걷어내고 20년 초?부터는 사용하지 않고 있다. 그 대안으로는 SWR 라이브러리를 사용하고 있다. 짚고 가고 싶은 게 있다. "대안" 이라고 말하기가 조금 애매하다고 생각한다. Redux 와 SWR 은 본질 자체가 다르기 때문에 직접 비교할 순 없고 특정 관..
-
Tagged Template Literals 문법 :: 마이구미Javascript 2021. 6. 30. 22:00
이 글은 "Tagged Template Literals" 문법을 다룬다. 이 문법은 직접 구현해서 사용하는 경우는 흔치 않지만 이미 여러 라이브러리에서 활용하고 있어 쉽게 접할 수 있다. MDN - https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Template_literals Template Literals 우리는 동적인 문자열을 처리할 때 다음과 같은 형태를 많이 사용한다. const userName = 'Mygumi'; const age = 20; const output = `Hi, ${userName} and I am ${age}.`; ES6 에서 새롭게 도입된 기능으로 템플릿 리터럴(Template Literals) 이라고 불린다...
-
스타트업 3개월 뒤 당신이 기필코 묻게 될 299가지 리뷰 :: 마이구미책 리뷰 2021. 6. 27. 21:55
이 글은 "스타트업 3개월 뒤 당신이 기필코 묻게 될 299가지" 이라는 책을 리뷰한다. 본인은 일반 직장인이다. 개인적인 생각과 해석이 들어가 있을 수 있다. 책 링크 - http://www.yes24.com/Product/Goods/34534741 본인은 곧 창업을 준비하는 예정자도 아니고 창업 경험이 있는 사람도 아니다. 사실 자기계발서, 멘토링 등 분류의 책도 좋아하지 않는다. 대부분 좋은 말이나 조언을 들으면 다들 수긍할 것이다. 즉 그러한 말들을 인지하고 이해하지만 행동에 옮기지 못할 뿐이라고 생각한다. 그럼에도 이 책을 읽게 된 이유는 창업을 내려놓고 직장인으로 살아가다보니 잊고 있었던 것들을 다시 자극하기 위해 읽게 되었다. 챕터마다 직접 남긴 명언들이 있는데 흥미롭다. 많은 내용 중 본인..
-
window.open() 팝업창 구현하기 :: 마이구미Javascript 2021. 6. 5. 20:34
이 글은 widnow.open() 을 통해 새 페이지를 띄우는 팝업창을 다뤄본다. 팝업창은 여러 상황에서 따라서 메인 페이지와 통신하기도 하고, 어떤 시점 닫아야하기도 한다. 이러한 방식을 위한 구현, 주의사항, 웹앱 이슈 등을 알아본다. 우선 여기서 말하는 팝업창은 팝업이라는 용어와 비교하겠다. 팝업은 같은 창에서 단순히 div 태그를 absolute 형태로 보여지는 형태이다. 팝업창은 같은 창이 아닌 새로운 창을 의미한다. 위 이미지처럼 서로 다른 창으로 존재한다. 이렇게 새로운 팝업창을 띄우는 경우는 다음으로 나열할 수 있다. SNS 로그인 본인인증 모듈창 다른 페이지 or 다른 도메인의 페이지가 필요할 경우. 자바스크립트에서는 window.open() 을 통해 이를 구현할 수 있다. // 기본 예..
-
파일 다운로드 기능 구현하기 :: 마이구미Javascript 2021. 6. 5. 15:52
이 글은 자바스크립트를 통해 파일 다운로드 기능을 구현해본다. 파일 다운로드 기능은 클라이언트에서 제공해주거나 서버에서 제공해줄 수 있다. 2가지 방식에 대한 구현 및 주의사항, 웹앱 이슈 등을다뤄본다. 파일 다운로드 방식에 있어서, 2가지 방식은 무엇인가? 2가지의 기준은 클라이언트와 서버로 기능을 제공하는 주체가 된다. 간단하게 말하면, "서버 도움 없이 클라이언트 사이드에서 제공하는 것"과 "서버 사이드에서 다운로드를 위한 API" 를 제공해주는 것이다. 클라이언트 사이드에서 이를 제공할 수 있는 방식은 다음과 같다. a 태그에서 download 속성이라는 것을 제공해준다. 서버에서 제공해주는 방식은 다음과 같다. HTTP 응답 헤더인 Content-Disposition 를 활용하는 것이다. 이를 ..