2015年3月26日のブックマーク (40件)

  • Re: 論理削除はなぜ「筋が悪い」か - Blog by Sadayuki Furuhashi

    Kazuhoさんの論理削除はなぜ「筋が悪い」かを読んで。 UPDATEが発生しないテーブルならば、削除フラグを使った実装手法でも現在の状態と更新ログを別々に表現でき、結果として効率と過去の情報を参照できるメリットを簡潔に両立できるのではないか、という話。 大前提として全く同意なのだけども、今あるテーブルにdeleted_atを足すだけで、過去のレコードを復旧可能なようにしたい>< みたいに思っちゃった僕のような人間が実際に取るべき実装手法は何か、あるいは、それを想定して今やっておくべきテーブル設計はどういうものか!?というのが最後の疑問。 まずUPDATEがなければ、immutableなマスタ、更新ログ、「現時点のビュー」の3テーブルは、例えば次のようになる(PostgreSQLの場合): -- immutableなマスタ。 create table records ( id serial

    Re: 論理削除はなぜ「筋が悪い」か - Blog by Sadayuki Furuhashi
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 26, 2015 at 02:39PM
  • Linuxだからできないなんて言わないよ SQLite Database Browser (Ubuntu 13.10)

    Linuxだからできないなんて言わないよ ubuntuのインターフェイスがUnityになってからインストールしたアプリを覚えられなくなってしまったのでメモ。情弱ちゃんメモ。 Ubuntu ソフトウェアセンターからインストール。 sqliteと検索すると出てきます。 起動してSQLitedbファイルに接続というか、開きます。 テーブル・カラム名の確認。 SQLiteのコマンドも実行できます。 SQL string:コマンド入力欄 Execute query:実行 成功すればNo errorと表示されます。 セーブすると実データに反映されます。 GUI環境で視覚的に確認できるのはありがたいですよ。 人気ブログランキング

    Linuxだからできないなんて言わないよ SQLite Database Browser (Ubuntu 13.10)
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 26, 2015 at 09:41PM
  • SQLite管理ツール「SQLitebrowser」を試した記録

    SQLiteを使ってみるにあたって、管理ツールはないものかと探してみた記録です。 wikipediaSQLiteの項によると、日語表示可能な管理ツール「SQLiteManager」があるとのことですが、家サイトの情報もまだまとまりきっていないようなので、ubuntu公式パッケージになっている「SQLite browser」を試してみます。(注:Ubuntuパッケージ名は「SQLite browser」ですが、公式名称は「SQLite Database Browser」のようです。 ) 環境はUbuntu8.04です。 公式パッケージなので、インストールはパッケージマネージャから。 インストールが完了すると、アプリケーションメニューに登録されます。 らくちんです。 さっそく起動します。 かなりシンプルなguiインターフェイスです。 新規作成([File]-[New Database])

    SQLite管理ツール「SQLitebrowser」を試した記録
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 26, 2015 at 09:45PM
  • 操作が複雑なソフトウェアも簡単に使える!GUIフロントエンド大集合 MOONGIFT

    開発者向けのソフトウェアではCUIやテキストベースの設定ファイルを編集するのが基だと思います。しかしこれでは非開発者の方や、あまり慣れていない人が操作しようと思った時にミスを生みやすくなります。 そこで便利なのがGUI布団とエンドフロントエンドです。これを上手に使うと、知らなかった設定が見つかったり、typoによるミスを防ぐことが出来ます。大量のデータを更新する自動化には向きませんが、少数の設定を不定期に行う際などに便利でしょう。 データベース 高機能なMySQLフロントエンド「HeidiSQL」 HeidiSQLからデータベースを選択してテーブルの内容を見られるのはもちろん、データを編集してアップデートすることもできる。テーブルの構造を変更したり、インデックスを追加することも可能だ。任意のクエリーを実行、データのエクスポートやインポートもできる。HeidiSQLからユーザ管理を行ったり

    le_penseur
    le_penseur 2015/03/26
    via Pocket March 26, 2015 at 09:50PM
  • 【続】xmonadとxmobarの設定 - Qiita

    xmonadとxmobarの設定というのを書いていたのですが、いろいろ改善点を直しているうちに、追記では収まらなくなっていたので、新たにエントリーを書くことにしました。 xmonadを含むタイリングウィンドウマネージャの魅力については、他の人も多く語っているので、少しググってみると、その魅力に惹かれる人はいるんじゃないかなと思います。ということで,今回はxmonadとはなんぞや、といった話はあまりしません。 また、当人はプログラミング言語のhaskellに関する知識はなく、公式ドキュメントやメーリングリストの情報から設定ファイルを書いているのであしからず。 スクリーンショット xmonadの設定 GitHubで公開しています。最新の設定はこちらを参照してください。 dotfiles/xmonad.hs at master · ssh0/dotfiles:) ----------------

    【続】xmonadとxmobarの設定 - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:51PM
  • 標準出力も標準エラー出力もログに記録しつつ、画面に標準エラー出力を出したい - Qiita

    SHELL=/bin/bash MALITO=alert@example.com 0 0 * * * /path/to/command そして、以下のようなポリシーでログを取りたい。 標準出力も標準エラー出力も、全部ログに記録する。 標準エラー出力があった場合は、メールを送信する。 /path/to/command >> /var/log/some ですと標準エラー出力がログに記録されませんし、 /path/to/command >> /var/log/some 2>&1 だと標準エラー出力に出力されずメールが送信されません。 解決策 SHELL=/bin/bash MALITO=alert@example.com 0 0 * * * (/path/to/command 2>&1 >> /var/log/some) | tee -a /var/log/some 解説 まず前半の /path

    標準出力も標準エラー出力もログに記録しつつ、画面に標準エラー出力を出したい - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:51PM
  • WEBエンジニア一人だけでサービスを作りきる方法-夫婦のための自動ごはん予定お知らせサービス「GoHaaan」制作でやったこと

    夫婦のための自動ごはん予定お知らせサービス「GoHaaan」を2月末にリリースしました。パチパチパチ。 https://gohaaan.com/ どんなことができるかっていうと、Googleカレンダーの予定タイトルに[LUNCH]とか[DINNER]っていう文言を含めておくと、自動的に予定の前日16:00に指定のメールアドレスへ「ごはんべてきますよー」っていう旨のメール通知を送ることが出来ます。 嫁さんのメアドとか設定しておけば、自宅でべるかどうかの確認を忘れずに済むので、 「外でべて来たけど家帰ったらごはん準備してあった…」とか 「お昼は外でランチミーティングの予定だったのにお弁当作ってた…」とか を減らせるんじゃないかな。 startapp.jpに作った経緯とか載せてるので読んでみてね。 夫婦のための自動ごはん予定お知らせサービス「GoHaaan」 開発者、スーパーRubyist

    WEBエンジニア一人だけでサービスを作りきる方法-夫婦のための自動ごはん予定お知らせサービス「GoHaaan」制作でやったこと
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:50PM
  • Rubyで短縮URLを展開する - Qiita

    HTTPレスポンスがリダイレクトであればLocationヘッダを読んでいます。 短縮URLがネストしている場合にも対応すべく、再帰的に処理しています。 require 'net/http' require 'uri' def expand_url(url) begin response = Net::HTTP.get_response(URI.parse(url)) rescue return url end case response when Net::HTTPRedirection expand_url(response['location']) else url end end puts expand_url("http://bit.ly/ICFCzV") Register as a new user and use Qiita more conveniently You get

    Rubyで短縮URLを展開する - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:52PM
  • エンジニアtype 技術者のキャリアを考えるWebマガジン - 転職@type

    エンジニアtypeは、各種エンジニアをはじめ「創る人たち」のキャリア形成に役立つ情報を発信する『@type』のコンテンツです。

    エンジニアtype 技術者のキャリアを考えるWebマガジン - 転職@type
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:52PM
  • Githubを使わずにチームでGitを共有する方法 - Qiita

    通常、ローカルでgitリポジトリを作成するには、 git init git clone のいずれかのコマンドを叩く。 リモート用のgitディレクトリを作成するには、下記を叩けば良い。 --bare:ベアレポジトリ(作業ファイルを持たず、管理のみ行うリポジトリ)を作成するオプション --shared:グループアクセス可能なパーミッションを追加するオプション リモート用のリポジトリ(ベアリポジトリ)の拡張子は.gitとするのが慣例 AWSなど、チームでアクセスできるサーバ上で上記ディレクトリを作成すれば、Githubの代わりとして使える。 ローカルにSourceTreeのアプリも入れておくと便利!(ツリー構造がひと目で分かる) ※参考URL ▼ベアリポジトリについて - Git http://www.proton.jp/main/programming/git/bare.html Regist

    Githubを使わずにチームでGitを共有する方法 - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:53PM
  • OpenCV でウォーリーを探す - Qiita

    はじめに 10秒以内にウォーリーを探す合理的な方法 : ギズモード・ジャパン 疑問 こんなキャラクターを探すのに 10 秒もかかってしまうらしい 雑魚だな俺は10秒もかからずに見つけてやるぜ コード tanjo/where-s-wally Result ただのテンプレートマッチングでした ありがとうございました Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    OpenCV でウォーリーを探す - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:36PM
  • Rails セキュリティガイド | Rails ガイド

    このマニュアルでは、Webアプリケーション全般におけるセキュリティの問題と、Railsでそれらの問題を回避する方法について説明します。 このガイドの内容: ガイドで取り上げられている問題に対するあらゆる対策 Railsにおけるセッションの概念、セッションに含めるべき項目、有名なセッション攻撃 Webサイトを開くだけで(CSRFによる)セキュリティ問題が発生するしくみ ファイルの取扱い上の注意、管理インターフェイスを提供する際の注意事項 ユーザーを正しく管理する(ログイン・ログアウトのしくみ、あらゆるレイヤにおける攻撃方法) 最も有名なインジェクション攻撃方法の解説 1 はじめに Webアプリケーションフレームワークは、Webアプリケーションの開発を支援するために作られました。フレームワークの中にはセキュリティを比較的高めやすいものもあります。実際のところ、あるフレームワークは他のよりも安

    Rails セキュリティガイド | Rails ガイド
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:38PM
  • 『Railsアプリケーション構築ガイド — Railsアプリケーション構築ガイド』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『Railsアプリケーション構築ガイド — Railsアプリケーション構築ガイド』へのコメント
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:38PM
  • 若手開発者の後悔 | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) これはある仕事熱心な若手開発者のほぼ実話です。2004年の後半、この若手開発者は小さな会社で働き始めました。条件は全て彼の望みどおりでした。給料はいいし、扱うのは彼の得意とするプログラミング言語、アプローチの複雑性、モデリングのアーキテキチャでした。 彼にとって今回の会社が初めての職場ではありませんでした。しかし、ここでの最初のプロジェクトは結果的に 問題だらけ に終わりました。当時、この若手開発者は、機能は絶対に変わらないものだと思っていました。しかし、それは間違いでした。機能が変更されるたびに完全なリファクタリングを行わなければなりませんし、バグを引き起こして膨大な時間を無駄にしてしまいます。彼は、テストを書くといった実直な方法も試してみましたが、書いたテストはメンテナンスが必要な上、書くのに時間

    若手開発者の後悔 | POSTD
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:39PM
  • 言語処理100本ノックを敢えてRubyで (1) - 世界線航跡蔵

    言語処理100ノック を(飽きるまで)やってみるにあたり、敢えてRubyで書いてみる。 基的にはPythonを想定しているらしいし、そもそもNLPライブラリの充実度から言ってもPythonを使うのが極めて妥当な選択といえるだろう。そこを敢えてRubyで。 00. 文字列の逆順 puts "stressed".reverse RubyでもPythonでも大差ない。 01. 「パタトクカシーー」 str = "パタトクカシーー" puts 1.step(7, 2).map{|i| str[i]}.join やはりスライスにstepを指定できるPythonのほうが楽である。 02. 「パトカー」+「タクシー」=「パタトクカシーー」 strs = %w[パトカー タクシー] puts strs.map(&:chars).inject(&:zip).flatten.join 別解 strs =

    言語処理100本ノックを敢えてRubyで (1) - 世界線航跡蔵
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:39PM
  • 妻子持ちの凡人プログラマが限られた時間で行う趣味の開発 - Tbpgr Blog

    概要 子持ちの凡人プログラマが限られた時間で行う趣味の開発について ターゲット 仕事も大事だけど家庭も大事にしたい。でも趣味の開発もしたいソフトウェア開発者さん。 元々実力が高い方はすでに実践済の内容であると思われるため、あまり参考にならないと思います。 ライブラリの作成などに関して、不慣れで、試行錯誤している段階の方向けです。 この記事をまとめる動機 業務外の限られた時間で大小さまざまなソフトウェアを作りたい。 仕事も家庭もあるので、趣味の開発のためにまとまった時間が確保できるとは限らない。 そのため、特に大きめのソフトウェアを作る機会が少なくなりがち。 現状の問題点 大きなソフトウェアを作る際に、個別の機能を別々の小さなタスクにして、 地道に開発することもできますが、開発が長引いたり間が空いたりすると 成果物に対する熱が冷める 全体の設計思想が頭から離れる などの問題が発生してしまい

    妻子持ちの凡人プログラマが限られた時間で行う趣味の開発 - Tbpgr Blog
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:40PM
  • Rspec の pending と skip って何が違うの? - Qiita

    何が違うか知らなかった時に調べたメモ。ちなみに Rspec 3 の話。 簡単に言うと以下のとおり。外的な要因で一時的に落ちているけど、いずれ通るようになる example は pending にすれば良いと思われる。(参考資料) pending: example が失敗したらテストは成功になる skip: example は実行されない pending は何らかの事情で example が失敗する原因を修正できない場合に使えば良い。パッチがマージされるまで example が失敗する場合など。そのような時に pending を使っておけば、example が失敗する原因が修正されたときに(pending な example が成功することで)テストが失敗するようになるので、もう pending にしておく必要がないと気づくことができる。あるいは原因不明だけど example が失敗している

    Rspec の pending と skip って何が違うの? - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:43PM
  • Google API OAuth2.0のトークン取得手順 - Qiita

    メモ書き。gem gmailを使いたく。 1. Gmail APIの有効化 初回は https://code.google.com/apis/console/ を開き[Create project...]により Google Developers Consoleが開かれる。 Gmail API [OFF]を[ON]にする。 2. アクセストークンの取得 サイドバー[認証情報]よりOAuthの[新しいクライアントIDを作成] 「インストールされているアプリケーション」を選び[同意画面を設定] 適当に必要事項を記入して[保存] 再び[新しいクライアントIDを作成]より「インストールされているアプリケーション」を選び[クライアントIDを作成]で クライアントID、クライアントシークレット、リダイレクトURIが得られる。 リダイレクトURIは何も入力しなければhttp://localhostである

    Google API OAuth2.0のトークン取得手順 - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:44PM
  • 【Javascript】値渡しと参照渡しについてあらためてまとめてみる - Qiita

    var a, b; a = 0; b = a; b = 5; console.log(b); // 5 console.log(a); // 0 (aは変わらない) var c, d; c = [0,1,2]; d = c; d[0] = 5; console.log(d) // [5,1,2] console.log(c) // [5,1,2] (cも変わる) 値渡しと参照渡しについて理解されている方ならなんの問題もないですが、これは上のコードを見て ??????となった方向けの記事です。 結論から言うと、Javascriptにおいて プリミティブ型は値渡し、オブジェクト型は参照渡しとなります。 ざっくり言うと、値渡しはその値そのものの情報を別の変数に渡していて、参照渡しはメモリ上のどこを参照しているかの情報を別の変数に渡しているか、という違いですね。 ちなみに、Javascriptにお

    【Javascript】値渡しと参照渡しについてあらためてまとめてみる - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:50PM
  • 既存のRailsアプリの検索にElasticSearchを導入してみる - Qiita

    Greenという転職サイトで、ElasticSearchを導入して遊んでみようと思います。 具体的には今の求人が持っているデータをElasticSearchに入れてみて実際に開発環境で動かす事をGoalとします。 全文検索とは? 全文検索(Full text search)とは、コンピュータにおいて、複数の文書(ファイ ル)から特定の文字列を検索すること。「ファイル名検索」や「単一ファイル 内の文字列検索」と異なり、「複数文書にまたがって、文書に含まれる全文を 対象とした検索」という意味で使用される。 - 引用:Wikipedia インデックスの違い Bツリーインデックスとは? - 引用:What Is A B Tree Index RDBのインデックスについて 転置インデックスとは? - 引用:thinkit elasticsearchを全文検索サーバとして活用するなら読んでおきたい、6

    既存のRailsアプリの検索にElasticSearchを導入してみる - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:49PM
  • Ionic + Railsのサンプルアプリ(ng-token-auth+devise_token_authを使った認証) - Qiita

    What's Ionic ? Ionicは、HTML5を用いたハイブリッドモバイルアプリケーションを構築するためのオープンソースのフロントエンドSDK Ionicには、レスポンシブフレームワークとは異なり、iOSやAndoridのネイティブSDKで得られるようなモバイルUIとレイアウトが含まれている ハイブリッドアプリ ハイブリッドアプリは、アプリの中のブラウザシェルで実行されていて、ネイティブのプラットフォーム層にアクセスすることもできる、小型のウェブサイト ハイブリッドアプリは、特にプラットフォームのサポート、開発のスピード、およびサードパーティ製のコードの利用面で、純粋なネイティブアプリケーションと比べて多くの利点を持っている Ionicの特徴 Apache Cordovaを拡張して作られている、モバイルUIフレームワーク&開発ツール AngularJSやSassを採用している Io

    Ionic + Railsのサンプルアプリ(ng-token-auth+devise_token_authを使った認証) - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:49PM
  • RubyでYouTube Data APIを利用したときのメモ - Qiita

    動画情報の設定をプログラムでしたいのでYouTube Data APIRubyで叩いた。 ライブラリはgoogle-api-clientを利用した。 準備 まずAPIを有効化する。YouTube Data API。 デベロッパコンソール > APIと認証 > API クライアントを登録して、登録情報をダウンロードする。 デベロッパコンソール > APIと認証 > 認証情報 OAuth で新しいクライアントIDを作成。 ローカルで利用するのでネイティブアプリケーションを選択。 JSONをダウンロードしてclient_secrets.jsonでカレンドディレクトリに保存。 (この名前だとライブラリが自動認識する) APIを利用する。 client.execute で api_method を指定して実行するだけ。 どんなパラメータをとるかはドキュメントに記載されている。 動画情報の更新には

    RubyでYouTube Data APIを利用したときのメモ - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:44PM
  • Rubyプログラミングが快適になるVim環境を0から構築する - Qiita

    より快適なVim × Ruby環境を目指して構築したvim環境について。 0からでも構築できるように整理した。 やること 最初にRubyVim、その他必要なパッケージをガシガシインストールする。 その後、設定した下記機能について実際の操作例を見ていく。 自動コード補完ができるようにする(Rsense/neocomplete) Vim上で静的解析ができるようにする(Rubocop/syntastic) Vimからリファレンスを閲覧できるようにする(vim-ref/vim-ref-ri) メソッド定義元へのジャンプができるようにする(ctags/vim-tags) 構文終わりのキーワードを自動入力できるようにする(vim-endwise) OSはLinux(CentOS6.5)を想定。検証環境は以下のとおり。 $ uname -a Linux vagrant-centos65.vagrant

    Rubyプログラミングが快適になるVim環境を0から構築する - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:41PM
  • ちょっとした手間を惜しむためのコマンド集 - Qiita

    一般的なシェル講座にはなかなか出てこない、ググればすぐ出てきたり、ちょっとプログラムを書けばすぐできるんだけど、実はそれコマンドでできるよってやつ。他にもあったら教えて下さい。 man ascii アスキーコード表を確認できます。 $ man ascii (〜略〜) Oct Dec Hex Char Oct Dec Hex Char ──────────────────────────────────────────────────────────────────────── 000 0 00 NUL '\0' 100 64 40 @ 001 1 01 SOH (start of heading) 101 65 41 A 002 2 02 STX (start of text) 102 66 42 B 003 3 03 ETX (end of text) 103 67 43 C 004 4

    ちょっとした手間を惜しむためのコマンド集 - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:43PM
  • Rubyのハッシュの記法まとめ - Qiita

    まず、ハッシュと配列の違いから。 配列はインデックスとして整数値をとるがそれ以外を取るものがハッシュ 連想配列がハッシュということですね。 記法①:ハッシュロケットを使う

    Rubyのハッシュの記法まとめ - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:49PM
  • Ruby で メールアドレスの有効性チェックしてみた - Qiita

    はじめに C 向けのサービスを運営していると、ログインID や連絡のためにメールアドレスを取得することが多い。 で、その取得したメールに対して、大量のメール配信を行ったところ、バウンス率が高いために Amazon SES から配信停止をらったもんで、 停止解除のための説得材料として、登録されているメールアドレスの有効性チェックを行おうと、方法を色々調べた。 下記のように Web で同様のサービスもやってますが、まぁ csv インポートだとお金かかったりだとか、 色々あったので、調べて自分で実装してみました。まぁざっと作ったのでひどいソースですが… http://www.verifyemailaddress.org/ http://address-kakunin.com/ https://www.voilanorbert.com/ メールアドレスの有効性をチェックするには、telnet

    Ruby で メールアドレスの有効性チェックしてみた - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:44PM
  • POSTされてきたHTTP Requestをひたすらに標準出力するHTTPサーバをRubyで書いた - Qiita

    これで試しにブラウザやcurlコマンド等で http://localhost:8080 にアクセスし、 httpserver.rb を実行したコンソール上に何やら出れば成功です。 終了するには Ctrl-c で。 ソース require 'socket' # 初期設定 port = 8080 server = TCPServer.open(port) length = 0 # ソケット通信 loop do socket = server.accept # HTTPメッセージを1行ずつ読み出す while buffer = socket.gets puts buffer # Content-Lengthの値をlengthに格納 if buffer.include? "Content-Length" length = buffer.split[1].to_i end # 改行のみ→次の行以降は

    POSTされてきたHTTP Requestをひたすらに標準出力するHTTPサーバをRubyで書いた - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:44PM
  • TDD(テスト駆動開発)メモ - Qiita

    某所でテストの神様と呼ばれるt-wadaさんの講演を聞く機会があったので、参加してきました。 その際に聞いた話&学びを残していきます TDD(テスト駆動開発)とは プログラム開発手法の一種で、プログラムに必要な各機能について、最初にテストを書き(これをテストファーストと言う)、そのテストが動作する必要最低限な実装をとりあえず行った後、コードを洗練させる、という短い工程を繰り返すスタイルである。 (wikipedia参照) TDDの進め方 テストコードが失敗するコードを書く 最低限動くコードを書く テストを失敗させるテストコードを書く 3で失敗したテストコードが通るようにコードを修正する テストが通った状態でリファクタリングをしていく さっそくやってみる 今回はmochaでテストを書いていきます 1. テストコードが失敗するコードを書く! describe('偶数かどうかチェックする関数',

    TDD(テスト駆動開発)メモ - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 07:44PM
  • Linguee | Lingueeとは?

    Lingueeについて Lingueeは、原文と訳文が対になった何十億もの二ヶ国語テキストから単語や表現を調べられる検索エンジンと、独自に編纂した辞書とを組み合わせた、他に類を見ない翻訳ツールです。 Lingueeでは検索結果は二つの部分に分かれて表示されます。ヘッド部分には当社が編集した信頼のおける辞書からの検索結果が見やすく表示されます。プロの編集者が常に新しい記入を追加し、辞書の質を高めています。これによってユーザーが検索する語句のさまざまな訳語を一覧することができます。下部には他の出典からの例文が表示され、検索語句が文脈の中でどのように翻訳されているかを確認できます。 従来のオンライン辞書に比べ、Lingueeには約千倍にものぼる数の翻訳テキストがあり、フルセンテンスで表示されます。Lingueeは「strong evidence」「strong relationship」「str

    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 09:42PM
  • コマンドラインやvimから言語を指定してDash.appを呼び出す - Qiita

    Dash - naoyaのはてなダイアリー で MacのDash.appが便利と話題らしい もとはスニペットマネージャらしいですが、各言語のドキュメント閲覧に使うと非常に便利らしいです。 基的な使い方は上記URLなりで見てもらうとして、少し凝った呼び出し方法を紹介。 まずは、コマンドラインから呼び出す方法。 $ open dash://[word] $ open dash://'[word1] [word2]' $ open dash://[language]:[word] スペースを空けて検索ワードを追加することで、そのワードでページ内検索ができるようです。(分かりづらいですが実際にやってみると分かるかと思います。AND検索とはちょっと違うみたいです。) また、コマンドラインから呼び出す場合は、クォーテーションで括ることで複数ワードを指定できるようです。 ただし、言語を指定した場合は複

    コマンドラインやvimから言語を指定してDash.appを呼び出す - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:31PM
  • Dashを入れてみたらjQueryやらのドキュメントを見るのが想像以上に快適だったよ。 | Ginpen.com

    自分も正直「え、別にブラウザーで見れば良いじゃん?」と思ってたんだけど、想像以上に快適だったので、皆さんにもお薦めしておきますよ。 なにそれ? jQueryやBackbone.js、HTMLCSS、あるいはRubyJavaPHPといったもののドキュメントを閲覧するソフトウェアですよ。 事前にダウンロードしておくのでさくさくだし、検索が簡単だから欲しい情報がすぐ手に入るし、グローバルキーボードショートカットなんか設定しておくと一瞬で検索開始できるからお手軽です。 ウェブブラウザーのブックマークから開いて見れば良いじゃん、てな人も一度使ってみてくださいな。 インストールも簡単です。 検索してみたところ。 公式サイト Dash – Documentation Browser, Snippet Manager – Kapeli インストール App Storeからインストールします。公式サイ

    Dashを入れてみたらjQueryやらのドキュメントを見るのが想像以上に快適だったよ。 | Ginpen.com
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:38PM
  • VimでiOSのリファレンスを直接参照したい → CtrlPの拡張でできるようになりました | TOKOROM BLOG

    Vimでリファレンス読む必要ありますか? 正直微妙なところでしょうか。 自分の場合、 Dash があればVimで直接にリファレンスAPIドキュメントとか)を見れなくてもそんなには困ってないです。 ただ、せっかく前の記事でVimでObjective-Cのコード補完をできるようにしたので、リファレンスもVimで参照できるようにしてみたいと思います。 Vimでさらっと検索してリファレンスから関数をコピー そのままプログラミングにペースト というのをキーボードから手を離さずに手早くできるというメリットはありそうです。 ※ ただ、がっつりドキュメント読むときはやはりDashとか使ったほうが良いと思います Docsetを検索するCtrlPのエクステンションを作りました ctrlp-docset というpluginを作りました。 オフィシャルのiOSのドキュメント(iOS 6.0 Library)は D

    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:32PM
  • GitHub - zealdocs/zeal: Offline documentation browser inspired by Dash

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - zealdocs/zeal: Offline documentation browser inspired by Dash
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:27PM <svg xmlns="http://www.w3.org/2000/svg" width="101" height="20"><linearGradient id="a" x2="0" y2="100%"><stop offset="0" stop-color="#fff" stop-opacity=".1"/><stop offset=".1" stop-color="#fff" stop-opacity=".1"/><stop offset=".9" stop-color="#fff" stop-opacity="
  • Win/LinuxでもMacのdashのようにAPI検索したい - Qiita

    ということで、zealを入れるだけのエントリーですw Windows/Linux上でもMacのdashのように複数言語のAPIドキュメントをオフラインで検索できるようになります。 Ubuntu12.04上でvim連携した際の例です。 GUI環境が必要です。 sudo add-apt-repository ppa:jerzy-kozera/zeal-ppa sudo add-apt-repository ppa:ubuntu-sdk-team/ppa sudo apt-get update sudo apt-get install zeal zealを起動してEdit > Options > Docsetタブから必要な言語のドキュメントをダウンロードします。 vim連携する場合は以下を.vimrcに追加します。(NeoBundle管理)

    Win/LinuxでもMacのdashのようにAPI検索したい - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:11PM
  • Alfredとdashで超高速リファレンス

    [DL輪読会]data2vec: A General Framework for Self-supervised Learning in Speech,...

    Alfredとdashで超高速リファレンス
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:36PM
  • Dash 用 Ruby リファレンスマニュアル (日本語) を 2 クリックでインストールできるようにしました - 情報と音楽

    先日 "Dash で Ruby リファレンスマニュアル (日語) を閲覧するためのツールを作成しました" という記事を書いたとこですが、簡単にこれをインストールする方法があったので、やってみました。 下記のページにアクセスし、好みのバージョンのリンクをクリックするだけで、Dash の Docsets に追加されるので、Download をクリックすればインストールされます。 http://labocho.github.io/rubydoc-ja-docsets/ Dash には Dash documentation feed という仕組みがあり、ドキュメントのバージョンと tarball の URL を書いた XML を用意しておくと、ダウンロードから更新まで対応できるというものです。よくできてますね。

    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:36PM
  • Dash で Ruby リファレンスマニュアル (日本語) を閲覧するためのツールを作成しました - 情報と音楽

    Dash 便利ですよね。ドキュメントを引くのがとてもスピーディになります。 Dash には標準で Ruby のドキュメント (英語) が用意されています。それはそれで便利ですが、Ruby にはすばらしい日語のリファレンスマニュアルがあります。 Dash は自分で docsets を作成する方法が公開されているので、Ruby リファレンスマニュアルの docsets を作成するツールを作成しました。 labocho/rubydoc-ja-docsets・GitHub https://github.com/labocho/rubydoc-ja-docsets 使い方は README.md 参照してください。基的には rake install VERSION=2.0.0 するだけです。

    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:36PM
  • 『Dashに自作Docsetを用意する』

    入社して1年と1ヶ月が経ちました。 フロントエンジニアとして配属されたにも関わらず あまりに英語ができない私を危惧したトレーナーさんに 「日報で、その日覚えた開発にまつわる英単語を書け」 と言われ、つらいめんどいと鼻啜りながら書いていた英単語録が とうとう200近くになりまして ついに先日単語被りをしてしまった(blockなんて平凡な単語を2回も書いた)ので 検索しやすい・記録しやすい・後から見て自分で使えるようにせねば、と 高速ドキュメント検索ツール「Dash」に、自作ドックセットを作りました。 Github - tokimari/mywords (書いてる内容は低レベルです…w) 参考にしたのは Generating Dash Docsets - Kapeli 公式ドキュメント exlee/d3-dash-gen D3.jsのDashドックセットつくるやつ 意外に作り方の日語記事なく

    『Dashに自作Docsetを用意する』
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:37PM
  • dash.vimの使い方まとめ - Qiita

    Dashとは プログラミング言語や各種フレームワークのドキュメント/リファレンスを串刺しで検索できるMac用アプリ。スニペット機能もある。ドキュメントは必要な物を随時追加でとうろくしていける。 Dash for Mac - Documentation Browser, Snippet Manager - Kapeli VimからDashに登録されているドキュメントを検索する、dash.vimというVimプラグインがあったので、使い方をメモ。 :Dash[!] コマンドの文法

    dash.vimの使い方まとめ - Qiita
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 25, 2015 at 10:31PM
  • 言語処理100本ノックを敢えてRubyで (3) - 世界線航跡蔵

    引き続き、 言語処理100ノック を敢えてRubyで解いている。 第3章は正規表現がテーマだが、正規表現はそこまで得意ではないので辛い。マッチの効率とか深く考えていない。 20. JSONデータの読み込み require 'json' uk = File.foreach("jawiki-country.json"). map(&JSON.method(:parse)). find {|article| article['title'] == 'イギリス' } raise "no article about イギリス" unless uk puts uk['text'] 感覚的なものだけど、この場合は &obj.method(:mid) 形式の簡潔さが見慣れない分のデメリットを上回る気がした。 21. カテゴリ名を含む行を抽出 File.foreach('uk.txt').grep(/\[

    言語処理100本ノックを敢えてRubyで (3) - 世界線航跡蔵
    le_penseur
    le_penseur 2015/03/26
    via Pocket March 26, 2015 at 02:48AM