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
Rubyで微積分や統計解析を快適に扱うDSL作ったヨ!↓ github バグ報告を頂ければ24時間以内に直します. このDSLで一番大事にしたのは、 微積分や極限、対数や三角関数などを紙上で数学をする感覚と同じ感覚で取り扱える事. わざわざRubyでやる必要、あったの...?(;゜0゜) 僕がこのDSLをRubyで作ったのにはいくつか訳があります. Rubyが好き MATLABが苦手 Rubyが好き mathmaticaが苦手 Rubyが好き pythonが苦手 Rubyが好き ... とにかくRubyが好きです. 少しマジレスすると僕の大好きなRubyは数学色が薄いのが少し悲しかったのです. (蛇足ですが、この想いからrubyのMatrixクラスにシコシコcommit してます. ex. https://github.com/ruby/ruby/pull/568 Matrixを成長させ組
代表取締役社長兼CEO 2011年、株式会社ガイアックスに入社。事業責任者として大手企業を中心にソーシャルリスニング・マーケティングを行う。また、ネット選挙の専門員として、多数のTV出演・講演活動を行う。「facebook 知りたいことがズバッとわかる本(翔泳社)」執筆。 2014年、株式会社フォトシンスを創業、代表取締役社長兼CEOに就任。スマートロックロボットAkerunを主軸としたIoT事業を手掛ける。また世界的ハックイベント「GreenHackathon」(自然環境×IT)を日本で主催している。 [キーレス社会を創造し、世界規模のインパクトとイノベーションを生み出す] 私たちPhotosynthは「Akerun入退室管理システム」を開発・提供しています。 既存のサムターン錠にAkerunProを貼り付けるだけの「完全後付け型スマートロック」として、安価にそして簡単に取り付けることが
何の因果かわかりませんが、お仕事でちょっと賢いリバースプロキシサーバ(以降、RPサーバ)を作る機会が2回ありました。 HTTPヘッダの内容によってプロキシ先のサーバを動的に切り替えるようなものです。 この要件を満たすため、RPサーバには以下のようなプログラムが必要になります。 HTTPヘッダの内容を知るためにHTTPリクエストをパース プロキシ先のサーバへHTTPリクエストをプロキシ プロキシ先のサーバはRedisから取得 レスポンスをクライアントへ返す 大量のリクエストも捌ける 1回目はRubyとI/O多重化のライブラリを使ってイベント駆動型のRPサーバを自作してみました。 が、振り返ってみるとこれは失敗でした。 なぜ失敗だったのか? Rubyでイベント駆動型のサーバを書こうとすると様々なものが途端に大変になります。 イベント駆動型サーバではほとんどの箇所でブロックする処理を書けません。
カヤックさんの新卒研修を読んで telnet と nc -l を使ってwebサーバ/ブラウザごっこをやってみたのですが、1人でやってると役割の切り替えがダルくなってきたので、本当の基礎からのwebアプリケーション入門を見ながらrubyで簡単なwebサーバを作ってみました。 参考 http://www.geekpage.jp/programming/ruby-network/ http://drascal.blog133.fc2.com/blog-entry-219.html v1 TCPクライアントからの接続を受け付けられるようにする require "socket" server = TCPServer.open(8001) while true socket = server.accept while buffer = socket.gets p buffer end socket.c
Ken Mazaikaさんの2015年1月31日付のブログ記事、Why I’m betting on Elixir And why you should too, unless you want to become a maintenance programmer.の翻訳です。 [翻訳] Elixir - 次に来る大物Web言語もそうでしたがなんかRailsのプログラマさんたちがやたらアツく語ってるんですね、Elixirを。 メンテナンスプログラマになりたくなければ1、なんてタイトルからして挑発的です。私の3つ前の仕事はまさにそういう保守系でしたけど。 あんまりアツいんで皆さんとアツさを共有したくて翻訳しました。 なおQiitaのCentOS + Erlang + Elixir + PhoenixのDockerイメージで今日から始めるElixir on Phoenix入門の追記のところでも
デフォルトのpryだと、行実行時に返り値がダンプされると思います。 これは大体の場合に便利ですが、巨大な配列に対してeachを使ったデバッグとかすると、別に見たくない出力で画面が埋めつくされて不便。 そんなときは行末尾に;(semicolon)を付け足してから実行すると返り値のダンプが抑制されます。 [73] pry(main)> (1..100).step(1).to_a.each{|n| warn n if n==100} 100 => [1, 2, 3, 4, 5, : #ダンプ出力があふれてpagerが立ち上がる --------------------- [74] pry(main)> (1..100).step(1).to_a.each{|n| warn n if n==100}; 100 #セミコロンをつけるとダンプ出力がなくなる
このエントリは刻々と変化する RSpec の作法や暗黙のルールに疲れた人むけです。 テストフレームワークとして人気のある RSpec ですが、しばらく使っていると非本質的な話に振り舞わされて疲れることがあります。インターネット上の情報も早いペースで古くなりがちです。こういった事情により RSpec から標準のテストフレームワークに出戻る、あるいは移行するデベロッパが世界中で増えていると聞きます。 移行するといっても、いざコードを書きはじめてから minitest のシンプルすぎる構文に戸惑う人もいるでしょう。そういった人たちのために、なるべく慣れ親しんだテスト構成を標準ライブラリで組む方法を紹介します。 Example Group が恋しくなる RSpec を使っていると example group を使ってテスト対象を細かく絞ったり、対象の状態に応じたテストを書くことがよくあります。そう
AASM - classの状態遷移をスマートに実装するためのgem (Ruby, Active Record, Sequel, Mongoid)RubyRailsActiveRecord AASM - Ruby state machines ここを参考にしました。 https://github.com/aasm/aasm/blob/master/README.md https://github.com/aasm/aasm/blob/master/CHANGELOG.md ※2014年に本記事を投稿してから、細々と継続的にアクセスがあるようです。AASMの仕様は投稿当時と最新版でもそれほど変わっていないようですが、ご利用にあたっては必ず上記GitHubのREADMEとCHANELOGの確認をお願いします。 概要 AASMはRubyのclassに有限オートマトンを追加するライブラリ。2014年
技術部の小野(@taiki45)です。この記事では簡単なアプリケーション(ブログシステム)の実装を通して、クックパッドで作成・使用しているライブラリのGarage の紹介と Garage を使った RESTful Web API の開発をご紹介したいと思います。 Garage は RESTful Web API を開発するための、 Rails gemified plugins です。Rails プログラマは Garage を使って Rails を拡張することで素早く Web API を開発することができます。Garage は新しくアプリケーションを開発する場合にも、既存の Rails アプリケーションに組み込んで Web API を実装する場合でも使用できます。Garage はリソースのシリアライズやアクセスコントロールなど Web API の実装に必要な機能をカバーしています。 Ruby
技術部の高井です。 最近、日本でもマイクロサービスという言葉が流行しつつあります。 今回は、なぜクックパッドがマイクロサービスを選択したのか、また実際にどのようなやり方をしているのかということを紹介します。 Conwayの法則 ここ数年の間、クックパッドはレシピの投稿・検索サービスから「食を中心とした生活のインフラ」として事業領域を拡大しつつあります。海外レシピサービスの買収による海外展開は、単なる金銭的な関係にとどまらず、人的・技術的な交流も含めて本格化しつつあります。また、「モバイルファースト」を標語とするモバイルアプリケーションへの取り組みも加速してきました。 事業領域の拡大やグローバル展開、モバイルファーストといったビジネス要求の変化に応じて、会社の組織構造も変化しています。そして、Conwayの法則 として知られているように、組織構造とソフトウェアアーキテクチャには密接な関係があ
A radically new Ruby web server Phusion Passenger 5 (codename "Raptor") The wait is over Phusion Passenger 5 is a brand new version, faster than ever. Many of you have been waiting for this for a month. We have worked hard to reach this day and we are grateful for all the support and encouragement you've given us so far. Read the release announcement Or visit the Phusion Passenger website Tweet Fo
はじめに みなさん、2014-08-14 26:00 みたいな時間を扱おうとして困ってませんか? 文字として保存するだけならまだしも、これを元に現在時刻と比較して・・・とかやろうとすると色々大変です。 この記事ではそんな24時間超えの時間を楽ちんに扱うことができる Chronic という gem を紹介します。 そもそも何が困るのか Ruby の time ライブラリには大変便利な Time.parse メソッドがあります。 が、困ったことにこいつは 26:00 みたいな時間は理解してくれません。 irb で実行してみると以下の様なエラーがでます。 >> Time.parse('2014-08-14 26:00') ArgumentError: argument out of range 日付は 2014-02-31 とかでも良きに計らってくれるのに、時間はすごくきっちりしています。 24
インフラストラクチャー部の成田(@mirakui)です。 Rails の OR マッパーである ActiveRecord ですが、みなさんどのように運用していますか? ActiveRecord を使うと、 SQL を直接扱うことなく、抽象化された表現で RDB にアクセスできるので、アプリケーションの開発効率という観点ではメリットが大きいです。 一方で、 ActiveRecord が駆使されているアプリケーションをサーバに配置してプロダクションとして運用する立場からすると、いくつかの問題に突き当たります。 まずはクックパッド本体アプリケーションにおける、最新の rake stats をご覧ください。 +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC
source "https://rubygems.org" gem "faraday" gem "faraday_middleware" gem "hashie" #!/usr/bin/env ruby # coding : utf-8 require 'faraday' require 'faraday_middleware' require 'pry' class Feedy attr_accessor :feeds, :entries def initialize @conn = Faraday.new(url: 'https://cloud.feedly.com') do |faraday| faraday.request :json faraday.adapter Faraday.default_adapter faraday.use FaradayMiddleware::Mas
HTTPリクエストでJSONが返ってくるAPIを処理するとかよくあるケースだけど、意外と書き方忘れるのでメモ require 'net/http' require 'uri' require 'json' uri = URI.parse('http://www.example.com/sample.json') json = Net::HTTP.get(uri) result = JSON.parse(json) puts result require 'net/http' require 'uri' require 'json' def get_json(location, limit = 10) raise ArgumentError, 'too many HTTP redirects' if limit == 0 uri = URI.parse(location) begin res
このウェブサイトは販売用です! twiwt.org は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、twiwt.orgが全てとなります。あなたがお探しの内容が見つかることを願っています!
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く