一人一つはあったほうがいいもの
- meishi キット https://yushakobo.jp/shop/meishi/
- スイッチ、キーキャップつきを選ぶと必要なものが全部そろいます
- なしを選んだ場合、スイッチとキーキャップを自分で選んでください
- はんだごて
- 今後を考えると温度調節機能付きを選びましょう
- 定番は Hakko FX600 https://amzn.to/2XnHGmq です
- コテ台
- 置いたときに転倒したりしない安定しないやつを選びましょう
while !$mutex | |
relinquish | |
end | |
kbd = Keyboard.new | |
kbd.split = true | |
kbd.init_pins( | |
[ 27, 26, 22, 20 ], |
irb(main):019:0> "%f" % 195 | |
=> "195.000000" | |
irb(main):020:0> "%x" % 195 | |
=> "c3" | |
irb(main):021:0> "\u00c3" | |
=> "Ã" | |
irb(main):022:0> "\u00c3".bytes | |
=> [195, 131] | |
irb(main):023:0> "%x" % 161 | |
=> "a1" |
$ ruby -e 'require "json"; puts JSON.load(ARGF.read).each {|item| item === Hash ? item.map {|k,v| [k.to_s, v]}.to_h : item }.to_json' ~/Downloads/keyboard-layout.json |
def feature(name, &block) | |
class_name = name.split.map(&:capitize).join | |
klass = Class.new(ApplicationSystemTestCase) | |
klass.class_eavl do | |
alias_method :secnario, :test | |
yield | |
end | |
end |
csv_text = (0..10).map { (?a..?z).to_a.join(',') }.join("\n") | |
require 'benchmark' | |
Benchmark.bmbm(10){|x| | |
x.report("parse csv"){ | |
100.times{ | |
CSV.parse(csv_text) | |
} | |
} | |
} |
Ruby でプログラマをやってます。最近は、フルスクラッチで Rails アプリの作成をやってます。
{ | |
"global": { | |
"check_for_updates_on_startup": true, | |
"show_in_menu_bar": true, | |
"show_profile_name_in_menu_bar": false | |
}, | |
"profiles": [ | |
{ | |
"complex_modifications": { | |
"rules": [ |
module Animal | |
def define_animal_methods | |
define_method :name do |&block| | |
puts 'animal_name' | |
block.call if block | |
end | |
# define_methodが続く... | |
end | |
end |