Curious Traveler

Curious Traveler

호기심, 여행, 음악, 그리고 프로그래밍

AWS S3의 파일들을 Google Cloud Storage (GCS)로 옮기기
Google Cloud Platform

AWS S3의 파일들을 Google Cloud Storage (GCS)로 옮기기

AWS S3의 12개월 무료 기간이 끝나가서 이대로 계속할까 고민하다가 마침 구글 클라우드 플렛폼 (Google Cloud Platform; GCP)에 기간 한정이 아니고 언제나 무료 서비스들이 있다고 해서 알아보았다. GCP는 기간 한정 없이 항상 무료인 서비스들이 있었는데, 그 중은 AWS의 EC2에 해당하는 Google Compute Engine과 AWS의 S3에 해당하는 Google Cloud Storage가 포함되어있었다!
3분 글
AIY Voice Kit V2로 구글 스피커 만들기
IT & 테크

AIY Voice Kit V2로 구글 스피커 만들기

(이 포스트는 macOS 기준으로 설명하는 포스트입니다.) 구글에서 AIY Voice Kit이라는 자기 스스로 스마트 스피터를 만드는 키트가 있다. 가장 처음 나온건 v1이고 새롭게 나온게 v2다. 프로젝트 공식 홈페이지는 이곳 (영문) v1과 v2의 가장 큰 차이점은 바로 raspberrypi의 버전. v1은 raspberrypi 3 기판을 사용하고 v2는 raspberrypi zero WH 기판을 사용한다는 점이다. 이
8분 글
쿠키(Cookie)에 대해 알아보자
IT & 테크

쿠키(Cookie)에 대해 알아보자

웹 기술, 특히 사용자를 식별하고 정보를 수집하여 분석하기 위해선 거의 필수적인 쿠키에 대해 알아본다. # 쿠키란 무엇인가 쿠키는 어떤 웹사이트를 방문하였을 때, 그 사이트에 방문한 이력, 이용 기록 (예를 들면 검색어 혹은 로그인 상태)와 같은 정보가 기록된 아주 작은 크기의 파일을 말한다. 사용자의 컴퓨터에 저장된다. 쿠키는 사용자 단위가 아니라 브라우저
6분 글
[자바스크립트 기초-8] Array 기본 메소드-2
자바스크립트

[자바스크립트 기초-8] Array 기본 메소드-2

지난 포스팅에 이어 이번 포스팅에서도 기본 메소드에 대해 알아보도록 하겠습니다. #알파벳 순서대로 정렬 Array의 아이템들을 알파벳 순서대로 정렬할 땐 sort()를 쓰면 됩니다. var arr = ["Bear", "Cat", "Ant", "Elephant", "Dog"]; arr.sort(); console.log(arr); // 결과 -> ["Ant", "Bear", "Cat", "Dog", "Elephant"] 한글도 가나다 순서로 정렬 할 수 있을까요? var
12분 글
[자바스크립트 기초-7] Array의 기본 메소드
자바스크립트

[자바스크립트 기초-7] Array의 기본 메소드

개발을 하다보면 반드시 사용하게 될 Array (배열). 이번 포스팅에서는 기본적으로 사용할 수 있는 array의 메소드들에 대해 알아보도록 하겠습니다. 이런게 가능하구나 정도로만 알고 있으면, 나중에 개발할 때 솔루션을 생각할 때 도움이 됩니다. #Array의 기초 자바스크립트에서 array는 []로 표현합니다. var arr = []; // 아이템이 없는 빈 array var arr = ["Hello", "Bye", "World", "Good", 100,
9분 글
[자바스크립트 기초-6] 변수를 생성하는 법
자바스크립트

[자바스크립트 기초-6] 변수를 생성하는 법

자바스크립트에서 변수를 생성하는 방법은 3가지가 있습니다. 이번 포스트에서는 각각의 변수 생성법에 어떤 차이가 있는지 알아보도록 하겠습니다. #var 우선 가장 기본적인 형태는 var를 이용하는 것입니다. 영어 "Variable"의 약자로 변수를 뜻합니다. 특징으로는 생성한 변수의 값을 바꾸는 것이 가능하고, 다시 같은 이름의 변수를 재정의 하는 것이 가능하다는 점입니다. var a = "Hello"; console.
2분 글
MongoDB 검색 기능 활용하기
MongoDB

MongoDB 검색 기능 활용하기

어플리케이션을 만들다 보면, 검색 기능은 빠질 수 없는 기능 중 하나이다. 하지만 실제로 구글처럼 키워드나 문장을 넣어서 검색되는 기능을 구현하려면 매우 복잡해진다. 일반적으로 검색엔진에서 검색 기능은 다음과 같이 구현된다. 1. 이용자가 넣은 키워드 혹은 문장을 읽어들인다. 2. 문장이라면 키워드를 뽑아서 나눈다 3. 데이터베이스에서 해당 키워드와 문장을 이용하여 검색을 돌린다. 4.
11분 글
Hash란 무엇인가
디지털 암호

Hash란 무엇인가

데이터의 암호화 기법은 크게 두가지 방법으로 나눌 수 있는데 다음과 같은 차이가 있다. Encryption (암호화) Encryption을 통한 암호는 기본적으로 Decryption(해독)이 가능하다. Hash (해쉬) Hash는 일방 통행의 암호화이기 때문에 한번 암호화 된 것은 해독이 불가능하다. 이번 글에서는 이 해쉬가 무엇인지에 대해 알아보도록 한다. 1대1 이론적으로 해쉬는 하나의 인풋(input)
9분 글
Public/Private Key Pair에 대해 알아보자
디지털 암호

Public/Private Key Pair에 대해 알아보자

온라인으로 파일이나 메세지를 보낼 때, 요즘에 나오는 대부분의 어플리케이션은 그 내용을 암호화해서 전송하는 방법을 쓴다. 중간에 누군가가 해당 내용을 가로채도, 무슨 뜻인지 알 수 없게 만들기 위함이다. 사용자의 개인정보 보안을 위해서 암호화는 필수인데, 그 중 가장 보편적으로 쓰이는 방법인 Public/Private Key Pair에 대해 알아본다. #Public/Private Key란? Public Key와
6분 글
Ghost 포스팅안에 링크 새창에서 열리게 하기
ghost

Ghost 포스팅안에 링크 새창에서 열리게 하기

고스트 블로그로 새로운 글을 적었을 때, 그 안에 링크를 포함한 경우, 클릭하면 현재 화면에서 이동하게 된다. 그렇게 되면 글을 읽던 사람은 한번 블로그에서 벗어난 후 다시 블로그에 뒤로가기를 해서 돌아와야하는 번거로움이 있기 때문에, 처음부터 그냥 새창에 열리도록 하는 방법을 소개한다. 방법은 두가지가 있다. #링크 마크업에 직접 지정하기 고스트에서 링크를 걸
2분 글
Ghost에 highlightJS 적용하기
ghost

Ghost에 highlightJS 적용하기

Ghost 블로그에는 코드 블럭 기능이 이미 내재되어있는데, IDLE처럼 조금 더 다양한 색깔로 바꾸고 싶을 땐 highlightJS라는 라이브러리를 이용하면 된다. 이 라이브러리는 HTML5의 pre 태그 안의 스타일링을 바꿔주는 자바스크립트 라이브러리다. #highlightJS 불러오기 우선 고스트의 관리자 화면에 가서 "Code injection" 메뉴를 클릭한다. "Blog Header" 섹션에 일단 다음 3줄을 추가하자.
2분 글
자바스크립트의 모듈화와 표준에 대하여
자바스크립트

자바스크립트의 모듈화와 표준에 대하여

자바스크립트는 기본적으로 모듈화 기능이 없었다. 여러 .js 파일로 쪼개서 모든 파일들을 일일이
11분 글
[자바스크립트 기초-5] this에 대해 알아보자
자바스크립트

[자바스크립트 기초-5] this에 대해 알아보자

자바스크립트 코드를 읽다보면 this가 자주 언급되는 것을 볼 수 있습니다. this는 함수 안에서 사용되는데, 처음엔 그 사용법이 헷깔릴 수 있습니다. 간단하게 말하면 this는 해당 함수를 실행한 오브젝트를 뜻합니다. var a = "Hello" function test() { var a = "Bye"; console.log(this.a); } test(); // 결과 -> "Hello" 위 코드를 실행해보면 결과가 test 함수
4분 글
[자바스크립트 기초-4] 함수 (Function) & 콜백 (Callback)
자바스크립트

[자바스크립트 기초-4] 함수 (Function) & 콜백 (Callback)

함수는 프로그램의 특정 동작을 수행하는 코드를 말합니다. 다른 말로는 메소드(method)라고 불리우는데, 오브젝트 안에 있는 속성들 중, 값이 primitive data types가 아니고 함수인 경우를 해당 오브젝트의 속성이 아닌 메소드라는 식으로 표현합니다. var obj = { name: "John", age: 20, say_hello: function () { console.log("Hello"); } } obj.say_hello(); // 결과 -> Hello
5분 글
[자바스크립트 기초-2] 데이터 타입 과 레퍼런스
자바스크립트

[자바스크립트 기초-2] 데이터 타입 과 레퍼런스

어떤 프로그래밍 언어든 이해할 수 있는 데이터의 종류가 있습니다. 이러한 종류들을 데이터 타입이라고 하는데, 변수에 데이터를 저장할 때 이 데이터 타입의 종류와 차이를 아는 것은 매우 중요합니다. 레퍼런스(Reference)는 직역하면 참조라는 뜻이 됩니다. 변수를 생성하고 그 값을 지정해줄 때 다른 변수를 참조하는 경우가 있는데, 그 결과는 참조하는 변수가 어떤
6분 글
서버의 Proxy 설정 변경사항이 크롬에서 바로 반영이 되지 않을 때 대처법
서버

서버의 Proxy 설정 변경사항이 크롬에서 바로 반영이 되지 않을 때 대처법

nginx를 사용하든 apache를 사용하든 서버에서 proxy 관련 사항을 수정한 후, 서버를 재시작 했음에도 불구하고 크롬에서는 계속 이전 설정이 반영된 상태에서 나타날 때 대처하는 방법을 소개한다. 결론부터 말하자면 원인은 크롬이 해당서버의 프록시 관련 설정을 캐시해서 저장해두기 때문이다. 해당 서버에 접속할 때, 전에 캐시해둔 프록시 설정을 불러오기 때문에 새로운 프록시 설정이 반영이
2분 글