Bourbon is a lightweight Sass tool set Latest version: 7.3.0 Dependency-free: Bourbon is pure Sass. Human-readable: We aim for clarity over brevity. Lightweight: Zero output post-install and has no visual opinion. Get Started
この記事は Vim Advent Calendar 2013 183日目の記事になります。 今回は軽めの記事。 さて、プラグインを使っていると稀によくバグを見つけることがあります。 そんな時にさっとプラグインの Issues を開きたいですよね。 と、いうことで unite-neobundle に任意のプラグインの github の Issues を開くアクションを追加してみました。 [ソース] let s:action = { \ 'description' : 'open github issues', \ 'is_selectable' : 1, \} function! s:action.func(candidates) for candidate in a:candidates if candidate.action__bundle.type ==# "git" call Ope
touch, click, pointerの実装 前編 タッチイベントとマウスイベント このシリーズでは、タッチ/マウスイベント系の実装を考えます。第1回目はタッチイベントとはなにか、また、タッチイベントとマウスイベントの判別について解説します。 はじめに iPhone、Androidが登場したのはもう何年も前ですが、さらにWindows8も登場し、いろいろと状況が変化してきました。Windows8を搭載したPCの多くはタブレットデバイスのように、画面に触れることができるようになっています。 しかしながら、これらのデバイスはマウスを使っても操作できるようにもなっています。今後、どのようにタッチ/マウスのイベントを扱っていけばよいのかは、これからのウェブ開発において、より重要になっていくはずです。 そこでこのシリーズでは、タッチ/マウスイベント系のブラウザへの実装を整理し、それらのブラウザに
知り合いに、PHPを使ってPDFファイルを全文検索する方法を質問され、いざ調べてみるとイマイチ検索しにくかったので、メモ代わりに書いておくことにします。 1. Red Hat系(Red Hat Enterprise Linux、Fedora、CentOS、Scientific Linux)の場合、yumコマンドでPopplerと関連ライブラリをインストール yum -y install poppler* 2. SSHからpdftotextコマンドを使って、PDFファイルをテキストファイルに変換してみる pdftotext ./test.pdf ./test.txt 3. うまくいったらPHPで実装する <?php $command = “pdftotext ./test.pdf ./test.txt”; exec($command, $output, $return_var); echo
B! 112 0 0 0 Vimで日本語入力をしているとノーマルモードに戻ったと時に 毎回IMEをoffにしてやらないとコマンドが打てません。 これはかなり面倒なのでノーマルモード移行時に 自動的にIMEがoffになるようにしたい所で、 その辺りのまとめというか、自分設定とついでに見つけた情報の寄せ集め。 MacでKarabiner(KeyRemap4MacBook)を使ってIMEをノーマルモードで必ずオフにする macOS SierraでIMEをノーマルモードで必ずオフにする Windowsでyamyを使ってIMEをノーマルモードで必ずオフにする GVimで出来る設定 日本語固定モード Tera Termでの制御シーケンスの使用 WindowsでAutoHotkeyを使う方法 IMEの状態でカーソルの色を変更する IMEのON/OFFをsyntaxで制御する MacでKarabiner(
<?php $params = array('a' => 9, 'c' => 3); $default = array('a' => 1, 'b' => 2); $ret = array(); foreach ($default as $k => $v) { if (array_key_exists($k, $params)) { $v = $params[$k]; } $ret[$k] = $v; } $params = $ret;
【2021/10/15 追記】 この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。 これは何? filter_input_array 関数の惜しいところを使いやすく、安全にした強化版です。 フィルタリングされる変数名を多次元配列で定義できます。 cURLにおけるファイルアップロードに関する問題の解決策としてPHP公式が採用した葉要素にオプション専用のクラスを用意するという手段を真似て、任意のフィルタによる再帰的フィルタリングを可能にしました。(詳しくは 「PHPでcURLのクソ仕様 "@" を回避する」 で紹介しています) filter_input_simple 関数との比較 filter_input_simple filter_input_array_recursive
Memcached クラスのコンストラクタで指定 Memcached クラスのコンストラクタでは、パーシステントIDを引数を渡すことができます。 パーシステントIDを指定すると、memcached への接続が持続的なものになり、次回リクエストでは同じ接続が再利用されます。 http://jp2.php.net/manual/ja/memcached.construct.php Memcached セッションハンドラで指定 Memcached のセッションハンドラで、持続的接続を行うには、session.save_pathの先頭にPERSISTENT=%ID%を指定します。%ID%の部分がパーシステントIDとなります。 PERSISTEN=%ID%の後ろには、半角スペースが必要なので注意して下さい。 下記では、パーシステントID=1 で、持続的接続を行っています。
チートシートで使われているサンプルコード コマンド gulpをグローバルにインストール: $ npm install -g gulp gulpをローカルにインストール: $ npm install --save-dev gulp $ npm install --save-dev gulp-other-plugins タスクを実行: $ gulp task_name 複数タスクを実行: $ gulp task_name other_task JavaScript: gulpfile.js Single Dest & Watch Multi Dest Incremental Rebuilding Only Changed Async Streams Serial Join Stream Array CoffeeScript: gulpfile.coffee Single Dest & Watc
テスト自動化の導入理由や効果測定をROIという観点で説明できるように、テスト自動化のROIの概念から実際の計算式までを解説する連載です。 連載目次 はじめに:本連載について 本連載を担当しますテスト自動化研究会(STAR)の太田健一郎と申します。本連載では、読者の皆さまがテスト自動化の導入理由や効果の測定をROI(return on investment、投資利益率、投資収益率、投資回収率)という観点で説明できるように、テスト自動化のROIの概念から実際の計算式までを数回にわたって解説させていただきます。 連載の流れは以下の通りです。 テスト自動化とROI ROIの試算式の構成要素と試算式 ROIの試算式の詳細と実際 本連載の対象読者は以下を想定しています。 テスト自動化を推進するエンジニア テスト自動化の定性的な効果は理解しているが、定量的な説明がうまくできないエンジニア 本連載で取り上
Working With Opensource - Struggles For Perl 5.20 Subroutine Signatures Perl 5.20ではとうとうPerlにsubroutine signaturesが入りました。ですが、その裏ではこの機能をマージしてもらうための長く苦しい戦いを戦った一人の男がいたのです… 本トークではsubroutine signaturesについてではなく、subroutine signaturesを本気でPerl5に追加しようとした男、Peter Martini氏の視点から、最初の提案から5.20としてリリースされまでの約2年に渡る奮闘の軌跡を追って紹介したいと思います。 本トークは新規に立ち上げたばかりの若い開発コミュニティに参加するだけではなかなか見る事ができない、歴史ある開発コミュニティとのコミュニケーションや対立、目的を達するために
Unix系OSの権限分離の変遷について(もしくはなぜ、アプリ単位の権限分離が求められるようになったか) [ブコメした件について。大筋でおかしなことは書いてないと思いますが、出典は確認していません] Unix系OSにおける権限分離は、伝統的に、利用者ごとに異なるuser idを割り振り、これを用いてアクセス制御を行うという方式で実現されてきた。また、デーモンプロセスについては、不要な権限付与を避け、デーモンプロセス間の相互作用を抑制するために、デーモンごとに専用の「user id」を発番するのが一般的な慣習とされるようになったという経緯がある。 しかし、2000年代に入ると、インターネットの普及とあいまって、クライアントサイドではこのような「利用者ごと」の権限分離では不十分という考え方がされるようになってきた。具体的には、 (オンラインバンクのパスワードに代表されるような)攻撃価値が高い情報
Herokuが自ら実践しているAPIデザインガイドをGithubに公開した. “HTTP API Design Guide” このガイドは些細なデザイン上の議論を避けて,ビジネスロジックに集中すること目的としている.Heroku特有なものではなく,一般にも十分適用できる知見となっている. 最近は,モバイル向けにAPIをつくることも多いため,勉強もかねて抄訳した.なお内容は,HTTP+JSONのAPIについて基本的な知識があることが前提となっている. 適切なステータスコードを返す それぞれのレスポンスは適切なHTTPステータスコード返すこと.例えば,“成功"を示すステータスコードは以下に従う. 200: GETやDELETE,PATCHリクエストが成功し,同時に処理が完了した場合 201: POSTリクエストが成功し,同時に処理が完了した場合 202: POSTやDELETE,PATCHリク
5/20 頃に 公開した envchain というツールの紹介記事を、会社の技術ブログに書いた。 OS X キーチェーンから環境変数をセットするツールを作りました - クックパッド開発者ブログ 投下時間の関係もあると思うけど、思いの他結構拡散してびっくりした。まあ、それは置いておいて、本題。 おもしろい。が、ps -Eで他プロセスで環境変数が見えることを考えると、そもそも環境変数に認証情報を入れてる時点で… / “OS X キーチェーンから環境変数をセットするツールを作りました - クックパッド開発者ブログ” http://t.co/n1quG3C4Tx — Kazuho Oku (@kazuho) June 4, 2014 ごもっともだと思います。 実際のところ、わたしはなんか「環境変数やめろ bot かよ」と言われるレベルであまり環境変数に機密情報を入れる事を好んでないです。 なのにこ
ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その5 – まとめ #activerecord#Arel#rails#ruby#sql 2014年 05月 07日 nishio その1 – その4 まで、Arelの内部構造について説明してきました。 魔法のような技術に思われるArelも、意外と単純な構造をしていました。 今回は、Arelの内部構造をGraphvizで出力する方法を紹介します。 図で構造を出力してみると、クエリがどういうノードで構成されているのかイメージでき、Arelへの理解がもっと深まるかと思います。 以下、目次となります。 ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その1Arelについてなぜ調査しようと思ったのか、その背景と今後利用するサンプルコードを掲載しています。ActiveRecordを支える技術 –
ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その4 #activerecord#Arel#rails#ruby#sql 2014年 05月 06日 nishio product = Arel::Table.new(:products) corporation = Arel::Table.new(:corporations) product_detail = Arel::Table.new(:product_details) product .project('*') .join(corporation) .on(product[:corporation_id].eq(corporation[:id])) .to_sql # "SELECT * FROM `products` # INNER JOIN `corporations` ON `products`
というsqlが生成されるのかを見ていきましょう。 以下、目次となります。 ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その1Arelについてなぜ調査しようと思ったのか、その背景と今後利用するサンプルコードを掲載しています。ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その2 [この記事]シンプルなSQL文、「select * from products」を通して、どのようにSQLが生成されていくのかを見ていきます。ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その3whereを含むSQL文がどのように生成されるのかを見ていきます。ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その4joinを含むSQL分がどのように生成されるのかを見ていきます。ActiveRec
ActiveRecordを支える技術 – Arelとは何者なのか? (全5回) その1 #activerecord#Arel#rails#ruby#sql 2014年 05月 04日 nishio Rails3, ActiveRecordからは、内部でArelと呼ばれるSQL生成用のライブラリが利用されています。 今回、Arelが内部でどのようにSQLを生成しているのかを調査したので、当ブログにて公開いたします。 ちょっと長くなってしまったため、全5回に分割しました。 以下、目次となります。 ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その1 [この記事]Arelについてなぜ調査しようと思ったのか、その背景と今後利用するサンプルコードを掲載しています。ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その2シンプルなSQL文、「
ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その3 #activerecord#Arel#rails#ruby#sql 2014年 05月 05日 nishio product = Arel::Table.new(:products) product.project('*').where(product[:price].eq(1000)).to_sql # "SELECT * FROM `products` WHERE `products`.`price` = 1000" の部分から読んでみます。 以下、目次となります。 ActiveRecordを支える技術 – Arelとは何者なのか?(全5回) その1Arelについてなぜ調査しようと思ったのか、その背景と今後利用するサンプルコードを掲載しています。ActiveRecordを支える技術 – Arelとは何
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く