2015/05/13 ヤフー社内「中級 iOS アプリ開発者」向けに行った講義の資料。Read less
Kyle Drake discusses the transition from event-driven architectures like EventMachine to a more effective model using Celluloid, which combines threaded and reactor patterns for Ruby applications. He critiques EventMachine for its limitations and complexity, promoting the actor model as a more efficient alternative for handling concurrency. The document also highlights the potential for distribute
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
(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 の続き。
こんにちは!エンジニアの川崎です。 先週行われた Consumer Service Engineer MeetUp Vol.1 ~iOS編~ というイベントで「WantedlyではどうやってiOSアプリ開発しているのか」というテーマで発表してきました。 僕自身の普段の担当は、全体の設計やサーバ側の開発、プロジェクト進行あたりなので、 今回はWantedlyでiOSアプリを「プロトタイピング」し「開発」そして「テスト」するまでで使ってるツール・取り組みをざっくり紹介させていただきました。 意外とこの手の話をする機会はいままでなかったので、 現在開発中のアプリも含め、今現在うちでは何をどうやっているのかまとめられてよかったかなと思います。 以下、発表で紹介したURLなどです。 プロトタイピング ホワイトボードでアイデアだし moqupsでモックアップ作成 Popを使って実機でプロトタイプを触っ
http://yoshinorimatsunobu.blogspot.jp/2014/03/why-buffered-writes-are-sometimes.html 1 comment | 0 points | by noto ■ comment by noto | 約4時間前 MySQL の専門家として著名な松信さんのブログなのですでに読んだ方も多いかと思いますが、自分も読んでみたので日本語でサマリを紹介します。実は一番最後に SUMMARY というセクションがあってそこにまとまっているので、そこだけを紹介するかたちです。本文はサンプルコードを使った説明になっていてよりわかりやすいので、ぜひ本文を読んでみてください。 質問: なぜバッファを利用した write() が時々待たされるのか? 単にカーネルバッファに書き込んでいるだけで、disk にはアクセスしていないのでは。 答え:
以下の記事が面白かった。inodeが枯渇するとどうなるのかということなんだが。 http://d.hatena.ne.jp/elf/20111113/1321177077 Ext2/3/4はディスクをフォーマットした時点でinode最大数が固定されてしまう。 一方でbtrfsはinodeを動的に確保できるのでフォーマットした時点では固定されない。 ではどの程度の違いがでるのかが気になるところ。 上記の記事をもとに実験をしてみた。 実験のために10MBの空ファイルをext4/btrfsでフォーマットし、ループバックを利用してマウントする。これで10MBのディスクを仮想的に実現できる。 root@ochimina:~# dd if=/dev/zero of=$PWD/dummy.ext4 bs=1M count=10 10+0 records in 10+0 records out 10485
Guard オブジェクト Perl だと Guard オブジェクトとかいうハックがあって、スコープを出るタイミングで必ず呼ばれるファイナライザを使って、あるスコープでだけ有効な処理を書けたりします。 例えば、DB のトランザクションや、あるいは以下のように依存するプロセスをあるスコープでだけ起動して終了するような用途で使われています。 { my $guard = Proc::Guard->new(command => [ "memcached", "-p", "12321" ]); # do something ... }; # memcached has been killed 適当なメソッドにブロック(サブルーチン)を渡せばええやん、という気もしますし、実際 Ruby の transaction の場合そういう感じになります (Perl でももちろん同じようなサブルーチンを書くことはで
Sassをブラウザ上でCSSにリアルタイム変換するWebサービスです。Compassに対応しています。ちょっとしたWebページ作成やScssの練習、環境が用意できない時にお使いください。 @charset"utf-8" /*****************/ /*contentssass*/ /*****************/ a color: #08c header padding: 35px30px10px border-bottom: solid1px#666 background: #333 color: #efefef h1 padding: 0px0px0px font-size: 120% line-height: 100% p.description font-size: 75% ul#breadcrumb display: block padding: 0px30px
ブロックを渡すようなメソッドは、Procオブジェクトを引数として渡すことも出来ます。 普通にブロックを渡すとこんな感じ。 hoge = %w(foo bar piyo) hoge.each do |val| puts val end これをProcオブジェクトを引数として渡すとこんな感じになります。 hoge = %w(foo bar piyo) block = Proc.new {|val| puts val } hoge.each &block Procオブジェクトを格納した変数を引数として渡す時に、先頭に「&」をつけると、渡すことができます。 これだけだと、あんまり利用価値が無さそうに思いますが、応用するとかなり便利です。 シンボルの先頭に「&」をつける 引数の先頭に「&」をつけると、Procオブジェクト以外の場合は渡ってきた値に対して「to_proc」メソッドを呼び出した結果が実行
概要 Ghostableでゴーストメソッドを少しだけ楽に作成 内容 ゴーストメソッドの定義を支援するモジュール=Ghostableを作成します。 今回想定するのはあるパターンの文字列を持つメソッド名のみゴーストメソッドとして扱います。 通常のゴーストメソッド ソースコード # encoding: utf-8 module Lawable def method_missing(method_name, *args, &block) lawnized_call method_name.to_s if method_name.to_s.include?("呼ぶ") end def lawnized_call(name) puts "create new method = #{name}" singleton_class.class_eval do define_method name do na
比較的新しいカーネルを採用したLinuxディストリビューションでは、ファイルシステムのI/Oバリア (I/O barrier)機能がデフォルトで有効になっています。例えばRedhat Enterprise Linux (RHEL) 6やSUSE Linux Enterprise Server (SLES) 11等はインストール直後の状態でext4ファイルシステムのI/Oバリアが有効になっているようです。 I/Oバリアは簡単にいうと、「バリア命令」の後で発行されたI/Oは、バリア命令の前に発行されたI/Oの後に必ず実行されるようにする仕組みです。つまりI/Oの順序(物理ディスクに反映される順番)をまもらせる仕組みといえます。 ファイルシステムにI/Oバリア機能が追加されたのは、ファイルシステムが不整合な状態になる可能性を減らすためです。 そもそも、急な電源断でもファイルシステムの不整合が起こ
以前、書いた記事(最近投げたpull requestとかソーシャルコーディングとかリファクタリング )の反響が若干あったので、RubyMotionTokyo meetupの宣伝も兼ねて発表してきた。 ibをリファクタリングして、tsort依存関係解決の機能を導入したという話。 tsortの使い方の話は一切してなかったのですけど、公式ドキュメントの通り使うとすげー簡単に使えます。 http://doc.ruby-lang.org/ja/2.0.0/class/TSort.html require 'tsort' class Hash include TSort alias tsort_each_node each_key def tsort_each_child(node, &block) fetch(node).each(&block) end end {1=>[2], 2=>[3, 4]
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く