2010-01-01から1年間の記事一覧
なにはともあれ、スクリプト言語のひとつくらい必要なのです。というわけでRubyをひとつインストールします。最新版を使ってみたいので、ソースコードからに挑戦。バージョンは、先日クリスマスリリースされた1.9.2-p136。 インストールの方針ですが、「/usr…
:%s/\(.*対象文字列.*\n\)\|.*\n/\1/g ■ポイント viでやる際は、グループの括弧やバーティカルバーもエスケープする。素直にgrep使えばいいんじゃ
会社 VPSホスティングサービスはどこを利用するか迷ったけど、安さにつられてServersMan@VPSを選択。他にもIPv6が使えるなど。 OS Debian系を使いたかったのと、本家Debianを使うにはレベルが足りてない(初期設定ではDNSすら未設定で、wgetでruby-lang.org…
ブラウザ将棋盤の機能拡張として盤面図を出力させようと思い、ImageMagickというかRMagickをいじってます。 大きさが固定されている、なぜか太字にならない等々の問題はありますが、とりあえずそれっぽいものは出力できました。 !# /usr/bin/ruby require 'R…
仕事でサクラエディタを使える幸せを満喫中のmyokoymです。 今回は、改行の検索方法を書きます。 他のWindows用エディタでは、改行を検索する際に改行の種類に関わらず\nで引っ掛けてくれるものが多いです。しかし、サクラエディタでは、 CR(旧Mac) \r LF…
Rubyスクリプトをdaemonで起動する - tricknotesのぼうけんのしょを改造させてもらいました。 # reminder.rb require "rubygems" require "daemons" require "net/smtp" require "tlsmail" _, term, = ARGV term = term.to_i smtp_server = (GMailのSMTPサ…
昨日行われた札幌Ruby会議03について。 名札は用意したのですが、結局会場には行けなかったのでUstreamでの参加。映像も音声も終始安定していて、さらに右下に発表者の映像が映っていたりしたので、会場の雰囲気を味わうことができました。 以下は発表のまと…
ファイルを間違えて保存してしまって、どこをいじったかわからない。しかもExcelだから差分比較ソフトは使えない・・!思い余ってバイナリエディタに走る前に試していただきたいのが、このWinMergeプラグイン「xdocdiff」です。 WinMerge http://winmerge.or…
一応、このブログはお仕事関連の技術縛りだったんですが、メモする場所に迷ったので将棋について書きます。 向かい飛車の飛車先保留について 2筋(または8筋)の歩を突くべきか否か。(保留する側を後手として考えます) 4手目に△3三角とする向かい飛車は…
マルチバイト文字を扱う文字コードでは、各バイトを文字単位できちんと区切って扱う必要があります。2バイト文字なのに1バイトずつ読んでしまうと、文字化けになってしまうからです。そこで、文字コード達は様々な方法で何バイト文字か判断しています。 で…
先日、マウスだけで文字を入力せざるを得ない状況になりまして。 昔も同じような状況になり、その時に対策ソフトを作った気がしたのでハードディスクを漁ったところ、運良く見つかりました。 ソースコードはとても読めたものではなく、即実行するとある程度…
PCの省電力機能について。 ■サスペンド(スタンバイ) メモリに状態を保存する。電力消費あり。 ■ハイバネーション(休止状態) HDDに状態を保存する。電力消費なし。 ※待機電力は必要 ■参考 いろいろ Tips02.スタンバイと休止状態 - cool-r32.comhttp:…
ループ内のみで使う変数の宣言位置について。 ■A for (Map<String, String> map : list) { String var = map.get(KEY); . . . } とするか、 ■B String var; for (Map<String, String> map : list) { var = map.get(KEY); . . . } とするか。 半刻ほど調べた結論としては、中に入れる</string,></string,>…
前回に続き2回目の参加です。今回はJavaScript: The Good Parts(以下本)の3章と4章、オブジェクトと関数について。 Sapporo.js-2010.10.03 : ATND JavaScriptについては知識も経験もゼロに等しい。つたないJavaとRubyの知識で乗り切れるだろうか。 型 …
window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…
始まりは、Project Euler - Problem 17でした。 1 から 5 までの数字を英単語で書けば one, two, three, four, five であり、全部で 3 + 3 + 5 + 4 + 4 = 19 の文字が使われている。では 1 から 1000 (one thousand) までの数字をすべて英単語で書けば、全部…
今回は英語でがんばりました。 2^(15) = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26.What is the sum of the digits of the number 2^(1000)?Problem 16 - Project Euler といってもほとんど数式ですが・・。*1 今回は図が出てこない、文字…
数学ガールに影響されて、数学の問題をプログラミングで解こうサイト「Project Euler」を再開しました。 公式サイトhttp://projecteuler.net/ 和訳サイトhttp://odz.sakura.ne.jp/projecteuler/index.php?Project%20Euler 2 × 2 のマス目の左上からスタート…
分散型バージョン管理システム「Git」を使い始めたので、基本事項をスライドにまとめました。 My add GitView more presentations from myokoym . ■補足 ディレクトリ単位の版管理だと、ファイルAを変更したときファイルBがどんな状態だったかわかる。ファイ…
RubyとjQueryを使ったWebアプリケーション「ブラウザ将棋盤」を作りました。http://shogiboard.heroku.com/ ■特徴(将棋的な) その名の通り、ただの「盤」です。 動きチェックなどはありません。 その分、自由に駒を動かすことができます。 アナログな盤が…
ここ数日続いていたHerokuとの戦いがひとまず決着したので、ここに記す。 〜あらすじ〜 紆余曲折の3日間。 ■Windows 最初の戦場はWindows。 heroku create までは何の問題もなかったが、 git push heroku 時に、秘密鍵のパーミッションが600でないと責めら…
単体テストを書くとき、よく問題となるのがPrivateメソッドの扱いです。PublicメソッドだけでなくPrivateメソッドまでテストする場合、大まかに分けて2つのやり方があります。 プロダクトコードを書き換えてテストする プロダクトコードは書き換えずにテス…
ソフトウェアのプロダクトキーのような文字列を自動生成するスクリプトを書いたのでメモ。 とりあえず動くレベルのコードですが。 # 使用する文字のリスト list = [] # リストに数値を追加 0.upto(9) do |i| list << i.to_s end # リストにアルファベット(…
フォルダを削除しようとしたら、中身のファイルは消せたのに空のフォルダが残ってしまった。なんとも中途半端で、これなら消さない方がよかった・・。そんな経験ありませんか? この現象は、そのフォルダがなんらかの形で使用されている場合に起こります。い…
前回、コンストラクタの代わりにCreation Methodを使用したインスタンス生成を行いました。しかし、new以外のインスタンス化は全体の統一性を損なうとのご意見が出されたため、別の方法を考えることにします。 共通部分をくくるという発想はよかったとのこと…
(V)o\o(V): ホッホッホ。 (o|o): 出たな、バル(以下略)! (V)o\o(V): 分身の術。 (o|o): ふっ、かかったな! (V)o\o(V): ホ? (o|o): 先日、オマエのソースコードを手に入れたのだ! (V)o\o(V): ホッホー。 (o|o): どれが本物かなんて一目瞭然!ど…
今日の札幌は猛暑まっさかさまだったようですが、クーラーの効いた部屋にリアル囚われていた私は気づきませんでしたすいません。 今回はWebサービスの概要について学習します。 単にWebサービスといわれても、Webがサービスしてくれるなんて当たり前ジャンっ…
巷では、リモートやらクラウドやらとWebまっさかさまですねこんばんは。 Web開発と聞くと逃げ出したくなる私ですが、いよいよ必要に迫られてしまったので、受けて立つことにしました。 まずは、差し当たり必要なWebサービスの学習を始めたいと思います。今ま…
一般に、条件式の書き方は2通りあります。 (条件式とは、if (この部分!)then です) 比較演算子や論理演算子を使う(true か false) 変数や定数を単項で使う(値) Rubyでは、Boolean型に加え、どんな値でも条件式にできます。 (言語によっては、Bool…