분류 전체보기 84

사파리 new Date('yyyy.MM.dd') 이슈

크롬에서 new Date('yyyy.MM.dd')를 사용하면 정상적으로 동작한다. 사파리에서 new Date('yyyy.MM.dd')로 만들면 invalidDate가 발생한다. 크롬과 사파리의 브라우저 렌더링 엔진이 조금 달라서 그런듯하다. new Date('yyyy-MM-dd')로 만들면 해결할 수 있다. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/Date Date() constructor - JavaScript | MDN Creates a JavaScript Date instance that represents a single moment in time in a platform-indepen..

자바스크립트 2021.11.01

2020년 어느 멍청한 개발자의 회고

0. intro 2020년도 끝이 다가왔다. 올해도 마찬가지로 회고를 남긴다. 여러가지 일이 있었고, 여러 사람과의 인연이 있었다. 수 많은 생각을 했고, 많은 실패와 도전을 겪었으며, 몇 가지 성공을 하기도 했다. 그 많은 경험을 모두 담을 수는 없지만, 올해도 기억에 남는 일들을 글에 담아 회고를 남긴다. 회고는 "나를 되돌아 보는 수단"이며, "내가 앞으로 나아가기 위한 수단"이 된다. 글을 쓰면서도 여러가지 생각이 들었기에... 회고를 쓰는건 좋은 방법인거 같다. (글 길다 주의... 글만 있다...) 1. 상반기 스프린트 리더 (2020.01 ~ 2002.05) 상반기에 팀에서 스프린트 리더직을 수행했다. 자세한 내용은 링크로 대체 2020/06/07 - [회고] - 1년차 개발자에게 리더를 맡..

회고 2020.12.27

IE에서 absolute가 정상적으로 작동하지 않을 때

크롬에서는 디자인이 잘 나오는데, IE에서는 디자인이 이상하게 나오는 경우가 있었다. 자식 속성에 absolute로 되어있고, top, bottom을 0으로 줬는데 높이가 꽉 차지 않는 버그였다. 바로 위 부모에는 relative로 잘 적용되어있었고, 원인을 알 수가 없었다. 의심가는 것들을 모두 검색하다 발견... 혹시 부모 relative의 태그가 가 아닌지 확인하라. td태그(display: table-cell)의 경우 일부 브라우저에서 position: relative 속성을 무시한다. 와우.. 놀랍게도 ie는 td에 relative 속성이 적용된다. 즉, IE가 버그인줄 알았건만 크롬이 버그였더라. 모두 동일하게 표시를 하려면 아래 를 추가하여 태그에 relative 속성을 주도록 하자. ...

HTML5, CSS3 2020.12.14

mv명령어 vs cp 명령어

서버 파일 이름 변경할 필요가 생겨서 mv를 통해서 이름을 변경했더니 mv가 가지는 원본 파일을 삭제하는 특징 때문에 문제가 발생했다. 원본 파일의 보안 컨텍스트때문에 발생한 문제이다. 파일을 이동하는 mv 명령어는 원본 파일의 보안 컨텍스트를 유지하게 되며 이때문에 의도하지 않게 SELinux 에 의해 차단될 수 있습니다 (www.lesstif.com/ws/cp-mv-48988340.html) 이런 문제가 발생할 수 있기 때문에 cp 명령어로 파일을 복사하도록 한다.

Linux 2020.10.23

리액트 - 타입스크립트 시작하기 (without CRA)

CRA(create-react-app)는 분명 편하긴 하지만, 결국 다 학습해야 하는 입장에서, 필요하지 않은 패키지도 추가한다는 입장에서 너무 비대한 기능이다. CRA를 사용하지 않고, 초기 react - typescript를 세팅하는 법을 알아보려고 한다. 1. 프로젝트 생성하기 > 아무것도 없는 빈 폴더를 만든다. 2. npm 설정하기 npm init 3. npm package 추가하기 // 웹팩 설치 npm install --save-dev webpack webpack-dev-server webpack-cli // 바벨 설치 npm install --save-dev babel-loader @babel/core @babel/preset-env @babel/preset-react babel-prese..

React 2020.09.08

17기 넥스터즈 회고

원래 회고는 연말에 써야 JMT인데 이번 넥스터즈는 유별난 경험이었기에 회고를 작성한다. 글 길다. (아마도) 사진 없다. (귀찮아서) 넥스터즈 17기 활동. 활동 자체를 고민 많이 했다. 이미 넥스터즈 활동은 내게 있어서 성장에 크게 도움되지 않는 활동이었고, 더 이상의 스펙에는 의미가 없다고 생각이 들었었다. (오만과 자만 가득) 그럼에도, 이번에 지인들이 많이 신청했다는 말을 듣고 한번 더 해야지 생각했다. 특히, 이번 넥스터즈에서는 놀 생각을 가지고 참여했다. 시작은 그러했다... 그 팀에 들어가기 까지... 1. 서막의 시작 이번 넥스터즈에서 개인적으로 서버를 개발하고 싶었다. 메인은 당연히 못할거라 생각했기에 서브 개발자로 배우면서 조금씩 해 보고 싶었다. 그런데 왠걸? 서버 경쟁률이 미친듯이..

회고 2020.09.06

Gradle Version Downgrade

안드로이드 멀티 모듈 프로그래밍을 하다가 얘기치 못한 문제를 마주하게 되어 gradle version을 downgrade하기로 결정했다. (6.0 에서 5.6.4로 다운그레이드) 1. File -> Project Structure -> Project 탭에서 Gradle Version을 원하는 버전으로 변경한다. 2. root 디렉터리의 gradle-wrapper.properties의 distributionUrl이 선택한 버전으로 변경되고, sync 할 수 있는 상태표시바가 노출된다. 3. Sync를 누른다. 여기까지가 가장 기본적인 단계이다. 하지만, 안드로이드는 Gradle Plugin과 Gradle Version을 매칭시켜줘야 하기 때문에 매칭이되지 않을 경우 android minimum suppor..

안드로이드 2020.07.10

Ubuntu 18.04 LTS에서 OpenStack 설치하기

어제까지만 해도 vm으로는 안될거라고 생각했는데, OpenStack을 발견하고 희망을 찾았다. 우선.. vm에서 알수 없던 오류가 나는 이유를 알았다. 서버의 가상화 옵션을 꺼두었기 때문에 64bit를 실행할 경우 에러가 발생했던 문제였다. 서버를 재부팅하고, bios 모드로 들어가서 각 환경에 따라 CPU 가상화 모드를 enable로 변경한다. virtualbox를 설치하고, (데스크탑 모드여서 그냥 화면 보고 설치했다.) 아래 블로그를 참고하여 OpenStack을 꾸리기 시작했다. https://jbhs7014.tistory.com/m/59 [OpenStack] DevStack으로 OpenStack 설치하기 DevStack이란? 본격적으로 오픈스택을 통한 클라우드 환경을 구축하기 위해서는 가장 먼저 ..

Server 2020.07.01

Ubuntu 18.04 LTS에서 Docker 설치하기

고민 끝에 host os위에 VM을 하나 올리고, 그 위에 도커 컨테이너를 올리기로 결정했다. 우선 cli에서 VM을 설치하는 것도 난관이었다.. 그래서 실패했다.....;; CLI로 VM을 설치하고, vagrant를 설치하여 실행시키려 했더니 알 수 없는 에러로 인해... 삭제.. 그래서 도커를 올리기로 결정했다. ㅋㅋ 도커를 먼저 올려서 컨테이너 기반의 서버 작업을 진행한 뒤, 쿠버네티스에 담기로 결정했다. 쿠버네티스 마스터 노드를 내 서버에 띄우면 될 것 같다. https://gmyankee.tistory.com/226 [Docker](도커) #04. Docker Install on Ubuntu 18.04 LTS 서론 https://gmyankee.tistory.com/178 도커 1장 | Ubun..

Server 2020.06.30