본문 바로가기

전체보기

(47)
[DefinitelyTyped] 내가 쓰고있는 패키지의 타입 고치기! 최근에 오픈소스 컨트리뷰션에 참가하게되면서 TypeScript 번역을 집중적으로 하고있다. (관련해서는 활동이 끝나면 글을 써볼까 한다.) TypeScript로 개발하다보니, type definition은 이제 나에겐 없어서는 안될 존재가 되었고, 마침! 사용하던 패키지에서 타입을 고쳐야함을 발견했다. node-schedule이라는 패키지를 사용하고있는데 워낙 패키지가 업데이트도 느리고 (글 쓴 시점 기준, 가장 최근 버전 업데이트가 2019년 2월...) PR과 issue는 쌓여가는데 메인테이너들이 잘 안봐주는 것 같다. 아무튼, 이걸 쓰다가 타입을 고쳐야함을 알게되었는데, 타입을 고쳐 PR을 받아내기까지에는 시간이 걸릴 것 같아서 해당 코드에서는 일단 내가 타입을 직접 따로 정의해서 사용했었다. 그렇..
가장 긴 증가하는 부분 수열(LIS) 완전 정복 - 백준 파이썬 최근 들어, 알고리즘에 재미를 붙였다. 백준 문제를 풀면 문제 난이도마다 티어가 올라가는 재밌는 사이트(solved.ac)가 생겨서 뭔가 동기 부여되는 것 같다. 언어는 python을 사용하고 있다. (취준 할 때는 안 하고 꼭 뒷북치는 스타일... 그렇다고 실무에서 알고리즘이 안중 요하단 뜻은 아니다. 해야 할 때 덜 했을 뿐) DP Dynamic Programming을 집중적으로 좀 보고 있는데 백준에서 신기한 문제를 마주쳤다. 가장 긴 증가하는 부분 수열 구하기이다. Longest Increasing Subsequence라고 불리기도 한다고 한다. 오늘은 LIS에 대해 작성해보았다. 가장 긴 증가하는 부분 수열 임의의 수열이 주어질 때, 수열에서 몇 개의 수를 제거하여 부분 수열을 만들 수 있다. ..
[Appium] 모바일 테스트 자동화, 가능할까? 오늘은 Appium을 사용해보기위해 삽질한 경험에 대해서 글을 작성해보았다. Appium을 공부할 일이 생겨서 오늘부터 자료 조사를 조금 하고있는데, 한글로 된 자료가 거의 없어서 작성해보았다. 혹시나 Appium으로 테스트 자동화를 도입해보고 싶은데 어디서부터 시작해야할지 모르겠다 ㅠㅠ 하는 사람들에게 도움이 되길 바란다. Appium 공식 문서에도 나와있는 getting-started 부분을 따라해보았다. Appium이란? Appium은 iOS 시뮬레이터, Android 에뮬레이터, 실제 디바이스들(iOS, Android, Windows)의 테스트를 지원한다. 이번 글에서 시도해볼 환경은 Android 에뮬레이터이다. Appium은 Node.js로 구현된 Web Server인데 이런 역할들을 해준다...
[오픈소스 입문] 누구나 따라할 수 있는 오픈소스 컨트리뷰터 되기! 오픈소스에 기여하는 방법은 정말 다양하다. 계속 해봐야 실력이 늘어난다고하는데 기여하는게 사실 쉽지가 않다. 그래서, 이번 포스팅에서는 어디서부터 시작해야할지 모르겠는 사람, 오픈소스 기여 방법을 잘 모르는 사람들을 위해 아주 아주 쉬운 가이드를 하나 작성해보았다. first-contributions firstcontributions/first-contributions 🚀✨ Help beginners to contribute to open source projects - firstcontributions/first-contributions github.com 우리는 해당 레포에 참여해볼 것이다. 1. 위 레포를 Fork 하기! fork 버튼을 누르면, 내 github 계정에 현재 레포의 복사본을 생성해준..
Angular 시작하기! Angular는 다른 프레임워크 (React, Vue)와는 다르게 정보가 많이 없는 것 같다. 그래서 시간날 때마다 하나씩 써보려고한다. 그 첫번째 글은 Angular 시작하기!이다. Angular 설치하기 Angular 공식문서 Angular angular.io 공식문서를 그대로 따라해도 좋고, 이 글을 참고해도 좋다. 현재 이 글 작성일 기준, Angular의 버전은 v10.0.7 (stable)이다. 터미널을 열어서 Angular CLI 설치하자. npm install -g @angular/cli 프로젝트를 시작할 폴더를 만들고 Application을 설치해보자. ng new 라는 명령어와, 프로젝트 폴더명 angular-playground 라고 입력해보자. 이때 폴더명은 본인 마음대로 바꿔도 된다..
[Github] README로 프로필 꾸미기 얼마전, Github에서 숨은 feature가 등록되었다는 소식을 접했다. 바로, Github 소개를 마크다운으로 멋지게 꾸밀 수 있다는 것이다. 이스터에그를 발견했으면 직접 적용해줘야 제 맛! 등록하는 방법이 매우 간단해서 간단하게 글을 작성해보았다. 바꾸기 전 Github 프로필은 다음과 같다. 좌측에 닉네임, 소개, 직장, 이메일, 블로그 링크등을 아주 짧게 남길 수 있다. 나의 Github - seohyun0120 먼저, Repositories 탭에 들어가 New 버튼을 눌러 새로운 레포지토리를 생성해보자. 그 후, 레포지토리 이름에 자신의 Github 아이디를 입력하면 아래와 같이 You found a secret! 이라는 아주 귀여운 문구가 뜬다. 위에 Initialize this reposi..
[Barrier] 하나의 마우스와 키보드를 여러 PC에서 사용하기 여러 머신을 오가며 개발을 하게되는 경우가 있다. 각각의 머신에 키보드와 마우스를 연결하면 되지만 책상 공간 차지도 심하고 돈이 두 배로 드는 그런... 일이 생길수도 있다. KVM 스위치를 직접 구매해서 사용하는 방법도 있지만, 이걸 가능하게 해주는 소프트웨어 프로그램이 있다. Barrier debauchee/barrier Open-source KVM software. Contribute to debauchee/barrier development by creating an account on GitHub. github.com synergy를 fork해서 만든 오픈소스인데 정말 유용하다. 나는 현재 윈도우와 맥을 동시에 사용하고 있어서 Barrier를 설치해서 하나의 키보드로 사용중이다. 설치하기 Bar..
[Node.js][Log] morgan으로 http request 로그를 남겨보자 이전 글에서 winston으로 log를 기록하는 방법에 대해 글을 써봤다. 이번엔 winston과 morgan을 사용해서 어떻게 http request를 기록할 수 있는지에 대해 작성해보았다. winstonwinston! winstonjs/winstonA logger for just about everything. Contribute to winstonjs/winston development by creating an account on GitHub.github.comwinston은 이전 글에서 사용법에 대해 자세하게 적었으니 기본 세팅만 해두고 넘어가려고한다. 혹시 이전 글을 못봤다면, 여기서 볼 수 있다. npm install --save winstonlogger 생성하기// src/logger.ts..