Posts

Java 셸 스크립트

간단한 작업을 할 때는 스크립트가 좋지만, 난해하며 기억하기 어려운 문법을 생각하면 Bash를 쓰고 싶지는 않다. Ruby나 Python 또는 JavaScript를 쓰는 것도 가능하긴 하다. 그러나 나는 Ruby나 Python을 별로 좋아하지도 않고 익숙하지도 않다. JavaScript는 조금 낫지만 파일 처리 API에는 익숙하지 않다.

Read more...

채소단

'채소단'이란 말이 실제로 있는지는 모르겠다. 영어로는 bed, raised bed, 또는 vegetable planter라고 한다. 우리 말에는 화단이란 말은 있어도 채소단이란 말은 사전에 안 나온다. 그렇지만 화단은 아니니 여기서는 그냥 채소단이라 하겠다.

Read more...

대나무 퇴치

집 앞뒤로 조그만 뜰이 있다. 앞뜰은 주차 공간과 풀밭이 있고 나무가 한 그루 있다. 뒷뜰에도 잔디밭과 꽃밭이 있고 캐빈과 헛간이 있다. 관리를 제대로 못해서 잔디보다 잡초가 더 많이 자라고 있다.

CDK를 이용한 S3 프락시 API Gateway 생성

CDK의 API는 AWS 콘솔의 입력 항목과 직관적 대응 관계가 있어야 할 것 같은데, 꼭 그렇지만은 않은 듯 하다. 여기서는 S3 버킷에 저장되어 있는 파일을 API Gateway를 통해 접근할 수 있도록 프락시 API Gateway를 CDK로 만들어보려 한다.

Read more...

CDK를 이용한 AWS Lambda 함수 생성

AWS CDK(Cloud Development Kit)는 프로그래밍 언어를 이용해 클라우드 인프라스트럭처를 정의할 수 있게 해 주는 도구다. CloudFormation 스크립트를 사용하는 것 보다 훨씬 쉽게 인프라스트럭처 컴포넌트를 정의하고 관계를 설정할 수 있다.

Read more...

Java 날짜 연산

Java 8에 추가된 날짜/시간 관련 클래스 중 LocalDate를 사용한 간단한 날짜 연산 방법을 정리한다. LocalDate에는 시간 정보가 포함되어 있지 않다. 날짜와 시간을 함께 다루려면 LocalDateTime을 사용해야 한다. UTC 오프셋이나 시간대도 함께 필요한 경우는 OffsetDateTime 또는 ZonedDateTime을 사용해야 한다.

Read more...

Java 날짜/시간 API

Java 8부터 새로운 날짜/시간 API가 추가되었다. 날짜/시간 관련 기능을 사용할 일이 생기면 어떤 클래스를 어떻게 사용해야 할지 생각나지 않는 경우가 많아 여기 각 클래스의 기본 사용법을 간단히 정리하려 한다.

Read more...

콘솔 프로그레스 바

콘솔에서 프로그레스 바를 그릴 때 요령은 행을 바꾸지 않고 같은 행에 텍스트를 계속 갱신하는 것이다. 프로그레스 바와 진행률을 제외하면 다른 텍스트는 바뀌지 않을 것이므로 \r로 커서를 행의 처음으로 옮긴 후 새로운 텍스트로 덮어쓰면 프로그레스바가 깜박거리지 않을 것이다.

Read more...

인터넷 공급업체 교체기

Feature image

1

아내가 창문턱에 브로드밴드 라우터를 올려 놓았다. 좀더 안전한 곳에 라우터를 놓아야 한다고 말했다. 내가 보기엔 작은 실수로도 라우터가 떨어질 것 같았다. 잘못될 수 있는 일은 결국 잘못되기 마련 아닌가. 하지만 아내는 내 말을 듣지 않았다.

Read more...

다크모드

어느 날 블로그에 다크모드를 추가해야 겠다는 생각이 들었다. 다크모드가 있다면 깜깜한 곳에서 블로그를 볼 때 눈에 부담이 덜할 것이다. 별로 어렵지 않아 보였다. 다크모드 CSS를 따로 만들어 놓고 블로그에서 다크모드를 선택하면 CSS를 바꿔주면 그만 아닌가.

Read more...