weblog of key_amb

主にIT関連の技術メモ

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

(メモ) CoffeeScript ことはじめ

Sass の記事とほぼ同じような内容ですが、CoffeeScript を触り始めたので、Getting Started 的なことを書いておきます。 CoffeeScript <=> JavaScript の変換は Js2coffee: convert JavaScript code to CoffeeScript で行うことができます。

(メモ) Slim と AngularJS を同時に使う場合のエラー回避

SlimでAngularJSを扱ってエラーが出たときの対処法 - 大学生からはじめるWeb開発 を先に見て気になっていたのですが、試していたところ、やっぱりエラーになってしまいました。 エラーになったのは {{ }} によるデータバインディングです。 参考サイトでは3…

Vim で CoffeeScript を編集しやすくする

Slim のときとほぼ一緒ですが、CoffeeScript を Vim で編集するための初期設定です。 自分の dotfiles は GitHub - progrhyme/dotfiles: my dotfiles に置いてます。 シンタックスハイライト GitHub - kchmck/vim-coffee-script: CoffeeScript support for v…

(メモ) Sass ことはじめ

CSS

Sass を触りはじめたので、Getting Started 的なことを書いておく。 Sass to CSS Sass のコードが CSS にどのように変換されるか確かめたいときは、下記のサイトを使えばよい。 SassMeister | The Sass Playground! Sass のコードを貼り付けると、CSS への変…

Vim で Slim を編集しやすくする

シンタックスハイライト 参考: Vim で slim のシンタックスハイライトを行う - C++でゲームプログラミング 下のプラグインを入れればよさそう。 slim-template/vim-slim · GitHub .vimrc に下を書いて、:NeoBundleInstall で。 NeoBundle "slim-template/vim…

(メモ) Bower こと始め

AngularJS 使ってみようとしたら、Bower でインストールするやり方が載ってたので、「なんじゃそれ?」と思いながら Bower をインストールしてみました。 Bower は npm (Node.js のパッケージマネージャ)でインストールできます。 npm install -g bower で、…

(メモ) Slim の出力結果を見やすくする

Middleman で Slim を使ってみたのですが、デフォルトだと HTML が minify されるのか、1行に出力されてしまいました。 プロダクション環境はそれでいいかもしれませんが、開発時はつらいので、とりあえず参考サイトからコピペした以下のオプションを Middle…

(メモ) Mac に nodebrew と Bower と AngularJS をインストール

nodebrew 参考: Mac OSXにnodebrewをインストールする brew install nodebrew # 最新の nodejs をインストール nodebrew install latest インストールした nodejs を使う設定をする。 $ nodebrew list v0.11.14 current: none $ nodebrew use v0.11.14 PATH …

Middleman を使って GitHub Pages に静的サイトを公開する

だいたい下記のブログの通りです。 middleman で構築したサイトを GitHub Pages で公開するまでの流れをまとめてみた - C++でゲームプログラミング 環境としては Mac OS X Mavericks, ruby 2.2.0 (on rbenv), middleman 3.3.7 で実施しました。 (1) gem inst…

Released Perl5 AWS::CLI::Config

Sometimes I wanted to access the configuration information of AWS CLI in Perl. So I've created a perl module -- AWS::CLI::Config. It's available in CPAN. There has already been nice module Net::Amazon::Config which fetches info from ~/.ama…

(メモ) Perl でテストのときに依存する外部 daemon を上手く取り扱う

mysql とか memcached とか。 Harriet というのを使うといいらしい。 Harriet ー テストのときつかうにデーモンの取扱を簡単にするためのフレームワーク - blog.64p.org

AWS ElastiCache Redis のイケてないところ ※2014/12/21 時点

CONFIG GET ができないとかいう制約があるのは別として、最近ハマって、他の人もハマりかねないだろうと思うことを書いておきます。 Cache Cluster のスペックアップができない RDS のように作成した Cache Cluster のインスタンスタイプを変更することはで…

Perl でテスト可能なスクリプトを書く

職場でとある Perl スクリプトを改修する機会があった。 元々ぺら一枚のスクリプトだったのだが、これを機に App::Hoge::CLI (仮称) のようなモジュールを作ろうとした。 すると、pull-request の時に「使い回しのできないものをモジュールにしないほうがい…

(メモ) Perl で動的にモジュールをロードする方法いろいろ

現在の結論 Module::Load::load でよさそう。 参考 Perl のモジュールローダー選定委員会 - blog.64p.org [技術継承の現場] useとrequireの違い - NDiS Tech http://perldoc.perl.org/Module/Load.html

Perl Module のバージョンを調べるいろいろな方法

半分メモです。 下の記事に色んな方法が載ってました。 モジュールのバージョンを確認するときどうやってますか? - JPerl Advent Calendar 2010 Casual Track 自分のシェル環境にもなにか入れておこうと思いました。 最初はかんたんに alias にしようかと思…

プロジェクトで使用するライブラリが増えてきたので git submodule を使ってみる

Git

(1) submodule を配置するディレクトリを決める 今回は単純に submodule/ とします。 (2) プロジェクトに submodule を追加する git submodule add https://github.com/key-amb/bash-pmver.git submodule/bash-pmver git commit -m "add submodule key-amb/b…

Perl で非ループなブロックで last を使う

if if ブロックを途中で抜けたいときにたまに使うことがありました。 if {{ # do something last if $error; # do something }} {{ にしているのがミソで、if {} の内側の {} がブロックということです。 eval eval は last で抜けられないのですが、同様の…

LTSV なログをコマンドラインでさくっと吐くやつ作った

GitHub - key-amb/bash-logltsv: A Handy CLI to print LTSV logs いざ手元でやろうとすると date コマンドのオプションを調べたりするのが面倒だったので、書いた。 使い方はこんな感じ: $ logltsv key1:value1 key2:value2 [...] time:2014-12-10T20:55:11…

git clone 時に最新の履歴だけを取得する

Git

git clone すると、通常は過去の履歴をまるごと取ってきますが、歴史の深いプロジェクトだとそれだけで時間が掛かる、ということは往々にしてよくあることだと思います。 そんなとき、--depth <N> オプションをつけると、履歴を <N> 個しか取得しません。 以下は例</n></n>…

(メモ) bash でコマンドラインオプション解析

getopts を使うこともできるが、ロングオプションをサポートしてないとかあるので、下の記事によれば自前解析が一番よさそうとのこと。 bash によるオプション解析

(メモ) Ruby on Rails - Assets on Cloud

Rails の機能の1つで、静的コンテンツ(assets)を Amazon S3 などクラウド上に配置できるようだ。 参考 Railsアプリケーションを公開するならAssets on Cloudパターンを使おう - 働かないプログラマのメモ帳

openssl コマンドで POODLE 脆弱性を確認する

openssl コマンドにはいろんなサブコマンドがありますが、その内の s_client というコマンドで SSL/TLS クライアントを動かすことができます。 指定のサイトで SSLv3 が動いているか(POODLE脆弱性があるか)は以下のコマンドで確認できます。 openssl s_clien…

MySQL 5.6 Delayed Replication

アプリケーション開発などで意図的にレプリ遅延を起こして検証したいようなときがあります。 そういうとき、MySQL 5.5 以前では mk-slave-delay - Make a MySQL slave server lag behind its master. のようなツールを使う必要がありましたが、MySQL 5.6 で…

RSS はオワコンか?

去る2014年10月1日、livedoor Reader のサービス終了が発表されました。 【重要】 livedoor Reader サービス終了のお知らせ : livedoor Reader 開発日誌 【重要】 livedoor Reader サービス終了のお知らせ|livedoor Reader 開発日誌 ※(追記) 10月15日にサー…

MySQL Seconds_Behind_Master とレプリケーション監視

MySQL の Seconds_Behind_Master はレプリケーションの遅延具合を手軽に確認できる指標ですが、いくつか問題もあるようです。 公式ドキュメントでは次の制限が示されています。 ネットワークが遅い環境では有用な指標ではない また、MySQL 5.5, 5.6 のドキュ…

Perl 関数の Export/Import

Perl の標準モジュール Exporter を使った関数の Export/Import のやり方をまとめておく。 この機能を使って関数をインポートすると、"MyApp::afunc" のようにパッケージ名を指定せずとも関数を組み込み関数のように "afunc" だけで呼び出せる。 基本的な使…

メモ - ctags で Vim 開発を快適にしたい

やりたいこと: tag ジャンプ tag 一覧表示 tag の自動更新 tag 保存先カスタマイズ …とあるが、 ctagsをちゃんと使う に書いてあることを真似すればできそう。

Perl でプロジェクトのモジュール全部について use_ok のテストをしてくれるテストモジュール

See Test::UseAllModules - search.cpan.org use Test::UseAllModules; BEGIN { all_uses_ok(); }

File::Which を使って perl で which

See File::Which - search.cpan.org use File::Which qw(which); my @paths = which('perl');

YAML のバージョンについて

YAML にもいくつかバージョンがある。 The Official YAML Web Siteを見るとよい。 2014/8/16 現在、 YAML 1.0 - 1st release YAML 1.1 - 2nd release YAML 1.2 - 3rd release だそうだ。 プログラムで YAML を呼び出すとき、YAML のどのバージョンを前提とす…