DRYな備忘録

Don't Repeat Yourself.

2015-01-01から1年間の記事一覧

RedshiftのCOPYコマンドが失敗する

問題 docs.aws.amazon.com S3からRedshiftにレコードをコピー(insert)できるコマンドCOPYが便利なので COPY users FROM 's3://my_bucket/backup.users.csv' CREDENTIALS 'aws_access_key_id=xxx以下略' CSV とかすると ERROR: Load into table 'users' fai…

sendResponseが動いてないように見える現象に半年に1回ひっかかってる気がする

background.js chrome.runtime.onMessage.addEventListener((req, sender, sendRes) => { setTimeout(() => { // ここまで来てるのに sendRes("元気でーす"); }, 100); }); contents_script.js chrome.runtime.sendMessage(null, {msg:"元気ですか?"}, (res…

アメッシュをターミナルに表示して、ついでに雨降ってたらSlackでおしえてくれるところまで、Goでやったことのまとめ

go

このエントリはGo その2 Advent Calendar 2015 - Qiitaの8日目です。 7日目のS_Shiomtoriさんの記事もコマンドラインツールの話でした。 % go get github.com/otiai10/amesh/amesh % amesh -g 思ったことや詰まったこと書きます Goでコマンドラインツールを…

Elasticsearchの2.0にキャッチアップしたいんですが、Dockerで分離したい。Macで

背景 みんなだいすきElasticsearchがいつのまにか2.0になってた これを叩いていろいろためしたい だけど生ローカルで動いているElasticsearchがあり、これはカジュアルにAPI変えたくない Dockerイメージあるし、docker-machineでホストごと分離するのがよさ…

SlackのAPIでチャンネルに投稿

ライブラリじゃなくてcurlのサンプルがほしい 追記 POST 限定になってたので注意 しかもGETだとエラーメッセージがchannel_not_foundとかになって「は?」ってなるので注意 以下原文 # 都合により改行 % curl "https://slack.com/api/chat.postMessage ?toke…

OCamlでHello World

\オッキャムル/ % brew search ocaml ocaml ocamlsdl % brew install ocaml ==> Downloading https://homebrew.bintray.com/bottles/objective-caml-4.02.1_2.yosemite.bottle.1.tar.gz ######################################################################…

bundle install で Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo. と叱られる

問題 bundle installしてて、 Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo. と叱られた 解決 書かれてる通り、Xcode開いたら、いつものアップデートとともにagreeボタンがあったので押した。 もっかい bu…

Debian wheezyで、はじめてのDocker

ちょっと古いけど、これがとても参考になります docker を debian wheezy に install する - Qiita つまったとこ There is no public key available for the following key IDs: apt-get update時にW: There is no public key available for the following k…

【PostgreSQL】今何時だっけ?って思ったとき

postgres serverにログインしてて「あれ?今何時だっけ?」って思うことが多いので、以下のSQLを実行する SELECT current_timestamp; now ------------------------------- 2015-10-19 16:44:06.526301+09 (1 row) ありがとう DRY

Postgresがcould not connect to server: No such file or directoryって言う

問題 % psql -l psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"? 思い当たること(ちがった) Macのグラボの調子が悪いかなんかでGen…

【Go言語】画像ファイルをbase64エンコード文字列にする、とその逆

go

package main import ( "encoding/base64" "io/ioutil" "os" ) func main() { f, err := os.Open("./hoge.png") if err != nil { panic(err) } defer f.Close() b, _ := ioutil.ReadAll(f) out, _ := os.Create("out") base64.NewEncoder(base64.StdEncoding…

【Android】GCMでプッシュ通知(クライアント編)

(書いた日: 2015/10/04) まんまWebViewのアプリをつくってるんだけど、せっかく形だけでもネイティブにするんだからしたいじゃないですか、プッシュ通知。 ゴール Androidアプリで、デバイストークンを取得して、Logに出す まずまとめ 公式: Set up a GCM …

【Android】java.io.IOException: MAIN_THREAD

問題 掲題のエラーが出る。 java.io.IOException: MAIN_THREAD なんで? 調査 android - New GCM API Register Unknown Source Error - Stack Overflow android - Google Cloud Messaging register method fails with IOException (MAIN_THREAD) - Stack Ove…

【AWS】Stack deletion failed: The following resource(s) failed to delete: [AWSEBSecurityGroup].

問題 awsのElasticbeanstalkで、Rebuild Envが失敗する。Eventsなどを見ると、以下のログが吐かれていた。 ERROR Stack deletion failed: The following resource(s) failed to delete: [AWSEBSecurityGroup, AWSEBLoadBalancerSecurityGroup]. ERROR Deleti…

【Go言語】inconsistent definition for type ほげ during import ふが

go

go test, go build, go runなどで以下のエラーが出る。エディタの警告にも出る。 inconsistent definition for type gorm.search during import struct { db *gorm. 以下略 inconsistent definition for type ほげ ってことで、たぶん同じ名前の違う定義が存…

【Android】Activity間データ受け渡し

アクティビティ間でデータの受け渡しを行う方法 - Android Studioでアプリ開発! ここがいちばんわかりやすかった [Android] アプリの画面遷移とActivity間のデータ転送 | Androidアプリ開発 画面間でデータを受け渡しする - Androidプログラマへの道 〜 Moo…

【Android】WebViewの設置とWebView内でのURLのロード

ActivityにWebViewを設置して、任意のURLをWebViewの中で表示したいじゃないですか。 ざっくりまとめ WebViewタグをxmlに追加 ActivityにてWebViewを取得し、loadUrlメソッドを呼ぶ デフォルトブラウザを開くな! WebViewタグをxmlに追加 結果こうなる。Desi…

【Android】buttonによるActivityの遷移(画面遷移)

ひとつのAcitivityに設置されてるボタンをぽちっとするとほかのAcitivityに遷移する、みたいなこと当然したい。 ざっくりまとめ 元のActivityにボタンを設置して、イベントリスナーを実装する 【Android】buttonにonClickイベントのリスナーを登録する - DRY…

【Android】あたらしいActivityを追加する

iOSでいうところのあたらしいViewControllerを追加するような感じで。 とりあえずざっくり AndroidStudioで「New->Activity->なんとかActivity」を選択 そうすっとlayoutファイル.xmlも自動的に追加されとる 以上 詳細 以上です DRY

【Android】buttonにonClickイベントのリスナーを登録する

なんか何通りか方法はあるっぽいんだけど、一番気に入ったやつで。 とりあえずざっくり layoutにボタンを追加 ボタンにidをつける ActivityクラスにOnClickListenerを実装する ボタンをidでとってきて、ListenerをActivityクラスに委譲する buttonの設置 res…

【shell】exportされてる変数が邪魔なんですけど

なんかグローバルにexportされてる環境変数が、実行したいスクリプトの邪魔をしているので、実行したいスクリプト内だけではunsetしたい。 スクリプトの内容 oppai.sh #!/bin/sh unset OPPAI echo "OPPAI は $OPPAI, OSIRI は $OSIRI" % export OPPAI="だい…

【Go言語】go testに-coverをつけるとruntime.Callerが変わっちゃう問題

go

github.com % go test -v === RUN TestCaller 2015/09/14 17:57:33 375167 /Users/otiai10/proj/go/src/covsample/sample.go 9 true --- PASS: TestCaller (0.00s) PASS ok covsample 0.004s % go test -v -cover === RUN TestCaller 2015/09/14 17:57:39 37…

シェルスクリプトでワンライナーなif書きたい

書こう % if [ -z "" ]; then; echo "hogee"; fi; hogee DRY

【SQL】3つのテーブルのJOIN

sql

最初これ見た http://pgcafe.moo.jp/SQL/main_2.htm SELECT ... FROM t1 JOIN (SELECT ... FROM t2 JOIN t3 ON t2.foo = t3.bar) t2_t3 ON t1.hoge = t2_t3.foo ネストしなきゃいけないのめんどくせえなと思った。 チームレビューで指摘されたのでさらにググ…

【Go言語】なんかjinzhu/gormのLogModeがバグってんじゃねえのかと

go

github.com 経過を待つ ついでに http://hack.aipo.com/archives/1495/hack.aipo.com DRY

おっぱいが%dつ

The Go Playground see this code in play.golang.org なんかいい響きだったので、つい

【2015年版】Xcodeで超簡単なWebViewアプリをつくってみる【iOS】【Xcode6.4】

2013年の記事↓ さすがに古いし、今回はSwiftつくってみようじゃないかということで。 Xcodeで超簡単なWebViewアプリを作ってみる【Xcode5.0.2編】 - DRYな備忘録otiai10.hatenablog.com 目次 プロジェクトつくる ViewControllerファイルを追加してStoryboard…

【Go言語】無名structの初期化

go

しれっと可能だったのでメモ The Go Playground package main import ( "encoding/json" "fmt" ) func main() { // 無名structの初期化 dest := &struct { Name string `json:"name"` Age int `json:"age"` Langs []string `json:"langs"` }{} json.Unmarsha…

display:box;を使うな

display: flex; を使え - display: box; + display: flex; CSS3のFlexboxを基本から理解して、使い倒そう! | 株式会社LIGliginc.co.jp なんかずっと詰まってたところがあったんだけど、一発で解決した

gormでcomposite primary keyを使いたいのだが

なんかこうするっぽい type Foo struct { Bar string `gorm:"primary_key"` Baz int `gorm:"primary_key"` } で、gorm.DBのAutoMigrateかCreateTableを叩けばいいわけで、LogMode(true)で発行されてるSQLを確認すると CREATE TABLE "foos" ( "bar" varchar(2…