タグ

2015年3月18日のブックマーク (30件)

  • Ruby block/proc/lambdaの使いどころ - Qiita

    (2015/10/13追記) 今なら、他言語には無名関数やcallback関数というものがありますねとか、イベント駆動の世界を覗いてから戻ってくるとより腑に落ちるかもしれませんとか、もう少し全体観の中で説明する気がしますが、当時は記事の様な理解が役に立ったことは事実なので、引き続き公開を続けます。 (2013/11/29追記) block_given? について Twitter上で「Kernel.#block_given?についての解説があってもよさそう」と 指摘を頂きましたので、文下部に追記しました。 概要 Ruby on Rails Tutorialのエッセンスを自分なりに整理してみる4 Railsを触る際知っていると便利なRubyの基礎 [ブロックとかシンボルとか] http://qiita.com/kidachi_/items/46a6e49b6306655ccd64 の続き。

    Ruby block/proc/lambdaの使いどころ - Qiita
  • QA@IT サービス終了のお知らせ - @IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    QA@IT サービス終了のお知らせ - @IT
  • Ruby の Monitor と ConditionVariable の使い方 - Mame the hack

    Ruby の Monitor と ConditionVariable の使い方 なかなかぐぐっても日語の資料が見つからなかったので自分で動かしてみた。(ぐぐる能力低い) まずThreadの直列化 require "thread" require "monitor" moni = Monitor.new val = 0 Thread.new { 3.times { puts "thread1 start: #{val}" val+=1 sleep 0.1 puts "thread1 end: #{val}" } } Thread.new { 3.times { puts "thread2 start: #{val}" val+=1 sleep 0.1 puts "thread2 end: #{val}" } } sleep 結果は以下の通り。 start > end, start > en

    Ruby の Monitor と ConditionVariable の使い方 - Mame the hack
    kadoppe
    kadoppe 2015/03/18
  • Rubyでenumを使いたい時 - Qiita

    C系言語でお馴染みのenumですが、Rubyにはenumがないので、moduleを使ってやっています。 enum定数の定義 基的には定数を複数持ったモジュールを定義するだけです。

    Rubyでenumを使いたい時 - Qiita
  • bundlerを使ってRSpecを書きつつGemを開発する - Qiita

    bundlerを使ってRSpecを書きつつGemを作るための準備について。 ひな形を作成 まずはひな形を作成。 これで良い感じのディレクトリ構造とGemfile, gemspecが作成されて、なんだかいい具合のREADME.mdまで作成されます。 このままGithubにpushしたらREADME.mdが見えるようになるわけでなんだか流石な感じ。TODO: Write a gem descriptionの部分を編集してアップしましょう。 開発用にRSpecをgemspecに設定 Gem::Specification.newブロックの中でrspecを使うよう設定。

    bundlerを使ってRSpecを書きつつGemを開発する - Qiita
  • 意外と便利なJSON RPC - TechTalkManiacs

    このエントリーはHTML5 Advent Calendar 2012の4日目のエントリーになります。 JSON RPCとは文字通りJSONでRPCするプロトコルで、現行バージョンは2.0です。 リモート環境にある関数をローカルの関数と同様に呼び出せるRPCは呼びだす機能が多かったり、複雑だったりする時に非常に便利です。またRESTと違い対象がHTTPを受け付けるサーバーである必要がないというメリットがあり、これがwebsocketやメッセージングAPI、webworkerといったHTML5 APIと非常に相性がいいのです。 またRPCというとXML RPCが有名ですが、JSON RPCはそれにくらべて以下のような特徴を持ちます プロトコルが軽量・シンプル 名前つきパラメーター(namedparameter) バッチリクエスト では順番に見ていきます プロトコルが軽量 RPCに限らずXMLと

    意外と便利なJSON RPC - TechTalkManiacs
  • Rubyのattr_accessor, attr_reader, attr_writerとは何か -- ぺけみさお

    Ruby初心者であれば構文の一種だと誤解してしまいそうだが、これらはインスタンス変数にアクセスするためのメソッドを定義するメソッドである。 Java等の他の言語を経験した人には、プライベート変数に対するセッタやゲッタを勝手に定義してくれるメソッド、と説明すればわかりやすいかも知れない。 これらのメソッドの役割分担は以下のとおり。 通常はattr_accessorを目にする機会が多いと思われる。 attr_accessor – セッタとゲッタを共に定義する attr_reader – ゲッタのみを定義する attr_writer – セッタのみを定義する以下の2つのRubyスクリプトは、どちらも質的に同じ意味である。 しかし、attr_accessorを使うことで、記述量を大幅に減らせていることがわかる。 Rubyでは単なるセッタやゲッタを自分でゴリゴリと定義する代わりに、attr_*を使

  • Rubyでログ出力を扱うloggerライブラリ - 感謝のプログラミング

    とりあえず、基的な部分を抜粋したあとに、まとめたサンプルを作る。 ・ログをコンソールに表示する log = Logger.new(STDOUT) ・ログをファイルに出力する log = Logger.new("sample.log") ・特定のレベル以上のログだけを出力する log.level = Logger::WARN ・ログのレベル ログのレベル 意味 FATAL プログラムで対処不可能なエラー ERROR プログラムで対処可能なエラー WARN 警告 INFO 一般的な情報 DEBUG 開発者向け情報 上の基知識を使って作ったRubyのロガーサンプル # coding: utf-8 require 'logger' ## ファイルに出力する log = Logger.new("sample.log") log.debug("This is debug message") log

    Rubyでログ出力を扱うloggerライブラリ - 感謝のプログラミング
  • Ruby のクラスメソッド定義まとめ - Qiita

    クラスメソッドは特異メソッドやシングルトンメソッドとも呼ばれる,インスタンスではなくクラス体に紐付けられるメソッドです. C++Java などでいう static メソッドのような感じのものです. 一番オーソドックスなやり方 class Hoge def self.hoge "hoge" end end # クラス名を直接指定して呼び出し Hoge.hoge #=> "hoge" # ::を使っても OK Hoge::hoge #=> "hoge"

    Ruby のクラスメソッド定義まとめ - Qiita
  • 君がOpsでもRubyで書いたライブラリはGemで配ろう - Qiita

    Infrastracture as code流行の副産物として、もうOpsはある程度Rubyでライブラリを書けるようになりました。 折角Rubyでライブラリを書いたなら、安全&ラクに配布するためGemパッケージにしましょう、出来る人には今更でしょうが知らない人は真似してみてね。 ちなみに意外と誤解されてる点、gemにする=Rubygems.orgで公開する、ではありません、してもOKというだけで。 目標 gemファイルを置いて、gemコマンドで自分のライブラリをサーバに導入する。 こんなかんじで。 gem install -l my_libs-0.0.1.gem じゃあやってみましょう。 Gemの雛形をつくろう Gemの作り方は色々あるようですが、私はもっぱらbundlerです。 bundle gemで必要なファイル群を作成します、便利ですね。 $ bundle gem my_libs c

    君がOpsでもRubyで書いたライブラリはGemで配ろう - Qiita
    kadoppe
    kadoppe 2015/03/18
  • Rails Assets

    Maintained by Tenex Developers (@tenex). Originally created by @teamon, @sheerun, and @porada. Extra thanks to @jandudulski and contributors. humans.txt

    Rails Assets
  • bowerパッケージをbundlerで管理するRails Assetsを使ってみた - Qiita

    最近、Rails Assetsというサイトが話題になりました。 Rails Assetsは、Gemfileにsource 'https://rails-assets.org'を追記することで、bowerで管理しているパッケージをgemにラップしたものをbundlerでインストールできるサービスです。しかもbower.jsonの依存関係をパースして解釈してくれます。 Railsで利用するJSのライブラリをどうやって管理して更新していくのか、という悩ましい問題に対する一つの解決策になるかもしれません。 RailsでJSのライブラリを扱う方法として、今まで以下のようなやり方を試したことがあります。 vendor/assets/javascripts以下にそのまま配置する vendor/assets/javascripts以下にsubmoduleをcloneしてくる gem化されているrails-

    bowerパッケージをbundlerで管理するRails Assetsを使ってみた - Qiita
  • Use Bootstrap-Sass 3.x and Font Awesome (bower-rails vs. rails-assets) - Qiita

    Use Bootstrap-Sass 3.x and Font Awesome (bower-rails vs. rails-assets)Railsbower Railsで一般的なJS/CSSのパッケージ導入方法としては以下のものが挙げられる. ここではBootstrap(Sass ver.)を例に. 自分でDownloadしてきてぶち込む vendor/assetsに submoduleで gemから(gem 'bootstrap-sass') rails-assetsから(gem 'rails-assets-bootstrap-sass-official') bowerから bower-railsから そもそもUIまわりをRailsから分離しちゃう このへんの利点欠点については『bowerパッケージをbundlerで管理するRails Assetsを使ってみた』にわかりやすく丁寧に書

    Use Bootstrap-Sass 3.x and Font Awesome (bower-rails vs. rails-assets) - Qiita
  • 使用するアクションへのルーティングだけを設定 - Ruby on Rails入門

    リソースベースのルーティングを使ってroutes.rbファイルに設定を記述すると自動で7つのアクションを呼び出すためのルーティングが設定されますが、常に7つのアクションが必要なわけではありません。ここでは必要なアクションへのルーティングだけを設定するような記述方法について確認します。 1.必要なアクションを指定 2.不要なアクションを指定 必要なアクションを指定 まず最初に必要なアクションを指定する方法です。書式は次のとおりです。 resources :リソース名 :only => :アクション名 resources :リソース名 :only => [:アクション名, :アクション名, ...] 例えば7つの基アクションの中で「index」アクションだけを使いたい場合は次のように記述します。 Sample2::Application.routes.draw do resources :b

  • Design With Napkin - A vision for your life

    Skirting boards, or baseboards as they’re sometimes known, provide an essential finishing touch to any room in your home. Not only do they protect walls from scuffs and scrapes, but they also act as a decorative element – available in a wide range of styles and materials. Here are 5 reasons why traditional skirting board should be an essential element in every home. 1. Creates a Professional Finis

    Design With Napkin - A vision for your life
  • すべての管理職が共通してやるべきことは、5つしかない。

    あらゆる組織において、すべての管理職が共通してやるべきことは5つしかない。 逆に言えば、この5つをしっかりやることが前提となる。 4月から管理職になる方からご質問をいただいたので、ここで改めて紹介しておこうと思う。逆に部下にとっては「上司がしっかり仕事しているか?」のチェックリストにも良いだろう。 1.部下の目標設定を手伝う 部下の目標の設定を手伝う。注意すべきは2点。 1点目はあくまで「手伝い」という点である。目標はあくまで自発的なものでなければ、責任感の醸成と、真の意味での目標へのコミットは不可能である。上司は方向性や会社が考える成果のイメージは伝えつつ、目標を決定することはあくまで部下にやってもらわねばならない。 2点目は目標の達成までの期間である。中長期の目標と、短期の目標両方を設定する。会社の経営とは質的に中長期の成果と短期の成果を両方バランスを取って追いかけることであるから、

    すべての管理職が共通してやるべきことは、5つしかない。
    kadoppe
    kadoppe 2015/03/18
  • Prerender Seamlessly Renders JavaScript for Faster Indexing

    Never worry about your web pages being indexed again! Whether you have 100 or 100,000,000 URLs, we solve JavaScript SEO issues without compromising your UX.

    Prerender Seamlessly Renders JavaScript for Faster Indexing
  • 【翻訳】AngularJSからReactへ: Isomorphicな方法 | POSTD

    先週、私たちはWebサイトを検索エンジン向けにインデックス付けできるようにしようとしていました。この記事では、私たちがWebサイトを書き直していて学んだことの要約を紹介したいと思います。 背景 2ヵ月前に RisingStack.com を作成した時、私たちはそのWebサイトでどんなテクノロジを使うか決めなくてはなりませんでした。イベントを追跡する静的なページが数ページあるだけだったので、とても簡単でしたが、私たちはWebサイトをスケーラブルでできるだけ高速なままにしておきたいと考えていました。 私たちのチームは AngularJS の経験が豊富なので、フロントエンドAngularを選ぶのは妥当だと思われました。 この記事はReactAngularJSがどちらか一方より優れている理由について述べているわけではないので注意してください。どちらがいいかは常にユースケース次第です。 “Ang

    【翻訳】AngularJSからReactへ: Isomorphicな方法 | POSTD
    kadoppe
    kadoppe 2015/03/18
  • エウレカ&グッドパッチのデザイナーに聞くワイヤーフレームの作りかた! | Goodpatch Blog

    先日、エウレカさんとグッドパッチのデザイナーで第一回合同勉強会を開催しました。今回のテーマはワイヤーフレームです。この勉強会は、ワークショップを通してナレッジの共有をし合い、個々のデザイナースキルを上げる目的があります。エウレカさんのレポートはこちらです。合わせてご覧ください! 1.ワイヤーフレームを作る意味とは ワイヤーフレームを作る意味についてお話をしてくれたのは、エウレカ原さんです。案件を進めるときにまずすること、ワイヤーフレームはなぜ必要か、ワイヤーフレーム制作で意識するポイントについて解説していただきました。 ワイヤーフレームを書く前に 案件を進めるとき、まずすべきことはプロダクトの目的とゴールの再確認です。 最終的に作っているものの方向性を見失わないようにするために、 何が目的でそれを実装するのか? なんで必要なのか? それを作ることによって何を解決するのか? を考える必要があ

    エウレカ&グッドパッチのデザイナーに聞くワイヤーフレームの作りかた! | Goodpatch Blog
    kadoppe
    kadoppe 2015/03/18
  • Sketch

    Moving from InVision to Sketch? — Join our hands-on session. Save your seat. Moving from InVision to Sketch? — Join our hands-on session. Save your seat.

    Sketch
  • Prott - Prototyping tool for Web iOS Android apps

    コードを書かずに、物のようなアプリを再現できる 簡単3ステップで、動くプロトタイプをすぐに作成できます。Web・iOS・Androidはもちろん、カスタムサイズでもお作りいただけます。 プロトタイプ作成機能 ワイヤーフレーム機能

    Prott - Prototyping tool for Web iOS Android apps
  • Staytus - サービスの状態を可視化するダッシュボード

    Web APIを提供していると、サービス利用者向けにサービスのステータスを表示したいと思うことがあります。定期メンテナンスであったり、障害でサービスが停止している場合も、ユーザに適切に情報発信できる必要があります。 GoogleAppleAmazonなどは行っていますが、Staytusを使えば小さなサービスであっても手軽に実現できるようになります。 Staytusの使い方 StaytusはAPIを使ってステータス更新を自動化したり、手動で変更もできます。サポートの状態を可視化するのは良さそうです。Staytusを別サーバに立てて、監視と一緒に組み合わせて使うと便利そうです。 StaytusはRuby/Ruby on Rails製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。 Welcome - The Widgets Status Site Th

    Staytus - サービスの状態を可視化するダッシュボード
    kadoppe
    kadoppe 2015/03/18
  • Startup Stock Photos

    Startup Stock Photos are free startup, office, and tech stock pictures ready for your next project. Used by millions. Make something awesome. Laptop Work Man https://startupstockphotos.com/terms/ https://startupstockphotos.com/terms/ Man Video Call https://startupstockphotos.com/terms/ https://startupstockphotos.com/terms/ Desk Workspace Objects https://startupstockphotos.com/terms/ https://startu

    Startup Stock Photos
  • 無料でスタートアップ企業っぽい素材写真をゲットできる「Startup Stock Photos」

    キレイに整ったオフィスやミーティングの様子など、いかにもスタイリッシュな「スタートアップ企業」のイメージが漂う素材写真を無料でダウンロードできるサイトが「Startup Stock Photos」です。 Startup Stock Photos http://startupstockphotos.com/ 画像のダウンロードはカンタン。各画像の下部にある「Download」をクリックすると別ウィンドウで画像が開くので、あとはローカルに保存すればOKです。 ブレインストーミングっぽい雰囲気の写真や…… いかにもな雰囲気のデスク周り 会議をちょっと離れたところから眺めた写真 クリーンに整えられたデスク その他にも、いろいろと使えそうな写真がそろっていました。 なお、Startup Stock Photosでは定期的に新しい写真が追加されている様子。ページをスクロールしても全ての写真を確認するこ

    無料でスタートアップ企業っぽい素材写真をゲットできる「Startup Stock Photos」
    kadoppe
    kadoppe 2015/03/18
  • wheelnav.js - spinning ever

    Wheel the Force be with you wheelnav.js brings spinning into your web pages Download Wheel navigation JavaScript library built on SVG It can be tab navigation, pie menu, sub menu and more Examples Include wheelnav.js, add a div, create wheelnav on div It is possible via JavaScript or HTML5 data attributes Documentation

    kadoppe
    kadoppe 2015/03/18
  • iQONのアニメーションの裏側ちょっと紹介します | 株式会社VASILY(ヴァシリー)

    はじめに iQONではアニメーションなどのアプリとしての演出の部分にこだわりを持っています。 突然ですが皆さんiQONでコーディネート画像をタップしたことはありますか? 実際のアニメーションの動き こんな感じでコーディネートに含まれる商品がバラバラと広がって行くアニメーションを実装しています。 今回はこのアニメーションの裏側をAndroidアプリでの実装を例に少しご紹...はじめに iQONではアニメーションなどのアプリとしての演出の部分にこだわりを持っています。 突然ですが皆さんiQONでコーディネート画像をタップしたことはありますか? 実際のアニメーションの動き こんな感じでコーディネートに含まれる商品がバラバラと広がって行くアニメーションを実装しています。 今回はこのアニメーションの裏側をAndroidアプリでの実装を例に少しご紹介させて頂きたいと思います。 まだこの動き

    iQONのアニメーションの裏側ちょっと紹介します | 株式会社VASILY(ヴァシリー)
    kadoppe
    kadoppe 2015/03/18
  • CasperJSでサイトのスマホ画面を連続キャプチャする - Qiita

    はじめに 先日、サイトの特定情報をCSVに出力するスクリプトを書きました。 今回はスマホ(に限らずですが)画面のキャプチャを連続でできるようなJavaScriptを書いてみました。 こんな簡単に実装できるなんてCasperJSはすごい 使い道 スマホ対応しているかどうかざっと画面で確認ができる どのようにスマホ対応しているか(レスポンシブかUAでページ変更しているのか)、スクリプトを一部変更することで簡単に確認ができる PC画面と比較することで、デバイスによる見せ方の違いがすぐに分かる スクリプト上でUAやViewportの変更もできるので、ちょっとした修正で様々なケースに対応できる ファイル構成 root/─┬─capture.js(実行するスクリプト) │ └─files/─┬─img/xxx.png(自動出力) └─src.json(読み込むURLソース) var json = re

    CasperJSでサイトのスマホ画面を連続キャプチャする - Qiita
  • WEB界隈で働く人が重宝しそうな「WEBマーケティング」と「SEO」のチートシート6+2個まとめ。 - おしブロ from STONEWEB

    WEB界隈でよく聞く言葉に「チートシート」というものがあるのですが、これは「cheat(チート) = 騙す、ズルする」という言葉から「ズルするシート」要するに「カンニングペーパー」のことを意味していて、これが転じてWEB界隈ではプログラミング言語やコマンドやショートカットなどを見やすく一覧にまとめてある表のことを指します。 ちなみにこの記事では少し趣向を変えて、WEB界隈で働く人が「これは便利かも」と重宝しそうな「マーケティング」と「SEO」に関するチートシートを集めてみました。 WEBマーケティング関連のチートシート3+2個 大きな意味での「WEBマーケティング」全般に重宝しそうなチートシートを集めてみました。 www.seojapan.com リスティング広告運用チートシート LPO改善チェックリスト チートシートではないけど「これはWEBマーケティングに重宝するかもなー」というチェッ

    WEB界隈で働く人が重宝しそうな「WEBマーケティング」と「SEO」のチートシート6+2個まとめ。 - おしブロ from STONEWEB
    kadoppe
    kadoppe 2015/03/18
  • Elasticsearch 日本語で全文検索 その2

    Elasticsearch では、すでに日語で全文検索する為のトークナイザーやノーマライズなどの加工処理で使用するフィルターなどがビルトインまたは、サードパーティ製のプラグインとして多数存在します。 ここでは、日語全文検索で使用しそうなトークナイザーやフィルターなどを説明します。 主要モジュールNGram Tokenizer N-グラムを提供するトークナイザーです。Elasticsearch にバンドルされています。Japanese (kuromoji) Analysis for Elasticsearch 日形態素解析を提供するプラグインです。各種 Analyzer、Tokenizer、TokenFilterが含まれます。cjk_width Token Filter 半角・全角などを統一するためのフィルターです。Elasticsearch にバンドルされています。Lowercas

    Elasticsearch 日本語で全文検索 その2
    kadoppe
    kadoppe 2015/03/18
  • 必ずできる!― 未来を信じる 「脳の力」 ―

    Go deeper into fascinating topics with original video series from TED

    必ずできる!― 未来を信じる 「脳の力」 ―