タグ

ブックマーク / bugrammer.hateblo.jp (8)

  • Rubyのグラフライブラリ(gnuplot)で砲台ゲームを実装しよう - Line 1: Error: Invalid Blog('by Esehara' )

    今日の風景 寿司の電子工作 はじめに 今は廃刊してしまった、昔懐しい『ベーシックマガジン』という雑誌には、大抵簡単なゲームのコードが載っていた。俺を含めたパソコン少年は、そのコードを見ながらパチパチとコードを打っていたわけだが、そういったサンプルコードリストの一つに、大抵は「砲台ゲーム」というものが存在していた。 仕様としては、ある範囲が的になっており、角度と強さを指定し、投射線を描写する。的の範囲に入っていたら的中となり、的の外になっていたら外れということになる。 大抵、このゲームに関しては、30代から40代にBASICを触っていたおじさんであるならば、何処かで見たことがあると思うのだけれども、舞台がWebになった現代には、このような「砲台ゲーム」を作るといったようなサンプルを見ることは殆どなくなった。 で、前回にRubyからgnuplotを触るエントリを書いたわけだけれど、「あれ、グラ

    Rubyのグラフライブラリ(gnuplot)で砲台ゲームを実装しよう - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2016/10/15
  • イケてないRubyのコードのリファクタリングって奴をSmallTalkでやってみる - Line 1: Error: Invalid Blog('by Esehara' )

    日の料理 コードも豚肉も煮こむに限る はじめに Rubyのリファクタリングでイケてないコードを美しいオブジェクト指向設計のコードへ改良するための方法 - その1 - Ruby on Railsのビシバシはぁはぁ日記というブログの記事がどうもバズっていて、色んな方面からつっこみが入っていたりする。また、別にこれはオーバーエンジニアリングだから、この程度のコードでもいいのではないか、という指摘も挙がっている。 自分ならどうするかというとこういう感じかな。要するに条件に合う注文を足し算したいだけなので、条件に合う注文を足し算しようよ、という。https://t.co/HEhsO5q2nr— Rui Ueyama (@rui314) 2016年7月17日 コードを書く人によって「これが良いアプローチだ」というのは千差万別であることは間違いない。元の記事を読む限り、これはどうもRubyの特殊事情な

    イケてないRubyのコードのリファクタリングって奴をSmallTalkでやってみる - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2016/07/23
  • Rubyでifとwhileをメソッド化する -- Smalltalkライクな構文をRubyにも - Line 1: Error: Invalid Blog('by Esehara' )

    今日の料理 私は「ためしてガッテン」の信徒です。 はじめに いまYAP(achimon)Cのレジュメを書いているのだけれども、いろんなプログラミング言語を触ってみての感想が多く入ってきていて、乱雑な感じになっている。 いろいろなことを乱雑に詰めこむのは、自分の悪いところでもあり、良いところでもあると思って開きなおっているが、それとは関係なく、Smalltalkについて、「これってちょっと頑張ればRubyにも実装できることじゃないかな」ということに気がついたので、どれだけの需要があるのかわからないけれども、記事にしておく。 Smalltalkにおけるif Smalltalk(以下、Pharoの処理系を前提とする)を触ってみて面白いなあ、と思ったことの一つに、条件分岐もメソッドで表現するということだった。過去にも書いた通り、FizzBuzzは次のようにして書ける: ((1 to: 100) c

    Rubyでifとwhileをメソッド化する -- Smalltalkライクな構文をRubyにも - Line 1: Error: Invalid Blog('by Esehara' )
  • Rubyで書いていたら破滅したので、Lisp/Racket で書きなおしたお話 (『プログラミング言語の基礎概念』について) - Line 1: Error: Invalid Blog('by Esehara' )

    今日のアート mograg garageで行われたKYOTAROさんという方が描かれた絵です。 手帳にも描いてもらいました。ありがとうございます!! 概要 タイトルが釣りっぽくなって申しわけない(だったらやらなきゃいいじゃん……)。 普段は練習にRubyを利用しており、あるコードを規則に従ってステップを作成するプログラムを作っていたところ、とてもではないが、メンテすることが不可能になってしまった。なので、Lispの方言の一つであるところのRacketを使ったところ、サクサクと実装できるようになった。なぜこの違いが生まれてしまったのか、できるだけプログラミング言語の特性に依存せずに、この違いを語ろうと思う。 はじめに つい最近、知人と出あったところ、『プログラミング言語の基礎概念 (ライブラリ情報学コア・テキスト)』が話題にのぼった。このテキストはオンラインによる問題集が付属しており、知人に

    Rubyで書いていたら破滅したので、Lisp/Racket で書きなおしたお話 (『プログラミング言語の基礎概念』について) - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2016/06/03
  • Word2Vec + MeCabで「ボケる」ための単語候補をピックアップするやつをやってみる - Line 1: Error: Invalid Blog('by Esehara' )

    近況 はじめに 最近、ちょっと大喜利を始めていて、如何に面白いことを言えるのか、ということを考えたりしているんだけど、考えてみれば、自分は少しプログラミングができるし、むしろ形態素解析や自然言語処理という観点から「質問」と「ボケ」を考えてみると面白いかもしれない、と思って、力技でそういうことをやってみた次第。 今回の方針 とはいえ、何となく「質問に対して上手いボケを返してほしいな」ということであるならば、それこそ単語のランダム検出でもいいという話になってしまうので、ある程度仮説を立てて実装する。今回の仮説としては、「ある文が連想する知識の、派生する知識がその文と結びつけられた場合、人は上手いと思うのではないか」ということだ。 どういうことか。 例えば、謎かけの場合、「Aとときまして、Bととく。その心はCです」と言った際に、一見無関係の文(あるいは単語)が、Cという意味づけによって接続するこ

    Word2Vec + MeCabで「ボケる」ための単語候補をピックアップするやつをやってみる - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2015/09/30
  • プログラミングの学びはじめこそ、どんどん文章で残して公開しておいたほうがいいかもしれないという話 - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに 現在、自分はPythonから暫く離れてRubyを勉強している。現在のスキルとしては、gemがなんとか書け(これについては、後ほど報告)Railsでアプリケーションも書けるようになったというレベルだ。つまり、Rubyで軽量なアプリケーションならば、自力で作成できるくらいには、なんとか書けるようになった。 よちよち歩きでRubyを歩き始めたという現状として、では実際にRubyはどういう風な挙動をしているのか、というのを理解して、Rubyでのコーディング精度を高めないといけないなーというのは実感しつつある。ただ、同時にこういうときこそ、勉強メモをどんどん書いて勉強していくチャンスだなと思ったりもした。 なぜ学びはじめに文章を残しておいたほうがいいのか 学びはじめは、発見がたくさんある Rubyをいじっていてもそうだけど、慣れないものというのは、慣れないが故に、学ぶことがたくさんある。「

    プログラミングの学びはじめこそ、どんどん文章で残して公開しておいたほうがいいかもしれないという話 - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2014/10/29
  • Webサービスのプログラミングに必要なことのだいたいは、スクレイピングに学んだ - Line 1: Error: Invalid Blog('by Esehara' )

    この記事を読み始める前に Rubyでやるんだったら、ちょうどそういうが出ているから、その買えばいいのではないでしょうか。 Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例 作者: るびきち,佐々木拓郎出版社/メーカー: SBクリエイティブ発売日: 2014/08/25メディア: 大型この商品を含むブログ (1件) を見る はじめに プログラミングを勉強し始めて、だいたい基礎的な文法を覚えたあとに、次に何をしようかな、と悩む人も結構多いみたいで、明確に「これを作りたい」という場合は、それを作ればいいとは思うんですけど、場合によっては、別段作りたいものが無く、漠然としたプログラミングをしたい、という熱意によって勉強しているという人もいるのではないかと思います。 で、もちろん「作りたいものがないのに、プログラミング勉強してどうするの」という意見もあるかとは思いますが、往

    Webサービスのプログラミングに必要なことのだいたいは、スクレイピングに学んだ - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2014/10/07
  • デザインのことがわからない自分が、はてなブログのデザインをカスタマイズするのを頑張ってみた - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに こんにちは。以前まで蟲!虫!蟲! - #!/usr/bin/bugrammerという、はてなグループで技術的な記事を書いていました。しかし、さすがに、はてなブログの優遇っぷりと、はてなグループの場末感で、もうそろそろ空気を入れ替えなければいけないんではないかと悩んだ結果として、はてなブログに移転するということになりました。 で、たぶん既存のデザインテーマとか使えばいいんでしょうけど、CSSくらいは少しかじっておいたほうがいいよなー、とは常に思っていて、前回の日記もCSSをかなりいじりました。なので、今回も自力でデザインしたいなーという思ったわけです。 しかし、この「デザイン」という奴が、プログラマーにとっては曲者で、割と近い処で仕事をしているのにも関わらず、実際に「デザイン」ってなんだよ、っていう話になると全くわからない。 そういうときに、「だったらじゃあ自分でデザインのフローを

    デザインのことがわからない自分が、はてなブログのデザインをカスタマイズするのを頑張ってみた - Line 1: Error: Invalid Blog('by Esehara' )
    Tomosugi
    Tomosugi 2013/07/04
  • 1