DRYな備忘録

Don't Repeat Yourself.

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

Go言語でデフォルト引数を使う【golang】

go

問題 go言語でデフォルト引数を使いたいじゃないか。 調査 http://stackoverflow.com/questions/2032149/optional-parameters Go does not have optional parameters 用意してないっぽい。だけど、その下にある type Params struct { a, b, c int } func doI…

Go言語でMonth型をintにする【golang】

go

問題 go言語で現在時刻は以下のように取得できる package main import ( "time" "fmt" ) func main() { now := time.Now() fmt.Printf("Now\t: %v\n", now) fmt.Printf("Year\t: %v\n", now.Year()) fmt.Printf("Month\t: %v\n", now.Month()) fmt.Printf("D…

nginxでプロキシが502 Bad Gatewayを吐く【ロードバランサ】【nginx】

問題 nginxでロードバランサとしても動くリバースプロキシを設定してみた。んだけど、502 Bad Gateway。なんじゃそりゃ? 要件 xxx.xxx.xxx.xxxというグローバルIPと tainaka.comという名前が与えられているリバースプロキシがいる tainaka.comという名前で…

【障害報告】艦これウィジェットOCRサーバが動作しない

各位 以下の通り障害が起きましたのでご報告いたします。 ユーザの皆様にはご不便おかけし大変申し訳ございません。 時間 2013/10/08/23:46 ~ 2013/10/08/23:53 現象 OCRサーバのレスポンスがサーバエラーとなって失敗する 範囲 全ユーザ 原因 わたくしがカ…

nginxでDebian(wheezy)にプロキシサーバ立てる【nginx】【Debian】

目標 apacheで立ってるリバースプロキシをnginxに置き換える 記録 インストールから起動まで otiai10 % apt-cache search nginx collectd-core - statistics collection and monitoring daemon (core system) fcgiwrap - simple server to run CGI applicati…

revelでfileをアップロードするもnil【revel】【Go】【html】

go

問題 Goのウェブフレームワークrevelでファイルをアップロードしたい。 のに、nilがアップロードされてくる。 ナンデヤ app/views/Test/Index.html <html> <head> <meta charset="utf-8"> </head> <body> <h1>テストデータのアップロードページ</h1> <form name="upload" method="POST" action="/test/upload"> <input type="file" name="imgFile" accept="image/png"> </form></body></html>

GoのウェブフレームワークrevelでHelloWorld【revel】【Golang】

go

goal goをインストール revelをインストール revelで簡単なウェブサーバつくる revel 【動詞】 〔…を〕大いに楽しむ,〔…に〕ふける,凝る 〔in〕. log goをインストール mercurialが必要っぽい sudo apt-get install mercurial さきにPATH通しとく # {{{ GO…

ウィジェット化されず猫娘AAも出て来ない場合の調査【艦これウィジェット】

「正しく」失敗する時 回線が遅い、運営がメンテなどの理由でウィジェット化が失敗することがある。その場合は以下のような猫娘AAが出るはず。 猫娘も出ないウィジェット化失敗することが報告されている お使い頂きありがとうございます!すみません、そのバ…

過去のcommitのAuthorを書き換える【git】【commit】【filter】

git

本家github.comのプロジェクトに、間違えて会社の名前・アドレスでコミットしちゃうことがよくある(よくはない)。 会社のプロジェクトの中でOSS触るときとか、会社のPCでgithub.comのプロジェクト更新したいときとか。 普通に本名と会社のメールアドレスが…

Google Compute Engine で apacheウェブサーバを無料でつくってみた【GoogleComputeEngine】

最近流行ってますよね、ええ、AWS(Amazon Web Service)です、EC2(Elastic Compute Cloud)。IaaS(Infra as a Service)です。仮想化、自動化、オーススケールですよ、ええ。 で、これはAWS EC2の話じゃありません。やはり仮想サーバを無料で提供する "Go…

PythonのFlaskでミニマムなAPIサーバを立てる【pip】【Python2.6】

問題 /でアクセスされたら"Hello"を返すぐらい適当なウェブサーバを立てたい。ファイルのPOSTを受け取れるのが条件。 アプローチ Junoというのがあった。Repositoryも小さめで、読破するのも悪くなさそうだなと思いながら実装進めてたらなんと ん? ん!? …

Pythonで画像をOCRする【pyocr】【Tesseract】【Python2.6.6】【pyenv】【艦これウィジェット】

艦これウィジェットというChromeExtensionを開発(オープンソース)しているのだけど、画像のOCRをする要件が出て来た。今週末PyConだし、最近PythonさわってないのでせっかくだしPythonでOCRをやってみようかという記録。 具体的な問題 艦これで遠征リマイ…

いつリファクタやるか

今でしょ というのは冗談で スプリントの頭でリファクタの時間を確保するようにしている。 ケツじゃなくて頭ってのがミソ。もちろんスプリント中でもやるんだけど。 スプリントの頭だと「このスプリントではこういうことを実装したいなー」って気持ちがある…

リモートに無いブランチはローカル&トラッキングからも消そうではないか

tl;dr さいきんは、fetchのついでにします。 git fetch origin --prune あるいは、目的のことのみしたい場合は、 git remote prune origin 追跡ブランチ 前回エントリで、追跡ブランチ(tracking branch)の削除方法を知りました。 git branch -r -d REMOTE-NA…

tracking branch(追跡ブランチ)の削除【git】

問題 git push ORIGIN-NAME :BRANCH-NAME でリモートは消せるけど、どうやらローカルにあるtrackingは残ってるようだ。これ消したい。 解決 git branch -r -d ORIGIN-NAME/BRANCH-NAME [16:58:13] % git branch -a * develop feature/upload-local-file mast…

memo Chrome拡張のファイルパス

/Users/otiai10/Library/Application Support/Google/Chrome/Default/Extensions/HASH-OF-EXTENSION

TODOリストの「優先度」のつけかた

紙にTODOリストを書き出すのが好きなんだけど。 「Priority」という欄を作って埋めようとしたら「熱量あるもの」「感情的に早くやったほうがいいと思うもの」が上に来てしまう現象を観測したよ。 で、「それが終わるのを待っている人の数」という欄をつくれ…

Python3のimport・下位/上位階層のモジュールをインポートしたい【import】【Python3】

基本的なPythonの自作モジュールimport 浅いmain.pyから深い自作モジュールをimport 深いmain.pyから上位階層にあるモジュールをimport 基本的なPythonの自作モジュールimport メインで実行するファイルよりも同階層かpython_packageで管理されているモジュ…

縦位置中央揃えvertical-alignが効かない【vertical-align】【display:table-cell;】【ソースコード見やすくした】

【問題】 あるブロック要素の中段に、インライン要素を配置したい。 以下のようにHTMLとCSSを書いたが、実現されない。 HTML <div class="container"> <img src="ritchanperopero.jpg"> </div> CSS .container { vertical-align: middle; } 【原因】 vertical-alignが有効なのはインライン要素とテーブルセルだけ 【問題2…

ローカルMacにGOをインストールしてHelloWorld【Go言語】【brew】【MacOSX】

go

Goal ローカルのMacに.goファイルをつくって実行 ハローりっちゃん FizzBuzz 外部ファイルにローカルパッケージつくってimportする Log インストールしてみる [13:05:31] % brew search go algol68g go-app-engine-32 gocr google-sparsehash jpegoptim pygo…

intellij/IDEAをインストールして例えばPythonで使ってみる

Goal Intellij/IDEAをとりあえず単なるエディタとして使ってみる 大まかな流れ JetBrainsのサイトからzip落としてくるんです Macのアプリケーションとしてインストール Pythonのプロジェクトとして何か立ててみますか Pythonの補完やべー、的なところまで Lo…

Macでupdatedb

いつも忘れるわ % /usr/libexec/locate.updatedb upudatedbコマンド無いからねMacOS yamaza » Blog Archive » Macでupdatedbをしたいじゃないか。

MacにScala(sbt)環境構築【sbt】【brew】【MacOSX10.8】

Goal .scalaファイルをsbtでビルドして実行してHello りっちゃん https://gist.github.com/kmizu/1876800 Log [20:33:44]otiai10 % brew --version 0.9.4 [20:33:48]otiai10 % sudo brew install sbt Warning: Your Xcode (4.6.2) is outdated Please instal…

【memo】Pythonの@classmethod

[22:48:38] % python Python 3.3.2 (default, Jul 19 2013, 08:43:31) [GCC 4.4.5] on linux Type "help", "copyright", "credits" or "license" for more information. >>> class Base: ... def func_a(self): ... print('This is func A') ... >>> class F…

Python3でExceptionの詳細を取得したい【Python3.3.2】【try-except】【stackoverflowの回答早すぎワロタな件】

【問題】 Python2系だと、Exceptionのメッセージ取得するのカンタンなのに… [22:41:10] % python --version Python 2.7.1 [22:41:13] % python >>> >>> try: ... {}.encode('utf8') ... except Exception as e: ... print('---- print works ---') ... print…

MacOSXにNode.js+TypeScriptをインストール【TypeScript】【npm】【Node.js】【MacOSX】

Goal macにNode.jsとTypeScriptをインストールしてtscコマンドを実行するまで Log % echo $OSTYPE darwin12.0 % % brew search nodejs nodejs % sudo brew install nodejs Password: Warning: Your Xcode (4.6.2) is outdated Please install Xcode 4.6.3. =…

ファイル読み込めず No such file or directory【iOS】【stringWithContentsOfFile】【Xcode4.6.2】

【問題】 プロジェクト内に配置したtxtファイルを読み込んで処理したい。stringWithContentsOfFileを使うが、No such file or directory なエラーが出る。 2013-07-20 16:49:00.748 filetest[54199:c07] ERROR OCCURRED!!-> Error Domain=NSCocoaErrorDomain…

pyenv使ってみた:Python3.3.2環境構築

Goal pyenvを使ってPython3.3.2環境構築 Log # ここを参照 # http://qiita.com/la_luna_azul/items/3f64016feaad1722805c % cd ~ % git clone git://github.com/yyuu/pyenv.git .pyenv # """ .zshrc直接編集で事足ります """" % echo 'export PYENV_ROOT="${…

ローカルに秘書たんが動くPython2.7環境構築するログ

Goal ローカルマシン(MacOSX10.8.4)で秘書たんを動かす Log % pwd /Users/otiai10 % % echo $OSTYPE darwin12.0 % python --version Python 2.7.2 % ls -la | grep prj drwxr-xr-x 3 otiai10 staff 102 6 22 12:37 prj % cd prj % cd python % ls -la tota…

Pythonのhasattrで詰まったメモ

% python >>> class Foo(): ... hoge = 1 ... _fuga = 2 ... __piyo = 3 ... def __init__(self): ... pass ... >>> f = Foo() >>> hasattr(f, 'hoge') True >>> hasattr(f, '_fuga') True >>> hasattr(f, '__piyo') False >>> __bar で宣言したprivateなプ…