タグ

balmychanのブックマーク (491)

  • モナドの六つの系統[Functor x Functor] - モナドとわたしとコモナド

    モナドは「アクション」を表す抽象的な構造である。モナドは、Haskellにさまざまな概念に対する記述能力をもたらす。 モナドの基礎 return :: a -> m a: 純粋な値をモナドで包む。 m >>= f :: m a -> (a -> m b) -> m b: モナドmに包まれた値をfに渡し、その結果として現れたモナドを結合する。 固有アクション: それぞれのモナドに固有の方法でモナドを生み出す。 実行: モナドに包まれた値を、より根源的な形に還元する。 モナド則 モナドに以下の三つの制約を課すことによって、最低限度の記述能力を保証している。 return a >>= k == k a m >>= return == m m >>= (\x -> k x >>= h) == (m >>= k) >>= h より強い制約は、より強い力を生み出す。 モナドの分類 モナドは、以下の6つ

    モナドの六つの系統[Functor x Functor] - モナドとわたしとコモナド
  • WEBアクセス解析ツールMixpanelが簡単なのに凄い。

    Mixpanel Mixpanelは、Google Analyticsと同じく、WEBサイトのアクセス解析ツールです。しかしツールの性質は、Google Analyticsとは大きく違います。Google AnalyticsがWEBサイトのあらゆるアクセスをガンガン突っ込んで大量のデータをなんやかんやしようとするのに対して、Mixpanelは比較的数の少ない特定のイベントなどに絞って使います。 全部を丸ごと見ようとするのではなく、特定の一部分をとにかく詳しく解析しよう、というイメージです。 導入はものすごく簡単 登録は名前とメールアドレスとパスワードだけ。簡単です。 Google Analytics同様に、JavaScriptが発行されるので、自分のサイトに埋め込みます。JavaScriptなので、トークンが見えてしまっていて、自分以外の人でも解析データ投げ込めるような気がします。 (fu

    WEBアクセス解析ツールMixpanelが簡単なのに凄い。
  • Railsで非同期処理:キュー。Sidekiq(+ActiveJob)がResqueよりも、とても簡単便利。 - Qiita

    Railsで非同期処理:キュー。Sidekiq(+ActiveJob)がResqueよりも、とても簡単便利。RubyRailsResquesidekiqActiveJob メール送信や、重い処理、バッチなどでキューイングってよくやると思うんですが、Rubyではそれらを簡単に実現できるライブラリがいくつかあります。有名所だと、Sidekiq / Resque / Delayed Jobとか。僕はSidekiq / Resqueこの2つを使ったことがあるんですが…最近ではSidekiqの方が設定も簡単で使いやすかったので、Sidekiqにまつわる設定などもろもろまとめておきます。 ActiveJobについて Rails4.2からActiveJobというキュー操作のフレームワークが導入されました。これを使用することで、書き方が統一されるため、バックグラウンドのキューライブラリがSidekiqだろ

    Railsで非同期処理:キュー。Sidekiq(+ActiveJob)がResqueよりも、とても簡単便利。 - Qiita
  • sidekiqの使い方 - Qiita

    sidekiqはresqueやdelayed_jobのような非同期実行を実現するgemです。 使い方はgithubのwikiかRAILSCASTSあたりを見れば分かりますが、Railsで使う場合について簡単に要約してみます。 準備 バックエンドにredisが必要です。 とりあえず試すのであれば、Macならbrew install redisでインストールされます。 番ではwebサーバと別にredisサーバを用意するべきでしょう。 インストール 通常通りGemfileに書いてbundle installするだけです。

    sidekiqの使い方 - Qiita
  • RDBからの脱却: 新ERP"HUE"におけるCassandra

    2015/04/21に行われたCassandra Summit Tokyo, 2015でのスライドです。 http://cassandrajp.connpass.com/event/12041/Read less

    RDBからの脱却: 新ERP"HUE"におけるCassandra
  • 承認済みのアクセスの仕組み - Google Workspace 管理者 ヘルプ

    重要: 2016 年 10 月 20 日をもって、OAuth 1.0 2LO は完全にサポートを終了しました。新しい規格に移行するには、ドメイン全体へのアクセス権を委任されている OAuth 2.0 のサービス アカウントを使用するのが最も簡単です。 ユーザーが Google Workspace Marketplace からアプリケーションをインストールすると、アプリケーションの利用規約への同意と、Google サービスのデータへのアプリケーションによるアクセス許可を求めるページが表示されます。ユーザーがアクセスを許可すると、3-legged OAuth アクセス トークンで記録されます。承認済みのアクセスが Google Workspace でどのように機能するかについて詳しくは、Google Workspace で 3-legged OAuth が動作する仕組みを示した図をご覧ください

  • websocket-rails: standaloneモードのサーバでSSL通信 - Qiita

    動作環境 rails 4.1.0 websocket-rails 0.7.0 websocket-railsを使ったところ、SSLのところでつまずいたのですがあまり情報もなかったのでメモしておきます。 githubのwikiに記載されているように、PassengerでRailsアプリを起動している場合には、Railsアプリとは別にサーバを起動する必要があります。 Standalone server mode しかし、websocketを利用しているページのプロトコルがhttpsの場合、websocketのプロトコルもSSL通信にする必要があります。 仮に、websocketを利用しているページのURL(ここではhttps://example.com/dashboardとする)にアクセスした場合、次のようなエラーが出力されます。

    websocket-rails: standaloneモードのサーバでSSL通信 - Qiita
  • websocket-railsで簡単なPush通知を実装する - Qiita

    websocket-railsを使ってRailsでWebSocketによるPush通知を実装する話をします。 websocket-railsを使って簡単なデモを作ってHerokuにアップしました。Twitter Streaming APIで受け取ったデータをWebSocketでリアルタイムにクライアントへ送るものです。ソースコードもgithubにありますので参考にどうぞ。 セットアップ

    websocket-railsで簡単なPush通知を実装する - Qiita
  • Rails4をproduction環境で動かした際に、application.cssとかapplication.jsがうごかなかったので、対処の仕方まとめ。 - Qiita

    Rails4をproduction環境で動かした際に、application.cssとかapplication.jsがうごかなかったので、対処の仕方まとめ。 bundle exec db:create RAILS_ENV=production bundle exec db:migrate RAILS_ENV=production bundle exec unicorn_rails -D -c config/unicorn.rb -E production をやる。 画像とcssとjsが読み込まれない。(logchromeのconsoleを見て) つまり、アセットパイプラインが動いていないので、 config/environments/production.rb で config.serve_static_assets = true これで、画像は、表示されるようになった 次に、 アセット

    Rails4をproduction環境で動かした際に、application.cssとかapplication.jsがうごかなかったので、対処の仕方まとめ。 - Qiita
  • capistrano3 を使ってデプロイしていてrepo_urlを変更する - 平常運転

    追記 2015 03/25 14:20頃に末尾に追記しました 表題の通り。capistrano3でデプロイするとき、リポジトリのurlはconfig/deploy.rbにこういう感じで書くと思う。 set :scm, :git set :repo_url, 'git@github.com:MYNAME/MYPROJECT.git' ここで、リポジトリサーバの引っ越しとかで後からrepo_urlを変更したくなったとする。というかしたくなった。 set :repo_url, 'git@myGitServer:MYNAME/MYPROJECT.git' この時、普通にrepo_urlを書き換えるだけではダメだったのと、とりあえずそれをなんとかするためにcapのタスクを書いた話をする。capistrano詳しい人がいたらもうちょっとよい解決策教えてください。 repo_urlを書き換えるだけではダ

    capistrano3 を使ってデプロイしていてrepo_urlを変更する - 平常運転
  • Rails on DockerをElastic Beanstalkにデプロイする | DevelopersIO

    AWSアップデート祭りを横目に、認定デベロッパー目指して一人Elastic Beanstalkをあれこれ触っている、八幡です。 個人的な趣味もあり、AWSのサービスについて学ぶときはRubyRailsを媒介者とすることが多いのですが、今回Elastic Beanstalkに"Rails on Docker"をデプロイしてみましたのでその手順をご紹介します。 構成 Elastic BeanstalkはRDS有りのシングルインスタンス環境です。 RailsアプリはRuby on Rails チュートリアルのサンプルアプリを使いました。(動かしたのはDevelopment環境です。) Elastic BeanstalkにRails on Dockerをデプロイするやり方は幾通りか考えられるかと思いますが、今回はRailsアプリのソース、Dockerfile、Dockerrun.aws.json

    Rails on DockerをElastic Beanstalkにデプロイする | DevelopersIO
    balmychan
    balmychan 2015/09/03
  • RDSで日本語が文字化けする問題 - Qiita

    RDSではDefaultでcharacter-setにlatin1が割り当てられる為、日語を利用する際はutf8などに変更してあげる必要がある。 Step1 RDSダッシュボードの左メニューからParameter Groupsを選択する。 Create DB Parameter Groupを選択し、 DB Parameter Group Family DB Parameter Group Name DB Parameter Group Description をそれぞれ選択し、設定を行うDBの種類、パラメータグループの名前と説明を入力し、"Yes, Create"で作成 Step2 パラメータグループが出来たことを確認したら、作成したグループの詳細ページからEdit Parametersを選択し、 character_set_client character_set_connection

    RDSで日本語が文字化けする問題 - Qiita
  • rbenv を利用した Ruby 環境の構築 | DevelopersIO

    こんにちは、クラスメソッドの稲毛です。 複数バージョンの Ruby を切り替えるだけでなく、ローカルディレクトリ毎に Ruby のバージョンを指定できる「 rbenv 」がとても便利だったので、インストール方法などを記しておきます。 ビルド環境の構築 Ruby をビルドする環境が構築されていない場合は、下記 ruby-build の Wiki を参考にビルド環境を構築する。 Suggested build environment rbenv + ruby-build のインストール rbenv で Ruby のインストールを行うので rbenv のプラグイン「 ruby-build 」を併せてインストールする。 Linux の場合 ここでは既に Git がインストールされているものとします。 $ git clone https://github.com/sstephenson/rbenv.

    rbenv を利用した Ruby 環境の構築 | DevelopersIO
  • Ansibleの基礎 - Qiita

    CentOS6での利用方法 CentOS(ホスト) -> CentOS(リモート側) 予備知識 AnsibleはSSHでリモート側にログインしてコマンド類を叩く設計になっています。 そのため、リモート側でSSHログインができるようにしておきましょう。 (念のため、ログインするユーザと、コマンドを実行するユーザを別にすることも可能です) インストール rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm yum install ansible -y 実行確認 アクセス先のホストは192.168.1.20、アクセスユーザはrasennとします。 鍵認証でアクセスするなら(パスワードなしsshができれば)--ask-pass --ask-sudo-passは必要なく、パスワード

    Ansibleの基礎 - Qiita
  • Ansibleのドキュメントを読んでみたメモ - Qiita

    少しくらいAnsibleを使ってみようと思ってブログや公式ドキュメントを読んでみたのでメモ。 参考にした主なものは以下のリンク。 Ansibleとは?みたいないのはリンクを読むとよくわかった。 Ansibleの公式ドキュメント http://docs.ansible.com/index.html Playbookのサンプル https://github.com/ansible/ansible-examples Ansibleの概要を知るのにとてもよかった。 http://apatheia.info/blog/2013/04/06/about-ansible/ 構成 ChefとかPuppetとは違ってこちらはAnsibleから対象のサーバに接続していく感じ。 対象のサーバにはとくにエージェントとかはいらない。 インストール ほとんどパッケージ管理とかでいけるのでとても簡単。 Via Pip

    Ansibleのドキュメントを読んでみたメモ - Qiita
  • Ansibleを使い出す前に押さえておきたかったディレクトリ構成のベストプラクティス - 双六工場日誌

    Ansibleのディレクトリ構成を決める際、プロダクション環境、ステージング環境、開発環境といった環境ごとに異なる設定を変更する方法でしっくり来るものを思いつかず、どうしたものかと悩んでいたのですが、今日見つけたブログ記事でそれもスッキリ解消したのでメモっておきます。 結論 まず結論を。プロダクション環境、ステージング環境、開発環境といった環境ごとに異なる設定する場合は、以下のように対応するのが良さそうです。 ディレクトリ構成は、公式ドキュメントに従う。 Best Practices — Ansible Documentation プロダクション、ステージング、開発など、ステージごとの変数切替は以下のブログを参考に、"group_vars"を利用して行う。 インベントリファイルの中に、"[production:children]"のようなグループすべてが属するグループを作ってしまい、そのグ

    Ansibleを使い出す前に押さえておきたかったディレクトリ構成のベストプラクティス - 双六工場日誌
    balmychan
    balmychan 2015/09/01
  • 構成管理ツール Ansibleを使ってみる | DevelopersIO

    構成管理ツールといえばChefですが 弊社ブログでも構成管理ツールに関する記事はけっこうありますが、ほとんどがChefに関する記事です。 私もChefについてを書いてたりしますが、Rubyが苦手な自分としては、Chefのレシピを書いたりするのは難しいわけです。 (こういう記事もありますが) で、Chefのかわりに使えそうな構成管理ツールを探して、これならいけるんじゃないかと思ったのが、今回紹介するAnsibleです。 Ansibleとは Ansibleとは、Pythonで記述された構成管理ツールです。 まずはAnsibleの基用語について解説します。 ・モジュール クライアント内での動きは「モジュール」として定義されます。 ソフトウェアをインストールしたり、サービスの起動をしたりするモジュールはあらかじめ用意されてます。 自分でモジュールを作成することも可能です。 このモジュールは何で作

    構成管理ツール Ansibleを使ってみる | DevelopersIO
  • Web APIからSignalRへの連携 - xin9le.net

    One ASP.NET Advent Calendar 2013も17日目になりました。すでに3度目の登場です、@xin9leです。ASP.NET/IISのMVPさんよりも多く登場していて場違い感を多少なり感じておりますが、今回も飽き足らずSignalRのネタで攻めます。ご了承ください。 最近の体験談 ここ半年、業務でWPF + SignalR + Web APIな社内システム作りをしていました。その一部で以下のような動きをしている箇所があります。 Web API経由でデータベースのテーブルに新規追加/変更/削除を行う そのテーブルの内容をリアルタイムにモニタリングする リアルタイムにレコードの変更通知をしようと思ったら、Web APIへのアクセスがあったタイミングでSignalRサービスを呼び出す必要があります。しかしそこは流石のOne ASP.NET。Web APIとSignalRの連

  • AngularJS UI Router - change url without reloading state

  • ライセンスの選択を恐れる必要はありません - Qiita

    (訳註: この「はじめに」及び末尾の「訳者による補足」の章は原文にはなく、翻訳者(@tadsan)によるものです。記事の著作権表示及び元Webサイトの利用規約、免責事項、そしてこの記事についての訳者の見解について記します) (この記事の一部または全て ——ただしコメント欄は含まれない—— はCC BY-SA 3.0に則る限り、自由に利用することができます。翻訳と「はじめに」「訳註」については独自の著作権は主張しません。 改竄しても二次利用は独自の責任にて行ってください。) Please consult a legal expert before adopting a software license for your project. This site is licensed under the Creative Commons Attribution 3.0 Unported Lice

    ライセンスの選択を恐れる必要はありません - Qiita