- Slide
- 2020-04-17 型プロファイラ:抽象解釈に基づくRuby 3の静的解析
- 2020-04-17 Ruby3 is a typed language (soutaro)
- 2020-04-17 Ruby 3の型推論やってます (mame)
- 2019-11-20 A Static Type Analyzer of Untyped Ruby Code for Ruby 3 (mame)
- 2019-11-03 型なし言語のための型 (soutaro)
- 2019-08-31 An introduction to typed Ruby programming (soutaro)
- Talk
- 2019-04-20 The challenges behind Ruby type checking (soutaro, RubyKaigi 2019)
- 2019-04-18 [The Year of Concurrency](https://www.youtube.com/watch?v=W
p.vi
コンピューティングはポップカルチャーです。(...)ポップカルチャーは、歴史を重んじ ません。ポップカルチャーは、アイデンティティと当事者意識に他なりません。それは他者との協力や過去、未来とは関係なく、今を生きることです。
めっちゃいい
p.xii
- なぜこの本を書いた?
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Classes are from https://docs.ruby-lang.org/ja/2.6.0/library/_builtin.html | |
classes = [ | |
BasicObject, | |
Object, | |
Array, | |
Binding, | |
ConditionVariable, | |
Data, | |
Dir, | |
Encoding, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### Inspect where a method is called | |
def foo(x, y) | |
p caller # Kernel#caller | |
# ... | |
end | |
### Inspect where a method is defined | |
# Where is obj.foo defined? | |
p obj.method(:foo).source_location # Method#source_location |
- Sam Newman - Backends For Frontends
- マイクロサービスの思想から捉える Backends for Frontendsとその類似パターン
- BFF's cosmos in FOLIO sec at uit
- BFF(Backends For Frontends)超入門――Netflix、Twitter、リクルートテクノロジーズが採用する理由 (1/2):マイクロサービス/API時代のフロントエンド開発(1) - @IT
- BFF(Backends For Frontends)の5つの便利なユースケース:マイクロサービス/API時代のフロントエンド開発(2) - @IT
- BFF @ SoundCloud | ThoughtWorks
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def answer?(str) | |
filtered = str.split('').keep_if{|s| s.match(/[a-zA-Z0-9-]/)} | |
if filtered && filtered.count == filtered.uniq.count | |
return true | |
end | |
false | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
iunmap <C-p> | |
iunmap <C-k> | |
map <C-f> scrollFullPageDown | |
map <C-b> scrollFullPageUp | |
let hintcharacters="asdfghjklerui" | |
let typelinkhintsdelay="50" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10.upto(63) do |i| | |
10.upto(63) do |k| | |
IO.write( | |
i.to_s + k.to_s + ".jpg", | |
open('./hoge.jpg').read.force_encoding('ascii-8bit').gsub(i.to_s, k.to_s) | |
) | |
end | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env ruby | |
require 'benchmark' | |
class Array | |
def quick_sort | |
return self if self.length <= 1 | |
pivot = pop | |
left, right = partition { |e| e < pivot } | |
push pivot |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
times in msec | |
clock self+sourced self: sourced script | |
clock elapsed: other lines | |
000.006 000.006: --- VIM STARTING --- | |
000.072 000.066: Allocated generic buffers | |
001.034 000.962: locale set | |
001.039 000.005: clipboard setup |
NewerOlder