タグ

2017年7月11日のブックマーク (10件)

  • GitHub - google/ssl_logger: Decrypts and logs a process's SSL traffic.

    geffner@ubuntu:~$ # Make a local pipe for input to our openssl client geffner@ubuntu:~$ mkfifo pipe geffner@ubuntu:~$ # Create our openssl client, which will receive input from our pipe geffner@ubuntu:~$ openssl s_client -ign_eof -connect example.org:443 > /dev/null 2> /dev/null < pipe & [1] 98954 geffner@ubuntu:~$ # Begin writing the request to our pipe geffner@ubuntu:~$ printf "GET / HTTP/1.0\nH

    GitHub - google/ssl_logger: Decrypts and logs a process's SSL traffic.
  • Digdag 入門 - GMOインターネットグループ グループ研究開発本部

    D. M. です。レガシーの crontab が肥大化して困っています。今日はそのリプレイス候補である Digdag を使ってみた話です。 やりたいこと crontab は Linux のスケジューラの仕組みで定期バッチの実行用途でよく利用されますが低機能です。順序の依存関係やアラートは毎回独自に作りこまなければいけません。そのため近年は代替スケジューラを利用するケースが多いです。その候補のひとつである Digdag について検証したいと思いました。 Digdag を使うべき人 一般的にバッチスケジューラに求められる要件的には以下のようなものがあります。 ・スケジュール実行 ・複数バッチの順番の制御(ワークフロー) ・GUIでの管理 ・失敗時のアラート ・SLA 機能(長時間実行していたらアラートを飛ばす) ・分散実行 などなど 代替として広く知られているものですと Jenkins でのワ

    Digdag 入門 - GMOインターネットグループ グループ研究開発本部
  • 33122

    Google「DeepMind」、コンピュータが人型ベースでB地点にたどり着く最善の方法(柔軟な動き)を独学で生成する強化学習を用いたアプローチを提案した論文を発表 2017-07-11 GoogleAIを研究する子会社「DeepMind」は、強化学習で人型含めシミュレートされた環境の中で複雑で柔軟な動きを生成するアプローチを提案した論文を公開しました。 Emergence of Locomotion Behaviours in Rich Environments(PDF) これら動きは、コンピュータが独学で最善の方法として考案した行動です。 研究者は、エージェントに動きのセットと前進するインセンティブを与え、AからB地点にたどり着く最善の方法を生み出すための強化学習を仕込みます。 コンピュータは、今ある動作を使って試行錯誤を繰り返し、さまざまな動き方を思いつく中で次々と最善へ近づけてい

    33122
  • EmscriptenからSSEとかpthreadを使って爆速にする

    Webでとにかく高速に計算したい やまだです。Webでとにかく高速な計算を行うために人生の何%かを使っています。 前回はJavaScriptから直接SIMD.jsを呼びましたが今回はEmscriptenを使用し、C言語からSIMD命令を呼び出してみます。 題材としては定番ですがマンデルブロ集合を使用します。 マンデルブロ集合は以下の漸化式で計算が可能でしばしば並列演算の課題としてとりあげられます。 z は複素数なので実部と虚部をXY平面に表すと以下のようになります。 Emscriptenを使う 今回はWebでということでC言語のコードをJavaScriptコードにコンパイルするEmscriptenを使用します。 Emscriptenを使用するとasm.jsを利用した最適化をかけることができるため単純にJavaScriptで実装した時よりも高速になることがあります。 Emscriptenでは

    EmscriptenからSSEとかpthreadを使って爆速にする
  • libspecinfra プロジェクトの概要と今後について | Recruit Tech Blog

    Specinfra が持つ機能は元々 Serverspec に内包されていましたが、実行形式やコマンドの違いを抽象化する機能は、Serverspec 以外のツール、特に Puppet や Chef のようなサーバ構成管理ツールを開発する際にも役立つのではないか、という考えから、Serverspec から一部機能を分離する形で Specinfra が生まれました。これにより、Specinfra を利用した Itamae や Serverkit といったサーバ構成管理ツールが開発されています。 Specinfra 登場の背景と課題 Specinfra 登場の背景には、次のような前提があります。 サーバの操作や情報を取得するための方法は、対象が同じであっても、OSやディストリビューションによって異なる。 サーバ操作や情報取得の実行形式は、対象のサーバ内で実行するのか、外から実行するのかによっても

    libspecinfra プロジェクトの概要と今後について | Recruit Tech Blog
  • gebでファイルをダウンロードする - Qiita

    gebでダウンロードしようとしてボタンをクリックしても、ファイル保存ダイアログの「OK」をクリックできないため、ダウンロードできない。 browser.with { go 'https://docs.docker.com/docker-for-mac/install/' def applink = $('a',text:'Get Docker for Mac (Stable)') println "----- ${applink.@href}" applink.click() } DownloadDupport クラスの download() を使う。 The Book Of Geb - Direct Downloading java.net.HttpURLConnection のインスタンスが返るので、 InputStream をそのまま保存すれば良い。 browser.with { g

    gebでファイルをダウンロードする - Qiita
  • CRuby向けのLLVMベースのJITコンパイラを書いている話 - k0kubun's blog

    LLRBというRuby向けのメソッドJITコンパイラを書いている github.com RubyKaigi 2015の最後のキーノートで@evanphxが「LLVMでCRubyのコードをインライン化するメソッドJITを実装したら速いんじゃね」みたいな発表をしていたのを覚えているだろうか。 LLRBというのはまさにそれを実装しているプロジェクトであり、少なくとも現時点で「LLVMでCRubyのコードをインライン化するメソッドJIT」と言える状態まで実装でき、ものによっては効果が出る状態になったので公開した。 なんで書いてるの 言語を自分で実装するとその言語に関する理解が大分深まる、というのをHamlの実装とかCコンパイラとかで体験していて、僕が一番好きな言語はRubyなのでRubyでもそれをやっておきたい、というのがあった。また、Rubyは遅いと言われがちだが、どこに改善可能な点が眠っている

    CRuby向けのLLVMベースのJITコンパイラを書いている話 - k0kubun's blog
  • トランザクション分離レベルの古典的論文 A Critique of ANSI SQL Isolation Levels を読む - Hatena Developer Blog

    こんにちは、 id:alpicola です。今年4月に新卒入社してアプリケーションエンジニアとして働いています。 ウェブアプリケーションはその性質上、データベースに対して同時に大量の問い合わせを行います。そうした中でデータベースが個々の問い合わせを処理していくときに起こっていることは何か、どういう順序で処理が行われるのか、というのは興味深い話題かと思います。例えばデータベースに対して行った更新処理の結果が、更新を行ったクライアント以外のクライアントからも「見える」ようになるのはいつでしょうか。入社間もない頃、先輩エンジニア達にそうした疑問をぶつけてみたところ、「トランザクション分離レベル」というキーワードと、この分野の古典的な論文 A Critique of ANSI SQL Isolation Levels を教えてもらい、輪読会を社内で開催しました。この記事ではこの輪読会の模様をレポー

    トランザクション分離レベルの古典的論文 A Critique of ANSI SQL Isolation Levels を読む - Hatena Developer Blog
  • コーディングに対する考え方を変える6つのプログラミングパラダイム | POSTD

    私は時折、コーディングに対する考え方を変えさせられるような、従来と非常に異なるプログラミング言語に出会います。記事では、その中でも特に気に入っている発見をいくつかご紹介したいと思います。 これは、先賢による「関数型プログラミングは世界を変える!」的な投稿ではありません。記事で挙げるのは、もっと「知る人ぞ知る」的なリストです。多くの読者の方にとって、以下の言語やパラダイムは聞いたことのないものが大半だと思いますので、私が経験したように、これらの新しい概念を学ぶ楽しさを感じていただければ幸いです。 注:私は以下の言語の多くに関して最低限の経験しかありません。その発想に引き込まれたのであって、専門的知識は持ち合わせていないため、訂正すべき点や誤りがあればどうぞご指摘ください。また、記事で取り上げていない新しいパラダイムや概念に出会った方は、ぜひお知らせください。 最新情報:記事が r/p

    コーディングに対する考え方を変える6つのプログラミングパラダイム | POSTD
  • GitLab CI で Docker を使って Rails アプリを CI する - Qiita

    2017-10-25 更新: GitLab Runner 10.0 からインストール手順が変わったので、コマンドを修正しました。 最近 GitLabGitHub を追い越す勢いで進化しています。プライベートリポジトリが無制限に使え、UI も使い勝手が良く、汎用的な CI ツールの GitLab CI まで無料で使えます。おかげで BitBucket は使うことがなくなりました。 今回、Docker コンテナー上で動かす Rails プロジェクトgitlab.com 上で CI することになったので、そのやり方をメモしておきます。 やりたいこと gitlab.com のリポジトリにソースを push したら自動で CI が走るようにしたい Docker 化した Rails アプリを Docker コンテナーのままテストしたい 検証環境 Ubuntu 16.04.2 Xenial 6

    GitLab CI で Docker を使って Rails アプリを CI する - Qiita