Skip to content

Instantly share code, notes, and snippets.

@tetu1225
tetu1225 / app.rb
Created July 18, 2011 06:00
Sinatraで画像ファイルをアップロードして表示する
require 'sinatra'
require 'haml'
# 静的コンテンツ参照のためのパス設定
set :public, File.dirname(__FILE__) + '/public'
# アップロード
get '/' do
haml :index
@methane
methane / gist:4748822
Created February 10, 2013 07:45
GOMAXPROCSについてのメモ
gogoutineてGOMAXPROCSを設定しない限りはシングルスレッドなんですねえ。
GOMAXPROCSはもうちょっとだけ複雑です。
同時に動けるgoroutineの数の制限なのですが、
read などのブロックするかもしれないシステムコールを発行する場合、発行前に「現在実行中のゴルーチン数」をデクリメントして、
システムコールから返ってきたらそれをインクリメントします。
で、デクリメントした時に、他に動けるスレッドがいなかったらスレッド起動して、他のgoroutineが動けるようにします。
他のスレッドがすでにあって眠っていたら、それを起こしてgoroutineを実行させます。
なので、ブロックする処理としない処理を混ぜてもいい感じに動くのです。
で、その、スレッドを作ったり起動したりするのが実はちょっとだけ重いので、ベンチマーク結果を良くするためにはその処理が走らないように、
@azu
azu / flux-utils.md
Last active August 8, 2018 17:31
flux-utilsについて
@r7kamura
r7kamura / composition-on-ruby.md
Last active April 18, 2018 07:45
Composition on Ruby

Composition

組立、組織、合成。 複数の部品を組み合わせ、単に部品を集合させた以上の効果を生み出す。 個々の部品をシンプルに保つことで、構成されたオブジェクト自身をシンプルに保つことができ、 各部品は理解・再利用・テストしやすくなることが期待される。 反面、全体としてアプリケーションの複雑性は増すこととなる。

  • 音楽は複数の旋律の組み合わせから構成される。
  • 自転車は複数の部品の組み合わせから構成される。
@sbusso
sbusso / Gemfile
Created April 27, 2012 01:58
Super simple CMS with Rails Admin
# Add the gem
gem 'rails_admin'
@repeatedly
repeatedly / about_td_agent2.md
Last active November 16, 2016 02:11
td-agent2について

rpmで問題が起きたのでまとめておく.あと英語で書くと日本の人が読んでくれないのでまず日本語で…

なぜパッケージを分けているのか

非互換のある変更が単なるアップデートで入るのを防ぐため

現在のtd-agentは1.1.19だが,2.0.0と1.2.0があった場合,yum updateでは2.0.0が入ってしまう.これでは,Rubyのバージョンが変わった場合などはgemの再インストールが必要で,単なるアップデートでは起動出来なくなるという問題がある(chefとか使っていれば多分防ぐことは出来るが強制することは出来ない).

Rubyのバージョンアップと依存ライブラリのバージョンアップを分けることが出来ない

@tkuchiki
tkuchiki / diff.md
Last active October 24, 2016 09:32
diff コマンドで差分があったら exit status のみを返す

cmp を使ったほうが楽

$ cmp file1 file2 -s
$ echo $?
1

cmp で差分があったら exit status 0 を返す

@seka
seka / ScrollViewController.swift
Last active August 16, 2016 00:56
views infinite scrolling - 擬似的な無限スクロールを実装
//
// ScrollViewController.swift
// ScrollView
//
// Created by PxP_ss on 2014/10/08.
// Copyright (c) 2014年 pxp_ss. All rights reserved.
//
import UIKit
@istana
istana / Gemfile
Created February 24, 2015 22:20
minitest with DatabaseCleaner transactions, elasticsearch
gem 'minitest'
gem 'minitest-rails'
group :development, :test do
# run when something change
gem 'guard'
gem 'guard-livereload'
# gem 'guard-rails_best_practices'
gem 'guard-minitest'
package Result::User {
use strict;
use warnings;
use utf8;
sub new { bless {}, shift }
sub to_model {
my $self = shift;
Model::User->new(user => $self);