AtCoder始めた
競技プログラミング、BiginnerContestの過去問解くところから。 まずは問題に慣れたい。
if文を?だけで書く技法
n = gets.to_i printf("d\n", (n<100?0:n<=5000?n*10:n<=30000?(n+50000):n<=70000?((n-30000)/5+80000):89000)/1000)
桁埋めとかちゃんとやったはずなのに、忘れてた(´・ω・`)
puts "d"%s
Rubyでつくる人工無能(前半)
恋するプログラム―Rubyでつくる人工無脳 (プレミアムブックス版)
- 作者: 秋山智俊
- 出版社/メーカー: マイナビ出版
- 発売日: 2016/11/28
- メディア: 単行本
- この商品を含むブログを見る
class Responder def initialize(name) @name = name end def response(input) "#{input}ってなに" end def name @name end end class Unmo def initialize(name) @name = name @responder = Responder.new('What') end def dialogue(input) @responder.response(input) end def responder_name @responder.name end def name @name end end def prompt(unmo) unmo.name + ':' + unmo.responder_name + '> ' end puts('Unmo System Prototype : proto') proto = Unmo.new('proto') while true print('> ') input = gets input.chomp! break if input == '' response = proto.dialogue(input) puts(prompt(proto) + response) end
Effective Rubyを読む
Struct.newのところ。本質とはそれるが、どうすれば表示できるか悩み、強引にいれた
initializeのファイルネームに何を入れるべきなのか、イメージがついていない。
require 'csv' class A Reading = Struct.new(:aaa, :bbb, :ccc) def initialize (fliename) @readings = [] CSV.foreach("company.csv", headers: true) do |row| @readings << Reading.new(row[1], row[4], row[5]) end end def out puts @readings end end i = A.new(1) i.out
スクレイピング
nokogiriでギコギコ
CSSセレクタ/xpathという知らなかった概念と格闘。
Rubyによるクローラー開発技法をちゃんと読み進め用。P65くらいまで。
堅苦しくて読みにくかったEffective Rubyも読み進め始める
Herokuやら何やら
pixivエンジニアが教えるプログラミング入門
Rubyだったなあと思い出して。rubyからのSQL呼び出し。ちょっと復習になる
初めてのRubyは読み終わる。分かりやすかった。
SQL本はお風呂で読み進めよう。
Heroku、ドットインストールで半分くらいささっと。ポスグレ入れるのがだるい
下記ちゃんと入れてみよう。ライブラリもしっかり理解しておかないと。
初めてのRuby、本日には読了か
薄くて助かったし、何よりわかりやすい。
詳説正規表現を開いた SQL書き方ドリルを開いた。これ日曜に頑張って、お題自分で決めてすべて出せるようにしたい DB構造はしっかり理解しておこう
初めてのRubyはP137まで。残り60ページ
師匠から教わったSinatra、ドットインストールにあるから見始めた。7まで。ラクだなこれ
1週間はあっというまや
師匠に聞いたらSQLやれという。なのでそれも課題に含める。データはたくさんあるので、なんでもできそうだけど、selectですべてひっぱってきてエクセルでガリガリやりたくなる。生粋のエクセラーだから、分析はこっちのほうが早い。。。
パーフェクトRuby P160まで。正規表現がわかるように
初めてのRuby 読み始めだが、いい。P35。1月中に読み終わりたい