리눅스 환경에서 파일을 삭제해도 용량이 늘어나지 않는 문제 해결
어느 날 서버를 점검하던 중 특정 로그 파일이 디스크를 꽤 잡아먹고 있는 것을 발견하고 용량 확보를 위해 rm 명령어로 파일을...
라즈베리파이에 외장하드 마운트하기
몇 달 전, 라즈베리파이3 B+ 모델을 구입했다. 다른건 다 좋았으나 디스크 공간이 부족하여 안 쓰는 노트북에서 2.5인치 하드디스크를 떼어내어 외장...
그라데이션 만들기
뷰에 그라데이션 효과를 주고 싶을 땐 CAGradientLayer 객체를 만들어서 뷰의 레이어 위에 올리면 된다. let containerView = UIImageView(frame: CGRect(x: 0,...
Carrierwave 리사이징 옵션 정리
Carrierwave는 루비 웹프레임워크에서 이미지 업로드를 손쉽게 할 수 있게 해주는 라이브러리다. Carrierwave로 이미지를 업로드할 때 사용되는 총 4가지의 리사이징 옵션을...
SNS 뉴스피드 구현과 첫 쿼리 튜닝
소셜 네트워킹 서비스를 개발하면서 SNS의 뉴스피드 기능을 만들게 되었다. 그런데 사람이 점점 늘어나면서 뉴스피드를 로딩하는 시간이 점점 길어지더니 한 페이지...
배포 환경에서 발생하는 Auto loading 문제
레일즈는 소스 코드 파일을 로드하기 위해서 실제로 사용될 때 그제서야 파일을 로드하는 Auto loading1과 서버가 실행될 때 한 번에 모든...
타임 헬퍼로 시간 테스트하기
테스트 코드를 실행할 때 현재 시간을 변경하고 싶을 때가 있다. 예를 들어 모임 시간을 가지는 모임(Meeting) 클래스가 있고 모임 시간이...
MVC 웹 프레임워크의 문제점
나는 2014년 10월에 레일즈를 처음 접했고 2년 동안 거의 모든 웹 프로젝트에 레일즈를 사용했다. 그리고 레일즈를 배우면서 루비를 배웠다. 그...
[Rails] Rake task 사용하기
Rake는 Ruby 개발 환경에서 사용되는 빌드 프로그램이다. Unix에서 사용되는 Make와 비슷한 용도로 사용되며 Makefile과 비슷한 Rakefile이 존재한다. Rake를 통해 실행되는...
MYSQL에 이모티콘 저장하기
MYSQL에 이모티콘을 저장하려 하면 Incorrect string value 에러가 발생하면서 저장되지 않는 문제가 발생했다. mysql> desc faqs; +------------+--------------+------+-----+---------+----------------+ | Field |...
터미널 멀티플렉서 tmux를 배워보자
tmux는 터미널 화면을 여러개로 분할하고, 세션을 생성하여 attach/detach를 자유롭게 할 수 있는 터미널 멀티플렉서이다. Vim과 tmux를 함께 사용하는 동영상 을...
Vim을 IDE처럼 사용하기
코드 편집기로 Vim을 사용한지 2주년 된 기념으로 Vim 포스팅을 하려고 한다. 1년 넘게 특별한 플러그인 없이 Vim만 사용했었는데, 앱 개발을...
[번역] 액티브레코드 모델을 리팩토링하는 7가지 방법
2년 가까이 레일즈로 개발을 해오면서 OOP를 제대로 적용하지 못하고 있다는 것을 많이 느꼈다. 컨트롤러나 모델 클래스위에 모든 코드를 작성했고, 비즈니스...
Rails wrap_parameters
레일즈로 개발하다 보면 클라이언트에서 파라미터를 특정 엘리먼트로 래핑해서 보내야하는 경우가 있다. 예를 들어 Devise는 요청의 모든 파라미터들을 user로 감싸서 보내야한다....
Material Design 아이콘을 무료로 사용해보자
구글이 안드로이드 롤리팝(5.0) 이후로 내놓은 머티리얼 디자인은 이제 안드로이드 개발에서 빠질 수 없는 존재가 되었다. 안드로이드뿐만 아니라 웹에서도 머티리얼 디자인을...
구글맵 마커 클러스터링 해보기 -1-
이번에 안드로이드 앱을 개발하면서 지도에 클러스터링을 해봤는데, 자료가 너무 없어서 삽질을 많이 했기 때문에 나중을 위해 블로그에 포스팅하기로 했다. 마커...
당겨서 새로고침 간단하게 구현하기
안드로이드에서 “당겨서 새로고침(Pull to Refresh)” UI를 간단히 구현해보자. 당겨서 새로고침 기능을 구현해주는 SwipeRefreshLayout은 Android support library v4에 포함되어 있다. 먼저...
안드로이드 스튜디오 키스토어 비밀번호를 찾는 방법
TL;DR 안드로이드 로그 파일을 뒤져서 비밀번호를 찾아낸다. 기억나는 비밀번호와 한/영 조합을 모두 입력해본다. 안드로이드 앱을 구글 플레이에 올릴 때 키...